Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ int SimpleTesselatedHexaTopologicalMappingClass = core::RegisterObject ( "Specia
SimpleTesselatedHexaTopologicalMapping::SimpleTesselatedHexaTopologicalMapping()
: sofa::core::topology::TopologicalMapping()
{
m_inputType = TopologyElementType::HEXAHEDRON;
m_outputType = TopologyElementType::HEXAHEDRON;
m_inputType = geometry::ElementType::HEXAHEDRON;
m_outputType = geometry::ElementType::HEXAHEDRON;
}

void SimpleTesselatedHexaTopologicalMapping::init()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@ SimpleTesselatedTetraTopologicalMapping::SimpleTesselatedTetraTopologicalMapping
, d_pointMappedFromEdge( initData ( &d_pointMappedFromEdge, "pointMappedFromEdge", "Each edge of the input topology is mapped to his midpoint"))
, d_pointSource( initData ( &d_pointSource, "pointSource", "Which input topology element map to a given point in the output topology : 0 -> none, > 0 -> point index + 1, < 0 , - edge index -1"))
{
m_inputType = TopologyElementType::TETRAHEDRON;
m_outputType = TopologyElementType::TETRAHEDRON;
m_inputType = geometry::ElementType::TETRAHEDRON;
m_outputType = geometry::ElementType::TETRAHEDRON;
}

void SimpleTesselatedTetraTopologicalMapping::init()
Expand Down
10 changes: 5 additions & 5 deletions Sofa/Component/Mass/src/sofa/component/mass/MeshMatrixMass.h
Original file line number Diff line number Diff line change
Expand Up @@ -117,14 +117,14 @@ class MeshMatrixMass : public core::behavior::Mass<DataTypes>
protected:

/// The type of topology to build the mass from the topology
sofa::core::topology::TopologyElementType m_massTopologyType;
sofa::geometry::ElementType m_massTopologyType;
Real m_massLumpingCoeff;

MeshMatrixMass();
~MeshMatrixMass() override;

sofa::core::topology::TopologyElementType checkTopology();
void initTopologyHandlers(sofa::core::topology::TopologyElementType topologyType);
sofa::geometry::ElementType checkTopology();
void initTopologyHandlers(sofa::geometry::ElementType topologyType);
void massInitialization();

/// Internal data required for Cuda computation (copy of vertex mass for deviceRead)
Expand All @@ -139,12 +139,12 @@ class MeshMatrixMass : public core::behavior::Mass<DataTypes>
void handleEvent(sofa::core::objectmodel::Event *event) override;
void doUpdateInternal() override;

sofa::core::topology::TopologyElementType getMassTopologyType() const
sofa::geometry::ElementType getMassTopologyType() const
{
return m_massTopologyType;
}

void setMassTopologyType(sofa::core::topology::TopologyElementType t)
void setMassTopologyType(sofa::geometry::ElementType t)
{
m_massTopologyType = t;
}
Expand Down
78 changes: 39 additions & 39 deletions Sofa/Component/Mass/src/sofa/component/mass/MeshMatrixMass.inl

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -269,7 +269,7 @@ void SpringForceField<DataTypes>::initializeTopologyHandler(sofa::core::topology
applyRemovedPoints(pointsRemoved, mstateId);
});

