Skip to content

Commit b2c158b

Browse files
fredroybakpaul
andauthored
[Collision.Geometry] Rename TriangleOctreeModel to TriangleOctreeCollisionModel (#5766)
* rename to triangleoctreecollisionmodel and deprecate old name ; and add a data to display the octree * Apply suggestion from @bakpaul (add PR number) Co-authored-by: Paul Baksic <30337881+bakpaul@users.noreply.github.com> --------- Co-authored-by: Paul Baksic <30337881+bakpaul@users.noreply.github.com>
1 parent 049a239 commit b2c158b

File tree

4 files changed

+43
-20
lines changed

4 files changed

+43
-20
lines changed

Sofa/Component/Collision/Geometry/src/sofa/component/collision/geometry/TriangleOctreeModel.cpp

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -37,34 +37,41 @@ namespace sofa::component::collision::geometry
3737
void registerTriangleOctreeModel(sofa::core::ObjectFactory* factory)
3838
{
3939
factory->registerObjects(core::ObjectRegistrationData("Collision model using a triangular mesh mapped to an Octree.")
40-
.add < TriangleOctreeModel >());
40+
.add < TriangleOctreeCollisionModel >()
41+
.addAlias("TriangleOctreeModel")); // SOFA_ATTRIBUTE_DEPRECATED__RENAMED_TRIANGLEOCTREEMODEL()
4142
}
4243

43-
TriangleOctreeModel::TriangleOctreeModel ()
44+
TriangleOctreeCollisionModel::TriangleOctreeCollisionModel ()
45+
: Inherit1()
46+
, helper::TriangleOctreeRoot()
47+
, d_drawOctree(initData(&d_drawOctree, false, "drawOctree", "draw the octree structure"))
4448
{
4549
}
4650

47-
void TriangleOctreeModel::drawCollisionModel (const core::visual::VisualParams* vparams)
51+
void TriangleOctreeCollisionModel::drawCollisionModel (const core::visual::VisualParams* vparams)
4852
{
4953
TriangleCollisionModel<sofa::defaulttype::Vec3Types>::drawCollisionModel(vparams);
5054

51-
if (vparams->displayFlags().getShowWireFrame())
55+
if (d_drawOctree.getValue())
5256
{
53-
vparams->drawTool()->setPolygonMode(0, true);
54-
}
57+
if (vparams->displayFlags().getShowWireFrame())
58+
{
59+
vparams->drawTool()->setPolygonMode(0, true);
60+
}
5561

56-
vparams->drawTool()->enableLighting();
57-
const float* getCol = getColor4f();
58-
const auto color = sofa::type::RGBAColor(getCol[0], getCol[1], getCol[2], getCol[3]);
59-
vparams->drawTool()->setMaterial(color);
62+
vparams->drawTool()->enableLighting();
63+
const float* getCol = getColor4f();
64+
const auto color = sofa::type::RGBAColor(getCol[0], getCol[1], getCol[2], getCol[3]);
65+
vparams->drawTool()->setMaterial(color);
6066

61-
if (octreeRoot) octreeRoot->draw(vparams->drawTool());
67+
if (octreeRoot) octreeRoot->draw(vparams->drawTool());
6268

63-
vparams->drawTool()->disableLighting();
64-
if (vparams->displayFlags().getShowWireFrame()) vparams->drawTool()->setPolygonMode(0, false);
69+
vparams->drawTool()->disableLighting();
70+
if (vparams->displayFlags().getShowWireFrame()) vparams->drawTool()->setPolygonMode(0, false);
71+
}
6572
}
6673

67-
void TriangleOctreeModel::computeBoundingTree(int maxDepth)
74+
void TriangleOctreeCollisionModel::computeBoundingTree(int maxDepth)
6875
{
6976
const type::vector<topology::Triangle>& tri = *m_triangles;
7077
if(octreeRoot)
@@ -124,12 +131,12 @@ void TriangleOctreeModel::computeBoundingTree(int maxDepth)
124131
}
125132
}
126133

