Skip to content

Commit 252b6ef

Browse files
committed
fix partially compilation
1 parent 545649c commit 252b6ef

16 files changed

Lines changed: 151 additions & 167 deletions

extensions/Shell.Adaptivity/CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ project(Shell.Adaptivity VERSION 1.0 LANGUAGES CXX)
44

55
find_package(Sofa.Config REQUIRED)
66
sofa_find_package(Shell REQUIRED)
7+
sofa_find_package(Sofa.GUI.Component REQUIRED)
8+
sofa_find_package(Sofa.GUI.Common REQUIRED)
79

810
set(HEADER_FILES
911
src/Shell/Adaptivity/config.h.in
@@ -28,14 +30,14 @@ set(SOURCE_FILES
2830
src/Shell/Adaptivity/controller/AdaptiveCuttingController.cpp
2931
src/Shell/Adaptivity/controller/Test2DAdapter.cpp
3032

31-
src/Shell/Adaptivity/cutting/AdaptiveCutting.h
33+
src/Shell/Adaptivity/cutting/AdaptiveCutting.cpp
3234

3335
src/Shell/Adaptivity/misc/Optimize2DSurface.cpp
3436
src/Shell/Adaptivity/misc/SurfaceParametrization.cpp
3537
)
3638

3739
add_library(${PROJECT_NAME} SHARED ${HEADER_FILES} ${SOURCE_FILES})
38-
target_link_libraries(${PROJECT_NAME} PUBLIC Shell)
40+
target_link_libraries(${PROJECT_NAME} PUBLIC Shell Sofa.GUI.Component Sofa.GUI.Common)
3941

4042
sofa_create_package_with_targets(
4143
PACKAGE_NAME ${PROJECT_NAME}

extensions/Shell.Adaptivity/src/Shell/Adaptivity/controller/AdaptiveCuttingController.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
#include <SofaShells/config.h>
2-
#include <SofaShells/cutting/AdaptiveCuttingController.inl>
1+
#include <Shell/config.h>
2+
#include <Shell/Adaptivity/controller/AdaptiveCuttingController.inl>
33
#include <sofa/core/ObjectFactory.h>
44

55

@@ -20,20 +20,20 @@ SOFA_DECL_CLASS(AdaptiveCuttingController)
2020
int AdaptiveCuttingControllerClass = core::RegisterObject(
2121
"Controller that handles the cutting method based on mesh adaptivity.")
2222
#ifdef SOFA_FLOAT
23-
.add< AdaptiveCuttingController<type::Vec3fTypes> >(true) // default template
23+
.add< AdaptiveCuttingController<defaulttype3fTypes> >(true) // default template
2424
#else
25-
.add< AdaptiveCuttingController<type::Vec3dTypes> >(true) // default template
25+
.add< AdaptiveCuttingController<defaulttype3dTypes> >(true) // default template
2626
# ifndef SOFA_DOUBLE
27-
.add< AdaptiveCuttingController<type::Vec3fTypes> >()
27+
.add< AdaptiveCuttingController<defaulttype3fTypes> >()
2828
# endif
2929
#endif
3030
;
3131

3232
#ifndef SOFA_FLOAT
33-
template class SOFA_SHELLS_API AdaptiveCuttingController<type::Vec3dTypes>;
33+
template class SHELL_ADAPTIVITY_API AdaptiveCuttingController<defaulttype3dTypes>;
3434
#endif //SOFA_FLOAT
3535
#ifndef SOFA_DOUBLE
36-
template class SOFA_SHELLS_API AdaptiveCuttingController<type::Vec3fTypes>;
36+
template class SHELL_ADAPTIVITY_API AdaptiveCuttingController<defaulttype3fTypes>;
3737
#endif //SOFA_DOUBLE
3838

3939
} // namespace controller

extensions/Shell.Adaptivity/src/Shell/Adaptivity/controller/AdaptiveCuttingController.h

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef SOFA_COMPONENT_CONTROLLER_ADAPTIVECUTTINGCONTROLLER_H
22
#define SOFA_COMPONENT_CONTROLLER_ADAPTIVECUTTINGCONTROLLER_H
33

4-
#include <SofaUserInteraction/Controller.h>
4+
#include <sofa/component/controller/Controller.h>
55

66
#include <sofa/defaulttype/VecTypes.h>
77
#include <sofa/type/Vec.h>
@@ -11,14 +11,13 @@
1111
#include <sofa/gui/component/performer/MouseInteractor.h>
1212
#include <sofa/component/topology/container/dynamic/TriangleSetTopologyContainer.h>
1313
#include <sofa/component/topology/container/dynamic/TriangleSetTopologyModifier.h>
14-
#include <sofa/component/topology/container/dynamic/TriangleSetTopologyAlgorithms.h>
1514
#include <sofa/component/topology/container/dynamic/TriangleSetGeometryAlgorithms.h>
1615
#include <sofa/core/topology/TopologyData.h>
1716

1817
#include <sofa/helper/map.h>
1918
#include <sofa/type/vector.h>
2019

21-
#include <SofaShells/controller/Test2DAdapter.h>
20+
#include <Shell/Adaptivity/controller/Test2DAdapter.h>
2221

2322
namespace sofa
2423
{
@@ -33,7 +32,7 @@ namespace controller
3332
class CuttingAdapter
3433
{
3534
public:
36-
virtual void setTrackedPoint(const collision::BodyPicked &picked) = 0;
35+
virtual void setTrackedPoint(const sofa::gui::component::performer::BodyPicked &picked) = 0;
3736
virtual void freeTrackedPoint() = 0;
3837
virtual void addCuttingPoint() = 0;
3938
};
@@ -60,11 +59,11 @@ class AdaptiveCuttingController : public Controller, public CuttingAdapter
6059

6160
typedef sofa::core::topology::BaseMeshTopology::Edge Edge;
6261
typedef sofa::core::topology::BaseMeshTopology::EdgesAroundVertex EdgesAroundVertex;
63-
typedef sofa::component::topology::TriangleSetTopologyContainer::TriangleID Index;
64-
typedef sofa::component::topology::TriangleSetTopologyContainer::Triangle Triangle;
65-
typedef sofa::component::topology::TriangleSetTopologyContainer::TrianglesAroundVertex TrianglesAroundVertex;
66-
typedef sofa::component::topology::TriangleSetTopologyContainer::TrianglesAroundEdge TrianglesAroundEdge;
67-
typedef sofa::component::topology::TriangleSetTopologyContainer::EdgesInTriangle EdgesInTriangle;
62+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::TriangleID Index;
63+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::Triangle Triangle;
64+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::TrianglesAroundVertex TrianglesAroundVertex;
65+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::TrianglesAroundEdge TrianglesAroundEdge;
66+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::EdgesInTriangle EdgesInTriangle;
6867
typedef sofa::type::vector<Index> VecIndex;
6968

7069
enum { InvalidID = sofa::core::topology::Topology::InvalidID };
@@ -76,23 +75,13 @@ class AdaptiveCuttingController : public Controller, public CuttingAdapter
7675
virtual void init();
7776
virtual void reinit();
7877

79-
virtual std::string getTemplateName() const
80-
{
81-
return templateName(this);
82-
}
83-
84-
static std::string templateName(const AdaptiveCuttingController<DataTypes>* = NULL)
85-
{
86-
return DataTypes::Name();
87-
}
88-
8978
void onEndAnimationStep(const double dt);
9079
//void onKeyPressedEvent(core::objectmodel::KeypressedEvent *key);
9180

9281
void draw(const core::visual::VisualParams* vparams);
9382

9483

95-
void setTrackedPoint(const collision::BodyPicked &picked);
84+
void setTrackedPoint(const sofa::gui::component::performer::BodyPicked &picked);
9685
void freeTrackedPoint() {
9786
// Detach the point
9887
m_pointId = InvalidID;
@@ -113,9 +102,9 @@ class AdaptiveCuttingController : public Controller, public CuttingAdapter
113102
private:
114103

115104
Test2DAdapter<DataTypes>* m_adapter;
116-
sofa::component::topology::TriangleSetTopologyContainer* m_container;
117-
sofa::component::topology::TriangleSetGeometryAlgorithms<DataTypes> *m_algoGeom;
118-
sofa::component::topology::TriangleSetTopologyAlgorithms<DataTypes> *m_algoTopo;
105+
sofa::component::topology::container::dynamic::TriangleSetTopologyContainer* m_container;
106+
sofa::component::topology::container::dynamic::TriangleSetGeometryAlgorithms<DataTypes> *m_algoGeom;
107+
sofa::component::topology::container::dynamic::TriangleSetTopologyAlgorithms<DataTypes> *m_algoTopo;
119108
sofa::core::behavior::MechanicalState<DataTypes>* m_state;
120109

121110
// TODO: This should go to cutting config (maybe?)

extensions/Shell.Adaptivity/src/Shell/Adaptivity/controller/AdaptiveCuttingController.inl

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44
// TODO
55
// - protect/unprotect cut edges (m_cutEdge,m_cutList)
66

7-
#include <SofaShells/config.h>
7+
#include <Shell/config.h>
88

99
#include <float.h>
1010
#include <sofa/helper/rmath.h>
1111

12-
#include <SofaShells/misc/PointProjection.h>
13-
#include <SofaShells/controller/AdaptiveCuttingController.h>
12+
#include <Shell/Adaptivity/controller/AdaptiveCuttingController.h>
13+
#include <Shell/misc/PointProjection.h>
1414
#include <SofaMeshCollision/TriangleModel.h>
15+
#include <sofa/component/collision/geometry/TriangleModel.h>
1516

1617
#define OTHER(x, a, b) ((x == a) ? b : a)
1718

@@ -105,7 +106,7 @@ void AdaptiveCuttingController<DataTypes>::onEndAnimationStep(const double /*dt*
105106
if (m_gracePeriod > 0) m_gracePeriod--;
106107

107108
const VecCoord& x0 = m_state->read(
108-
sofa::core::ConstVecCoordId::restPosition())->getValue();
109+
sofa::core::vec_id::read_access::restPosition)->getValue();
109110

110111
// Perform the (delayed) cutting
111112
if ((m_cutList.size() > 0) && (m_cutPoints > 2) ) {
@@ -161,10 +162,10 @@ void AdaptiveCuttingController<DataTypes>::draw(
161162
return;
162163

163164
if (!m_state) return;
164-
const VecCoord& x = m_state->read(sofa::core::ConstVecCoordId::position())->getValue();
165+
const VecCoord& x = m_state->read(sofa::core::vec_id::read_access::position)->getValue();
165166

166167
if (m_cutList.size() > 0) {
167-
type::vector<type::Vector3> points;
168+
type::vector<type::Vec3> points;
168169
for (VecIndex::const_iterator i=m_cutList.begin();
169170
i != m_cutList.end(); i++) {
170171
const Edge &e = m_container->getEdge(*i);
@@ -177,7 +178,7 @@ void AdaptiveCuttingController<DataTypes>::draw(
177178

178179
if (m_cutEdge != InvalidID) {
179180
const Edge &e = m_container->getEdge(m_cutEdge);
180-
type::vector<type::Vector3> points;
181+
type::vector<type::Vec3> points;
181182
points.push_back(x[ e[0] ]);
182183
points.push_back(x[ e[1] ]);
183184
vparams->drawTool()->drawLines(points, 4,
@@ -188,16 +189,16 @@ void AdaptiveCuttingController<DataTypes>::draw(
188189

189190
template<class DataTypes>
190191
void AdaptiveCuttingController<DataTypes>::setTrackedPoint(
191-
const collision::BodyPicked &picked)
192+
const sofa::gui::component::performer::BodyPicked &picked)
192193
{
193194
if (!m_adapter) return;
194195

195196
using namespace sofa::component::collision;
196197

197198
//const VecCoord& x0 = m_state->read(
198-
// sofa::core::ConstVecCoordId::restPosition())->getValue();
199+
// sofa::core::vec_id::read_access::restPosition)->getValue();
199200
const VecCoord& x = m_state->read(
200-
sofa::core::ConstVecCoordId::position())->getValue();
201+
sofa::core::vec_id::read_access::position)->getValue();
201202

202203

203204
// Support only trianglular model! The others don't give any added value.
@@ -211,7 +212,7 @@ void AdaptiveCuttingController<DataTypes>::setTrackedPoint(
211212
Real d2 = (x[ e[1] ] - m_point).norm2();
212213
m_pointId = (d1 < d2 ? e[0] : e[1]);
213214
} else*/
214-
if(dynamic_cast<TriangleModel*>(picked.body)) {
215+
if(dynamic_cast<geometry::TriangleCollisionModel *>(picked.body)) {
215216

216217
Index newId = InvalidID;
217218
Index newCutEdge = InvalidID;
@@ -358,9 +359,9 @@ void AdaptiveCuttingController<DataTypes>::addCuttingPoint()
358359
}
359360

360361
const VecCoord& x = m_state->read(
361-
sofa::core::ConstVecCoordId::position())->getValue();
362+
sofa::core::vec_id::read_access::position)->getValue();
362363
//const VecCoord& xrest = m_state->read(
363-
// sofa::core::ConstVecCoordId::restPosition())->getValue();
364+
// sofa::core::vec_id::read_access::restPosition)->getValue();
364365
Coord oldpos = x[m_pointId];
365366

366367
bool bFirst = !cutting();

extensions/Shell.Adaptivity/src/Shell/Adaptivity/controller/Test2DAdapter.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
#include <SofaShells/config.h>
2-
#include <SofaShells/controller/Test2DAdapter.inl>
1+
#include <Shell/config.h>
2+
#include <Shell/Adaptivity/controller/Test2DAdapter.inl>
33
#include <sofa/core/ObjectFactory.h>
44

55

@@ -19,20 +19,20 @@ SOFA_DECL_CLASS(Test2DAdapter)
1919
// Register in the Factory
2020
int Test2DAdapterClass = core::RegisterObject("Adaptive mesh improvement component for 2D triangular meshes (for testing)")
2121
#ifdef SOFA_FLOAT
22-
.add< Test2DAdapter<type::Vec3fTypes> >(true) // default template
22+
.add< Test2DAdapter<defaulttype3fTypes> >(true) // default template
2323
#else
24-
.add< Test2DAdapter<type::Vec3dTypes> >(true) // default template
24+
.add< Test2DAdapter<defaulttype3dTypes> >(true) // default template
2525
# ifndef SOFA_DOUBLE
26-
.add< Test2DAdapter<type::Vec3fTypes> >()
26+
.add< Test2DAdapter<defaulttype3fTypes> >()
2727
# endif
2828
#endif
2929
;
3030

3131
#ifndef SOFA_FLOAT
32-
template class SOFA_SHELLS_API Test2DAdapter<type::Vec3dTypes>;
32+
template class SHELL_ADAPTIVITY_API Test2DAdapter<defaulttype3dTypes>;
3333
#endif //SOFA_FLOAT
3434
#ifndef SOFA_DOUBLE
35-
template class SOFA_SHELLS_API Test2DAdapter<type::Vec3fTypes>;
35+
template class SHELL_ADAPTIVITY_API Test2DAdapter<defaulttype3fTypes>;
3636
#endif //SOFA_DOUBLE
3737

3838
} // namespace controller

extensions/Shell.Adaptivity/src/Shell/Adaptivity/controller/Test2DAdapter.h

Lines changed: 16 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
#ifndef SOFA_COMPONENT_CONTROLLER_TEST2DADAPTER_H
22
#define SOFA_COMPONENT_CONTROLLER_TEST2DADAPTER_H
33

4-
#include <SofaUserInteraction/Controller.h>
4+
#include <sofa/component/controller/Controller.h>
55

66
#include <sofa/defaulttype/VecTypes.h>
77
#include <sofa/type/Vec.h>
88

99
#include <sofa/core/behavior/MechanicalState.h>
1010
#include <sofa/core/topology/BaseMeshTopology.h>
11-
#include <SofaUserInteraction/MouseInteractor.h>
12-
#include <SofaBaseTopology/TriangleSetTopologyContainer.h>
13-
#include <SofaBaseTopology/TriangleSetTopologyModifier.h>
14-
#include <SofaBaseTopology/TriangleSetTopologyAlgorithms.h>
15-
#include <SofaBaseTopology/TriangleSetGeometryAlgorithms.h>
11+
#include <sofa/gui/component/performer/MouseInteractor.h>
12+
#include <sofa/component/topology/container/dynamic/TriangleSetTopologyContainer.h>
13+
#include <sofa/component/topology/container/dynamic/TriangleSetTopologyModifier.h>
14+
#include <sofa/component/topology/container/dynamic/TriangleSetGeometryAlgorithms.h>
1615
#include <sofa/core/topology/TopologyData.h>
1716

1817
#include <sofa/helper/map.h>
1918
#include <sofa/type/vector.h>
2019

21-
#include <SofaShells/misc/Optimize2DSurface.h>
22-
#include <SofaShells/misc/SurfaceParametrization.h>
20+
#include <Shell/Adaptivity/misc/Optimize2DSurface.h>
21+
#include <Shell/Adaptivity/misc/SurfaceParametrization.h>
2322

2423
namespace sofa
2524
{
@@ -108,11 +107,11 @@ class Test2DAdapter : public Controller
108107

109108
typedef sofa::core::topology::BaseMeshTopology::Edge Edge;
110109
typedef sofa::core::topology::BaseMeshTopology::EdgesAroundVertex EdgesAroundVertex;
111-
typedef sofa::component::topology::TriangleSetTopologyContainer::TriangleID Index;
112-
typedef sofa::component::topology::TriangleSetTopologyContainer::Triangle Triangle;
113-
typedef sofa::component::topology::TriangleSetTopologyContainer::TrianglesAroundVertex TrianglesAroundVertex;
114-
typedef sofa::component::topology::TriangleSetTopologyContainer::TrianglesAroundEdge TrianglesAroundEdge;
115-
typedef sofa::component::topology::TriangleSetTopologyContainer::EdgesInTriangle EdgesInTriangle;
110+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::TriangleID Index;
111+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::Triangle Triangle;
112+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::TrianglesAroundVertex TrianglesAroundVertex;
113+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::TrianglesAroundEdge TrianglesAroundEdge;
114+
typedef sofa::component::topology::container::dynamic::TriangleSetTopologyContainer::EdgesInTriangle EdgesInTriangle;
116115
typedef sofa::type::vector<Index> VecIndex;
117116

118117
enum { InvalidID = sofa::core::topology::Topology::InvalidID };
@@ -252,14 +251,6 @@ class Test2DAdapter : public Controller
252251
virtual void init();
253252
virtual void reinit();
254253

255-
virtual std::string getTemplateName() const {
256-
return templateName(this);
257-
}
258-
259-
static std::string templateName(const Test2DAdapter<DataTypes>* = NULL) {
260-
return DataTypes::Name();
261-
}
262-
263254
void draw(const core::visual::VisualParams* vparams);
264255

265256
void onEndAnimationStep(const double dt);
@@ -340,10 +331,10 @@ class Test2DAdapter : public Controller
340331
private:
341332

342333
unsigned int stepCounter;
343-
sofa::core::topology::TriangleSetTopologyContainer* m_container;
344-
sofa::core::topology::TriangleSetTopologyModifier* m_modifier;
345-
sofa::core::topology::TriangleSetGeometryAlgorithms<DataTypes> *m_algoGeom;
346-
sofa::core::topology::TriangleSetTopologyAlgorithms<DataTypes> *m_algoTopo;
334+
sofa::component::topology::container::dynamic::TriangleSetTopologyContainer* m_container;
335+
sofa::component::topology::container::dynamic::TriangleSetTopologyModifier* m_modifier;
336+
sofa::component::topology::container::dynamic::TriangleSetGeometryAlgorithms<DataTypes> *m_algoGeom;
337+
sofa::component::topology::container::dynamic::TriangleSetTopologyAlgorithms<DataTypes> *m_algoTopo;
347338
sofa::core::behavior::MechanicalState<DataTypes>* m_state;
348339

349340
/// List of nodes that have to be rechecked if they are on the boundry.

0 commit comments

Comments
 (0)