if (topology->getTopologyType() == sofa::core::topology::TopologyElementType::EDGE)
if (topology->getTopologyType() == sofa::geometry::ElementType::EDGE)
{
indices.linkToEdgeDataArray();
indices.addTopologyEventCallBack(core::topology::TopologyChangeType::EDGESREMOVED,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -511,7 +511,7 @@ MeshTopology::MeshTopology()
, _drawTetra(initData(&_drawTetra, false, "drawTetrahedra","if true, draw the topology Tetrahedra"))
, _drawHexa(initData(&_drawHexa, false, "drawHexahedra","if true, draw the topology hexahedra"))
{
m_upperElementType = sofa::core::topology::TopologyElementType::EDGE;
m_upperElementType = sofa::geometry::ElementType::EDGE;
addAlias(&seqPoints,"points");
addAlias(&seqEdges,"lines");
addAlias(&seqTetrahedra,"tetras");
Expand All @@ -533,17 +533,17 @@ void MeshTopology::init()

// looking for upper topology
if (!hexahedra.empty())
m_upperElementType = core::topology::TopologyElementType::HEXAHEDRON;
m_upperElementType = geometry::ElementType::HEXAHEDRON;
else if (!tetrahedra.empty())
m_upperElementType = sofa::core::topology::TopologyElementType::TETRAHEDRON;
m_upperElementType = sofa::geometry::ElementType::TETRAHEDRON;
else if (!quads.empty())
m_upperElementType = sofa::core::topology::TopologyElementType::QUAD;
m_upperElementType = sofa::geometry::ElementType::QUAD;
else if (!triangles.empty())
m_upperElementType = sofa::core::topology::TopologyElementType::TRIANGLE;
m_upperElementType = sofa::geometry::ElementType::TRIANGLE;
else if (!edges.empty())
m_upperElementType = sofa::core::topology::TopologyElementType::EDGE;
m_upperElementType = sofa::geometry::ElementType::EDGE;
else
m_upperElementType = sofa::core::topology::TopologyElementType::POINT;
m_upperElementType = sofa::geometry::ElementType::POINT;


// compute the number of points, if the topology is charged from the scene or if it was loaded from a MeshLoader without any points data.
Expand Down Expand Up @@ -2338,13 +2338,13 @@ bool MeshTopology::checkConnexity()
{
Size nbr = 0;

if (m_upperElementType == core::topology::TopologyElementType::HEXAHEDRON)
if (m_upperElementType == geometry::ElementType::HEXAHEDRON)
nbr = this->getNbHexahedra();
else if (m_upperElementType == core::topology::TopologyElementType::TETRAHEDRON)
else if (m_upperElementType == geometry::ElementType::TETRAHEDRON)
nbr = this->getNbTetrahedra();
else if (m_upperElementType == core::topology::TopologyElementType::QUAD)
else if (m_upperElementType == geometry::ElementType::QUAD)
nbr = this->getNbQuads();
else if (m_upperElementType == core::topology::TopologyElementType::TRIANGLE)
else if (m_upperElementType == geometry::ElementType::TRIANGLE)
nbr = this->getNbTriangles();
else
nbr = this->getNbEdges();
Expand All @@ -2371,13 +2371,13 @@ Size MeshTopology::getNumberOfConnectedComponent()
{
Size nbr = 0;

if (m_upperElementType == core::topology::TopologyElementType::HEXAHEDRON)
if (m_upperElementType == geometry::ElementType::HEXAHEDRON)
nbr = this->getNbHexahedra();
else if (m_upperElementType == core::topology::TopologyElementType::TETRAHEDRON)
else if (m_upperElementType == geometry::ElementType::TETRAHEDRON)
nbr = this->getNbTetrahedra();
else if (m_upperElementType == core::topology::TopologyElementType::QUAD)
else if (m_upperElementType == geometry::ElementType::QUAD)
nbr = this->getNbQuads();
else if (m_upperElementType == core::topology::TopologyElementType::TRIANGLE)
else if (m_upperElementType == geometry::ElementType::TRIANGLE)
nbr = this->getNbTriangles();
else
nbr = this->getNbEdges();
Expand Down Expand Up @@ -2417,13 +2417,13 @@ const sofa::type::vector<Index> MeshTopology::getConnectedElement(Index elem)
{
Size nbr = 0;

if (m_upperElementType == core::topology::TopologyElementType::HEXAHEDRON)
if (m_upperElementType == geometry::ElementType::HEXAHEDRON)
nbr = this->getNbHexahedra();
else if (m_upperElementType == core::topology::TopologyElementType::TETRAHEDRON)
else if (m_upperElementType == geometry::ElementType::TETRAHEDRON)
nbr = this->getNbTetrahedra();
else if (m_upperElementType == core::topology::TopologyElementType::QUAD)
else if (m_upperElementType == geometry::ElementType::QUAD)
nbr = this->getNbQuads();
else if (m_upperElementType == core::topology::TopologyElementType::TRIANGLE)
else if (m_upperElementType == geometry::ElementType::TRIANGLE)
nbr = this->getNbTriangles();
else
nbr = this->getNbEdges();
Expand Down Expand Up @@ -2487,25 +2487,25 @@ const sofa::type::vector<Index> MeshTopology::getElementAroundElement(Index elem
sofa::type::vector<Index> elems;
unsigned int nbr = 0;

if (m_upperElementType == core::topology::TopologyElementType::HEXAHEDRON)
if (m_upperElementType == geometry::ElementType::HEXAHEDRON)
{
nbr = 8;
if(!this->m_hexahedraAroundVertex.empty())
createHexahedraAroundVertexArray();
}
else if (m_upperElementType == core::topology::TopologyElementType::TETRAHEDRON)
else if (m_upperElementType == geometry::ElementType::TETRAHEDRON)
{
nbr = 4;
if(!this->m_tetrahedraAroundVertex.empty())
createTetrahedraAroundVertexArray();
}
else if (m_upperElementType == core::topology::TopologyElementType::QUAD)
else if (m_upperElementType == geometry::ElementType::QUAD)
{
nbr = 4;
if(!this->m_quadsAroundVertex.empty())
createQuadsAroundVertexArray();
}
else if (m_upperElementType == core::topology::TopologyElementType::TRIANGLE)
else if (m_upperElementType == geometry::ElementType::TRIANGLE)
{
nbr = 3;
if(!this->m_trianglesAroundVertex.empty())
Expand All @@ -2525,13 +2525,13 @@ const sofa::type::vector<Index> MeshTopology::getElementAroundElement(Index elem
{
sofa::type::vector<Index> elemAV;

if (m_upperElementType == core::topology::TopologyElementType::HEXAHEDRON)
if (m_upperElementType == geometry::ElementType::HEXAHEDRON)
elemAV = this->getHexahedraAroundVertex(getHexahedron(elem)[i]);
else if (m_upperElementType == core::topology::TopologyElementType::TETRAHEDRON)
else if (m_upperElementType == geometry::ElementType::TETRAHEDRON)
elemAV = this->getTetrahedraAroundVertex(getTetrahedron(elem)[i]);
else if (m_upperElementType == core::topology::TopologyElementType::QUAD)
else if (m_upperElementType == geometry::ElementType::QUAD)
elemAV = this->getQuadsAroundVertex(getQuad(elem)[i]);
else if (m_upperElementType == core::topology::TopologyElementType::TRIANGLE)
else if (m_upperElementType == geometry::ElementType::TRIANGLE)
elemAV = this->getTrianglesAroundVertex(getTriangle(elem)[i]);
else
elemAV = this->getEdgesAroundVertex(getEdge(elem)[i]);
Expand Down Expand Up @@ -2566,22 +2566,22 @@ const sofa::type::vector<Index> MeshTopology::getElementAroundElements(sofa::typ
sofa::type::vector<Index> elemAll;
sofa::type::vector<Index> elemTmp;

if (m_upperElementType == core::topology::TopologyElementType::HEXAHEDRON)
if (m_upperElementType == geometry::ElementType::HEXAHEDRON)
{
if(!this->m_hexahedraAroundVertex.empty())
createHexahedraAroundVertexArray();
}
else if (m_upperElementType == core::topology::TopologyElementType::TETRAHEDRON)
else if (m_upperElementType == geometry::ElementType::TETRAHEDRON)
{
if(!this->m_tetrahedraAroundVertex.empty())
createTetrahedraAroundVertexArray();
}
else if (m_upperElementType == core::topology::TopologyElementType::QUAD)
else if (m_upperElementType == geometry::ElementType::QUAD)
{
if(!this->m_quadsAroundVertex.empty())
createQuadsAroundVertexArray();
}
else if (m_upperElementType == core::topology::TopologyElementType::TRIANGLE)
else if (m_upperElementType == geometry::ElementType::TRIANGLE)
{
if(!this->m_trianglesAroundVertex.empty())
createTrianglesAroundVertexArray();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -599,7 +599,7 @@ class SOFA_COMPONENT_TOPOLOGY_CONTAINER_CONSTANT_API MeshTopology : public core:
Edge getLocalEdgesInHexahedron (const HexahedronID i) const override;

/** \ brief returns the topologyType */
sofa::core::topology::TopologyElementType getTopologyType() const override { return m_upperElementType; }
sofa::geometry::ElementType getTopologyType() const override { return m_upperElementType; }

int revision;

Expand All @@ -616,8 +616,8 @@ class SOFA_COMPONENT_TOPOLOGY_CONTAINER_CONSTANT_API MeshTopology : public core:
virtual void updateHexahedra();

protected:
/// Type of higher topology element contains in this container @see TopologyElementType
sofa::core::topology::TopologyElementType m_upperElementType;
/// Type of higher topology element contains in this container @see ElementType
sofa::geometry::ElementType m_upperElementType;
};

} //namespace sofa::component::topology::container::constant
Original file line number Diff line number Diff line change
Expand Up @@ -87,10 +87,10 @@ bool MeshTopology_test::testEmptyContainer()

bool MeshTopology_test::testHexahedronTopology()
{
fake_TopologyScene* scene = new fake_TopologyScene("mesh/nine_hexa.msh", sofa::core::topology::TopologyElementType::HEXAHEDRON);
fake_TopologyScene* scene = new fake_TopologyScene("mesh/nine_hexa.msh", sofa::geometry::ElementType::HEXAHEDRON);
HexahedronSetTopologyContainer* topoCon = dynamic_cast<HexahedronSetTopologyContainer*>(scene->getNode().get()->getMeshTopology());

fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/nine_hexa.msh", sofa::core::topology::TopologyElementType::HEXAHEDRON, true);
fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/nine_hexa.msh", sofa::geometry::ElementType::HEXAHEDRON, true);
MeshTopology* topo = dynamic_cast<MeshTopology*>(scene2->getNode().get()->getMeshTopology());
topo->init();

Expand Down Expand Up @@ -201,10 +201,10 @@ bool MeshTopology_test::testHexahedronTopology()

bool MeshTopology_test::testTetrahedronTopology()
{
fake_TopologyScene* scene = new fake_TopologyScene("mesh/cube_low_res.msh", sofa::core::topology::TopologyElementType::TETRAHEDRON);
fake_TopologyScene* scene = new fake_TopologyScene("mesh/cube_low_res.msh", sofa::geometry::ElementType::TETRAHEDRON);
TetrahedronSetTopologyContainer* topoCon = dynamic_cast<TetrahedronSetTopologyContainer*>(scene->getNode().get()->getMeshTopology());

fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/cube_low_res.msh", sofa::core::topology::TopologyElementType::TETRAHEDRON, true);
fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/cube_low_res.msh", sofa::geometry::ElementType::TETRAHEDRON, true);
MeshTopology* topo = dynamic_cast<MeshTopology*>(scene2->getNode().get()->getMeshTopology());
topo->init();

Expand Down Expand Up @@ -315,10 +315,10 @@ bool MeshTopology_test::testTetrahedronTopology()

bool MeshTopology_test::testQuadTopology()
{
fake_TopologyScene* scene = new fake_TopologyScene("mesh/square1_quads.obj", sofa::core::topology::TopologyElementType::QUAD);
fake_TopologyScene* scene = new fake_TopologyScene("mesh/square1_quads.obj", sofa::geometry::ElementType::QUAD);
QuadSetTopologyContainer* topoCon = dynamic_cast<QuadSetTopologyContainer*>(scene->getNode().get()->getMeshTopology());

fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/square1_quads.obj", sofa::core::topology::TopologyElementType::QUAD, true);
fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/square1_quads.obj", sofa::geometry::ElementType::QUAD, true);
MeshTopology* topo = dynamic_cast<MeshTopology*>(scene2->getNode().get()->getMeshTopology());
topo->init();

Expand Down Expand Up @@ -411,10 +411,10 @@ bool MeshTopology_test::testQuadTopology()

bool MeshTopology_test::testTriangleTopology()
{
fake_TopologyScene* scene = new fake_TopologyScene("mesh/square1.obj", sofa::core::topology::TopologyElementType::TRIANGLE);
fake_TopologyScene* scene = new fake_TopologyScene("mesh/square1.obj", sofa::geometry::ElementType::TRIANGLE);
TriangleSetTopologyContainer* topoCon = dynamic_cast<TriangleSetTopologyContainer*>(scene->getNode().get()->getMeshTopology());

fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/square1.obj", sofa::core::topology::TopologyElementType::TRIANGLE, true);
fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/square1.obj", sofa::geometry::ElementType::TRIANGLE, true);
MeshTopology* topo = dynamic_cast<MeshTopology*>(scene2->getNode().get()->getMeshTopology());
topo->init();

Expand Down Expand Up @@ -507,10 +507,10 @@ bool MeshTopology_test::testTriangleTopology()

bool MeshTopology_test::testEdgeTopology()
{
fake_TopologyScene* scene = new fake_TopologyScene("mesh/square1_edges.obj", sofa::core::topology::TopologyElementType::EDGE);
fake_TopologyScene* scene = new fake_TopologyScene("mesh/square1_edges.obj", sofa::geometry::ElementType::EDGE);
EdgeSetTopologyContainer* topoCon = dynamic_cast<EdgeSetTopologyContainer*>(scene->getNode().get()->getMeshTopology());

fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/square1_edges.obj", sofa::core::topology::TopologyElementType::EDGE, true);
fake_TopologyScene* scene2 = new fake_TopologyScene("mesh/square1_edges.obj", sofa::geometry::ElementType::EDGE, true);
MeshTopology* topo = dynamic_cast<MeshTopology*>(scene2->getNode().get()->getMeshTopology());
topo->init();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -872,7 +872,7 @@ void EdgeSetGeometryAlgorithms<DataTypes>::initPointAdded(PointID index, const c
{
using namespace sofa::core::topology;

if (ancestorElem.type != core::topology::TopologyElementType::EDGE)
if (ancestorElem.type != geometry::ElementType::EDGE)
{
PointSetGeometryAlgorithms< DataTypes >::initPointAdded(index, ancestorElem, coordVecs, derivVecs);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ class SOFA_COMPONENT_TOPOLOGY_CONTAINER_DYNAMIC_API EdgeSetTopologyContainer : p
/// @}

/** \brief Returns the type of the topology */
sofa::core::topology::TopologyElementType getTopologyType() const override {return sofa::core::topology::TopologyElementType::EDGE;}
sofa::geometry::ElementType getTopologyType() const override {return sofa::geometry::ElementType::EDGE;}

bool linkTopologyHandlerToData(core::topology::TopologyHandler* topologyHandler, sofa::geometry::ElementType elementType) override;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ void EdgeSetTopologyModifier::addEdgesWarning(const sofa::Size nEdges,
for (size_t j=0; j<ancestorElems[i].srcElems.size(); ++j)
{
sofa::core::topology::TopologyElemID src = ancestorElems[i].srcElems[j];
if (src.type == sofa::core::topology::TopologyElementType::EDGE && src.index != sofa::InvalidID)
if (src.type == sofa::geometry::ElementType::EDGE && src.index != sofa::InvalidID)
ancestors[i].push_back(src.index);
}
if (!ancestors[i].empty())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
// Z
//
// Hexahedron quads are ordered as {BACK, FRONT, BOTTOM, RIGHT, TOP, LEFT}
// const unsigned int quadsInHexahedronArray[6][4]={{0,1,2,3}, {4,7,6,5}, {1,0,4,5},{1,5,6,2}, {2,6,7,3}, {0,3,7,4}}
// const unsigned int quadsOrientationInHexahedronArray[6][4]={{0,1,2,3}, {4,7,6,5}, {1,0,4,5},{1,5,6,2}, {2,6,7,3}, {0,3,7,4}}
// The quads orientation is clockwise
//

Expand Down Expand Up @@ -310,7 +310,7 @@ class SOFA_COMPONENT_TOPOLOGY_CONTAINER_DYNAMIC_API HexahedronSetTopologyContain
/// @}

/** \brief Returns the type of the topology */
sofa::core::topology::TopologyElementType getTopologyType() const override {return core::topology::TopologyElementType::HEXAHEDRON;}
sofa::geometry::ElementType getTopologyType() const override {return geometry::ElementType::HEXAHEDRON;}

bool linkTopologyHandlerToData(core::topology::TopologyHandler* topologyHandler, sofa::geometry::ElementType elementType) override;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ class SOFA_COMPONENT_TOPOLOGY_CONTAINER_DYNAMIC_API PointSetTopologyContainer :
SReal getPZ(Index i) const override;

/** \brief Returns the type of the topology */
sofa::core::topology::TopologyElementType getTopologyType() const override {return sofa::core::topology::TopologyElementType::POINT;}
sofa::geometry::ElementType getTopologyType() const override {return sofa::geometry::ElementType::POINT;}

/// @}

Expand Down
Loading