127-
void TriangleOctreeModel::computeContinuousBoundingTree(SReal/* dt*/, int maxDepth)
134+
void TriangleOctreeCollisionModel::computeContinuousBoundingTree(SReal/* dt*/, int maxDepth)
128135
{
129136
computeBoundingTree(maxDepth);
130137
}
131138

132-
void TriangleOctreeModel::buildOctree()
139+
void TriangleOctreeCollisionModel::buildOctree()
133140
{
134141
this->octreeTriangles = &this->getTriangles();
135142
this->octreePos = &this->getX();

Sofa/Component/Collision/Geometry/src/sofa/component/collision/geometry/TriangleOctreeModel.h

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,15 @@
3333
namespace sofa::component::collision::geometry
3434
{
3535

36-
class SOFA_COMPONENT_COLLISION_GEOMETRY_API TriangleOctreeModel : public TriangleCollisionModel<sofa::defaulttype::Vec3Types>, public helper::TriangleOctreeRoot
36+
class SOFA_COMPONENT_COLLISION_GEOMETRY_API TriangleOctreeCollisionModel : public TriangleCollisionModel<sofa::defaulttype::Vec3Types>, public helper::TriangleOctreeRoot
3737
{
3838
public:
39-
SOFA_CLASS(TriangleOctreeModel, TriangleCollisionModel<sofa::defaulttype::Vec3Types>);
39+
SOFA_CLASS(TriangleOctreeCollisionModel, TriangleCollisionModel<sofa::defaulttype::Vec3Types>);
4040
protected:
41-
TriangleOctreeModel();
41+
TriangleOctreeCollisionModel();
4242
void drawCollisionModel(const core::visual::VisualParams* vparams) override;
4343
public:
44+
Data<bool> d_drawOctree; ///< draw the octree
4445

4546
/// the normals for each point
4647
type::vector<type::Vec3> pNorms;
@@ -50,4 +51,8 @@ class SOFA_COMPONENT_COLLISION_GEOMETRY_API TriangleOctreeModel : public Triang
5051
void buildOctree ();
5152
};
5253

54+
55+
using TriangleOctreeModel SOFA_ATTRIBUTE_DEPRECATED__RENAMED_TRIANGLEOCTREEMODEL() = TriangleOctreeCollisionModel;
56+
57+
5358
} // namespace sofa::component::collision::geometry

Sofa/Component/Collision/Geometry/src/sofa/component/collision/geometry/config.h.in

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,13 @@ namespace sofa::component::collision::geometry
3636
constexpr const char* MODULE_NAME = "@PROJECT_NAME@";
3737
constexpr const char* MODULE_VERSION = "@PROJECT_VERSION@";
3838
} // namespace sofa::component::collision::geometry
39+
40+
41+
#ifdef SOFA_BUILD_SOFA_COMPONENT_COLLISION_GEOMETRY
42+
#define SOFA_ATTRIBUTE_DEPRECATED__RENAMED_TRIANGLEOCTREEMODEL()
43+
#else
44+
#define SOFA_ATTRIBUTE_DEPRECATED__RENAMED_TRIANGLEOCTREEMODEL() \
45+
SOFA_ATTRIBUTE_DEPRECATED( \
46+
"v25.12", "v26.06", \
47+
"TriangleOctreeModel has been renamed to TriangleOctreeCollisionModel in PR5766")
48+
#endif

Sofa/framework/Helper/src/sofa/helper/ComponentChange.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -765,7 +765,8 @@ std::map< std::string, Renamed, std::less<> > renamedComponents = {
765765
{"StiffSpringForceField", Renamed("v24.06","v25.06","SpringForceField")},
766766
{"ParallelStiffSpringForceField", Renamed("v24.06","v25.06","ParallelSpringForceField")},
767767
{"ShewchukPCGLinearSolver", Renamed("v24.12","v25.12","PCGLinearSolver")},
768-
{"OglCylinderModel", Renamed("v24.12", "v25.06", "CylinderVisualModel")}
768+
{"OglCylinderModel", Renamed("v24.12", "v25.06", "CylinderVisualModel")},
769+
{"TriangleOctreeModel", Renamed("v25.12", "v26.06", "TriangleOctreeCollisionModel") }
769770
};
770771

771772

0 commit comments

Comments
 (0)