diff --git a/VirtualRobot/CollisionDetection/CollisionModel.cpp b/VirtualRobot/CollisionDetection/CollisionModel.cpp index cd0920a3e612a3b2445e4332eec0228ad6abba38..d585f4905e8afcbb1de35190d3478d40b3748a89 100644 --- a/VirtualRobot/CollisionDetection/CollisionModel.cpp +++ b/VirtualRobot/CollisionDetection/CollisionModel.cpp @@ -34,7 +34,7 @@ namespace VirtualRobot setVisualization(visu); } - CollisionModel::CollisionModel(VisualizationNodePtr visu, const std::string &name, CollisionCheckerPtr colChecker, int id, InternalCollisionModelPtr collisionModel) + CollisionModel::CollisionModel(VisualizationNodePtr visu, const std::string& name, CollisionCheckerPtr colChecker, int id, InternalCollisionModelPtr collisionModel) { margin = 0.0; globalPose = Eigen::Matrix4f::Identity(); @@ -55,8 +55,10 @@ namespace VirtualRobot } updateVisualization = true; - if(!collisionModel) + if (!collisionModel) + { VR_WARNING << "internal collision model is NULL for " << name << endl; + } collisionModelImplementation = boost::dynamic_pointer_cast<InternalCollisionModel>(collisionModel->clone(false)); VR_ASSERT(collisionModelImplementation->getPQPModel()); setVisualization(visu); @@ -65,7 +67,7 @@ namespace VirtualRobot CollisionModel::~CollisionModel() { -// destroyData(); + // destroyData(); } @@ -81,7 +83,7 @@ namespace VirtualRobot void CollisionModel::inflateModel(float value) { float diff = std::abs(margin - value); - if(diff > 0.01f || (origVisualization && !model)) + if (diff > 0.01f || (origVisualization && !model)) { visualization = origVisualization->clone(true); visualization->shrinkFatten(value); @@ -98,10 +100,14 @@ namespace VirtualRobot collisionModelImplementation.reset(new CollisionModelDummy(colChecker)); #endif } - if(!origVisualization) + if (!origVisualization) + { margin = 0.0; + } else + { margin = value; + } } @@ -127,25 +133,29 @@ namespace VirtualRobot { VisualizationNodePtr visuOrigNew; - if(origVisualization) + if (origVisualization) + { visuOrigNew = origVisualization->clone(deepVisuMesh, scaling); + } std::string nameNew = name; int idNew = id; CollisionModelPtr p; - if(deepVisuMesh || !this->collisionModelImplementation) + if (deepVisuMesh || !this->collisionModelImplementation) + { p.reset(new CollisionModel(visuOrigNew, nameNew, colChecker, idNew, margin)); + } else { p.reset(new CollisionModel(visuOrigNew, nameNew, colChecker, idNew, this->collisionModelImplementation)); - if(visualization) + if (visualization) { p->visualization = visualization->clone(false, scaling); p->margin = margin; } else - { + { p->inflateModel(margin); } @@ -219,7 +229,7 @@ namespace VirtualRobot Eigen::Matrix4f t; t.setIdentity(); - for (auto & vertice : model->vertices) + for (auto& vertice : model->vertices) { t.block(0, 3, 3, 1) = vertice; t = globalPose * t; @@ -351,7 +361,7 @@ namespace VirtualRobot CollisionCheckerPtr colChecker = colModels[0]->getCollisionChecker(); std::vector<VisualizationNodePtr> visus; - for (const auto & colModel : colModels) + for (const auto& colModel : colModels) { VisualizationNodePtr v = colModel->getVisualization(); diff --git a/VirtualRobot/ManipulationObject.cpp b/VirtualRobot/ManipulationObject.cpp index a21b1be0938a0f3da0b990659a1cf22180aaa562..df4c3f4ec4ec69669560d9e7ccbd4fda54eaebc4 100644 --- a/VirtualRobot/ManipulationObject.cpp +++ b/VirtualRobot/ManipulationObject.cpp @@ -10,11 +10,9 @@ namespace VirtualRobot ManipulationObject::ManipulationObject(const std::string& name, VisualizationNodePtr visualization, CollisionModelPtr collisionModel, const SceneObject::Physics& p, CollisionCheckerPtr colChecker) : Obstacle(name, visualization, collisionModel, p, colChecker) - { - } + {} - ManipulationObject::~ManipulationObject() - = default; + ManipulationObject::~ManipulationObject() = default; void ManipulationObject::print(bool printDecoration) { diff --git a/VirtualRobot/Obstacle.cpp b/VirtualRobot/Obstacle.cpp index 1338b2cae256df5343b6feb1898c065ec7f8b060..2be04d295b3a1be2a0de5d458fc55e325806b1cb 100644 --- a/VirtualRobot/Obstacle.cpp +++ b/VirtualRobot/Obstacle.cpp @@ -40,15 +40,14 @@ namespace VirtualRobot } } - Obstacle::~Obstacle() - = default; + Obstacle::~Obstacle() = default; int Obstacle::getID() { return id; } - VirtualRobot::ObstaclePtr Obstacle::createBox(float width, float height, float depth, VisualizationFactory::Color color, std::string visualizationType , CollisionCheckerPtr colChecker) + VirtualRobot::ObstaclePtr Obstacle::createBox(float width, float height, float depth, VisualizationFactory::Color color, std::string visualizationType, CollisionCheckerPtr colChecker) { ObstaclePtr result; VisualizationFactoryPtr visualizationFactory; @@ -101,7 +100,7 @@ namespace VirtualRobot } - VirtualRobot::ObstaclePtr Obstacle::createSphere(float radius, VisualizationFactory::Color color, std::string visualizationType , CollisionCheckerPtr colChecker) + VirtualRobot::ObstaclePtr Obstacle::createSphere(float radius, VisualizationFactory::Color color, std::string visualizationType, CollisionCheckerPtr colChecker) { ObstaclePtr result; VisualizationFactoryPtr visualizationFactory; @@ -205,7 +204,7 @@ namespace VirtualRobot } - VirtualRobot::ObstaclePtr Obstacle::createFromMesh(TriMeshModelPtr mesh, std::string visualizationType , CollisionCheckerPtr colChecker) + VirtualRobot::ObstaclePtr Obstacle::createFromMesh(TriMeshModelPtr mesh, std::string visualizationType, CollisionCheckerPtr colChecker) { THROW_VR_EXCEPTION_IF(!mesh, "Null data"); diff --git a/VirtualRobot/Obstacle.h b/VirtualRobot/Obstacle.h index bb50ed0d9e64e09ab8e1941c98c393dd58ee5156..13f337f30eac51752fd6584502810c7ecc4b4222 100644 --- a/VirtualRobot/Obstacle.h +++ b/VirtualRobot/Obstacle.h @@ -42,7 +42,7 @@ namespace VirtualRobot /*! */ - Obstacle(const std::string& name, VisualizationNodePtr visualization = {}, + Obstacle(const std::string& name, VisualizationNodePtr visualization = {}, CollisionModelPtr collisionModel = {}, const SceneObject::Physics& p = {}, CollisionCheckerPtr colChecker = {}); @@ -71,7 +71,7 @@ namespace VirtualRobot \param visualizationType Here the type of visualization can be specified (e.g. "Inventor"). If empty, the first registered visualization type (which is usually the only one) is used. \param colChecker Only needed if you plan to use the collision checker in parallel. If not given, the object is registered with the global singleton collision checker. */ - static ObstaclePtr createBox(float width, float height, float depth, + static ObstaclePtr createBox(float width, float height, float depth, VisualizationFactory::Color color = VisualizationFactory::Color::Red(), std::string visualizationType = "", CollisionCheckerPtr colChecker = {}); /*! diff --git a/VirtualRobot/SceneObject.cpp b/VirtualRobot/SceneObject.cpp index 576d576dfb05f65739183fac6bd2cb7fe789f531..886c7dececec5bb3643dc44019c50e15df2e9222 100644 --- a/VirtualRobot/SceneObject.cpp +++ b/VirtualRobot/SceneObject.cpp @@ -988,7 +988,7 @@ namespace VirtualRobot return physics.inertiaMatrix; } - Eigen::Matrix3f SceneObject::shiftInertia(const Eigen::Matrix3f inertiaMatrix, const Eigen::Vector3f &shift, float mass) + Eigen::Matrix3f SceneObject::shiftInertia(const Eigen::Matrix3f inertiaMatrix, const Eigen::Vector3f& shift, float mass) { Eigen::Matrix3f skew; skew << 0, -shift(2), +shift(1), diff --git a/VirtualRobot/Visualization/VisualizationFactory.h b/VirtualRobot/Visualization/VisualizationFactory.h index 5e2ab814c2db0a32b00999c46e1de1514da98ffd..f1c055ccc96599e0f29f253da5b7bceae9149e69 100644 --- a/VirtualRobot/Visualization/VisualizationFactory.h +++ b/VirtualRobot/Visualization/VisualizationFactory.h @@ -90,7 +90,7 @@ namespace VirtualRobot float transparency{0}; float refractionIndex{0}; }; - + VisualizationFactory() = default; virtual ~VisualizationFactory() = default; diff --git a/VirtualRobot/XML/BaseIO.cpp b/VirtualRobot/XML/BaseIO.cpp index 2c136a449628c57e8440939ee6534fde5c4d0bb7..67fbb35ea9f2b13f2a301957ca5d5889de83bd74 100644 --- a/VirtualRobot/XML/BaseIO.cpp +++ b/VirtualRobot/XML/BaseIO.cpp @@ -20,11 +20,9 @@ namespace VirtualRobot boost::mutex BaseIO::mutex; - BaseIO::BaseIO() - = default; + BaseIO::BaseIO() = default; - BaseIO::~BaseIO() - = default; + BaseIO::~BaseIO() = default; bool BaseIO::isTrue(const char* s) { @@ -354,7 +352,7 @@ namespace VirtualRobot Units uAngle("rad"); Units uLength("mm"); - for (auto & i : unitsAttr) + for (auto& i : unitsAttr) { if (i.isAngle()) { @@ -455,7 +453,7 @@ namespace VirtualRobot getAllAttributes(node, "unitsAngle", attrStr); getAllAttributes(node, "unitsTime", attrStr); - for (auto & i : attrStr) + for (auto& i : attrStr) { Units unitsAttribute(getLowerCase(i.c_str())); result.push_back(unitsAttribute); @@ -1341,7 +1339,7 @@ namespace VirtualRobot Units uWeight("kg"); Units uLength("m"); - for (auto & i : unitsAttr) + for (auto& i : unitsAttr) { if (i.isWeight()) { @@ -1735,7 +1733,7 @@ namespace VirtualRobot RobotPtr r; - for (auto & robot : robots) + for (auto& robot : robots) { if (robot->getType() == robotName) { @@ -1748,7 +1746,7 @@ namespace VirtualRobot RobotNodeSetPtr rns = r->getRobotNodeSet(nodeSetName); THROW_VR_EXCEPTION_IF(!rns, "Could not find RNS with name " << nodeSetName << " in robot " << robotName); - assert(dim>=0); + assert(dim >= 0); if (static_cast<unsigned int>(dim) != rns->getSize()) { VR_WARNING << " Invalid dim attribute (" << dim << "). Setting dimension to " << rns->getSize() << endl; diff --git a/VirtualRobot/XML/ObjectIO.h b/VirtualRobot/XML/ObjectIO.h index d2ddd448d1932ac3d0c01884e6a822b6e35c5c74..8f2b2976cb1d29c0b4577405afe7f73e3b353e38 100644 --- a/VirtualRobot/XML/ObjectIO.h +++ b/VirtualRobot/XML/ObjectIO.h @@ -108,7 +108,7 @@ namespace VirtualRobot * \param scaling Usually we scale from the internal mm format to m. * \return true on success */ - static bool writeSTL(TriMeshModelPtr t, const std::string &filename, const std::string &objectName, float scaling = 0.001f); + static bool writeSTL(TriMeshModelPtr t, const std::string& filename, const std::string& objectName, float scaling = 0.001f); protected: // instantiation not allowed