Pull request #1192
Updated by Jules Waldhart over 6 years ago
pull request from branch wip to master. Fixes/addresses: ft #1167 / pr #1168 bug #1175 bug #1181 bug #1182 bug #1184 bug #1186 part of bug #1187 h1. Changelog: h2. Added * Compute stablility of robots: read Support polygon from json Entities definition, centers of mass from urdf * get agent FoV from Entities/Agent file * database also reads from a path given through API::Parameter * Robots with name ending by CYLINDER are considered virtual * collision class to check Cylinder instead of default collisions when available * PlannerBase and PlannerRegister + Planner Factories, registers all existing motion planners * Target class * set numeric locale to en_US in project initialization (for using '.' and not ',' as decimal separator when parsing) * API::Scene save/load scenario * API::Parameter helper methods for setting/getting * Set active DoFs from Joint and Robot * helper to set Planning Parts * RobotState::setCost * access/set multi localpath config from Robot class (e.g Robot::setMultiLpGroupToPlan) * robot::checkConstraints * Scene::setDMax * Path::resetCheckStatus and more * Path register uses first registered factory as default * Can now register several Path/LocalPath factories in a same cpp file (fix macro) * Drawable 3D arrows, 2D grids * logging uses output handlers to change output method (default is log4cxx) * colored logs * move4d has its own exceptions (unknown_robot) * array_to_str function for logging * self diagnostic (on request) debut * h3. Python bindings: * LocalpathFactory * global_Project * request read/write json body/joint weights from python * CollisionInterface::collisionList * access/set multi localpath config from Robot class (e.g Robot::setMultiLpGroupToPlan) h2. Changed * include path is PREFIX/include/move4/move4d * builds on Ubuntu 16.04 * do not require log4cxx when not used * use Qt5 * use CMake target system: export target (backward compatible) * N-D Grids improved/fixed + Dijkstra * Graphic::Drawable2dGrid based on N-D grid * LocalPath allocates its internal struct on construcion * LocalPath throws when construction fails (invalid_argument) * PqpCollision class fixed (let user disabled selfcollision) * add some cv-qualifiers to Robot RobotState * removed the HRI_ prefix of robot type names * install python to PREFIX/lib/python3/site-packages (it was in python2.7) h2. h3. Removed * LocalPathKDTP files where actually unused