sofa::component::topology::Triangle2EdgeTopologicalMapping Class Reference

This class, called Triangle2EdgeTopologicalMapping, is a specific implementation of the interface TopologicalMapping where :. More...

#include <Triangle2EdgeTopologicalMapping.h>

Inheritance diagram for sofa::component::topology::Triangle2EdgeTopologicalMapping:

Inheritance graph
[legend]
Collaboration diagram for sofa::component::topology::Triangle2EdgeTopologicalMapping:

Collaboration graph
[legend]

Public Member Functions

 Triangle2EdgeTopologicalMapping (In *from=NULL, Out *to=NULL)
 Constructor.
virtual ~Triangle2EdgeTopologicalMapping ()
 Destructor.
virtual void init ()
 Initializes the target BaseTopology from the source BaseTopology.
virtual void updateTopologicalMapping ()
 Translates the TopologyChange objects from the source to the target.
virtual unsigned int getFromIndex (unsigned int ind)

Static Public Member Functions

template<class T >
static bool canCreate (T *&obj, core::objectmodel::BaseContext *context, core::objectmodel::BaseObjectDescription *arg)
 Pre-construction check method called by ObjectFactory.
template<class T >
static void create (T *&obj, core::objectmodel::BaseContext *context, core::objectmodel::BaseObjectDescription *arg)
 Construction method called by ObjectFactory.

Protected Attributes

Data< std::string > object1
Data< std::string > object2

Detailed Description

This class, called Triangle2EdgeTopologicalMapping, is a specific implementation of the interface TopologicalMapping where :.

INPUT TOPOLOGY = TriangleSetTopology OUTPUT TOPOLOGY = EdgeSetTopology, as the boundary of the INPUT TOPOLOGY

Triangle2EdgeTopologicalMapping class is templated by the pair (INPUT TOPOLOGY, OUTPUT TOPOLOGY)

Definition at line 61 of file Triangle2EdgeTopologicalMapping.h.


Constructor & Destructor Documentation

sofa::component::topology::Triangle2EdgeTopologicalMapping::Triangle2EdgeTopologicalMapping ( In *  from = NULL,
Out *  to = NULL 
)

Constructor.

Parameters:
from the topology issuing TopologyChange objects (the "source").
to the topology for which the TopologyChange objects must be translated (the "target").

Definition at line 65 of file Triangle2EdgeTopologicalMapping.cpp.

sofa::component::topology::Triangle2EdgeTopologicalMapping::~Triangle2EdgeTopologicalMapping (  )  [virtual]

Destructor.

Does nothing.

Definition at line 73 of file Triangle2EdgeTopologicalMapping.cpp.


Member Function Documentation

template<class T >
static bool sofa::component::topology::Triangle2EdgeTopologicalMapping::canCreate ( T *&  obj,
core::objectmodel::BaseContext *  context,
core::objectmodel::BaseObjectDescription *  arg 
) [inline, static]

Pre-construction check method called by ObjectFactory.

This implementation read the object1 and object2 attributes and check if they are compatible with the input and output topology types of this mapping.

Reimplemented from sofa::core::objectmodel::BaseObject.

Definition at line 99 of file Triangle2EdgeTopologicalMapping.h.

References sofa::core::objectmodel::Base::className(), sofa::core::objectmodel::BaseObjectDescription::findObject(), sofa::core::objectmodel::BaseContext::get(), sofa::core::objectmodel::BaseObjectDescription::getAttribute(), and sofa::core::objectmodel::BaseObject::getContext().

template<class T >
static void sofa::component::topology::Triangle2EdgeTopologicalMapping::create ( T *&  obj,
core::objectmodel::BaseContext *  context,
core::objectmodel::BaseObjectDescription *  arg 
) [inline, static]

unsigned int sofa::component::topology::Triangle2EdgeTopologicalMapping::getFromIndex ( unsigned int  ind  )  [virtual]

void sofa::component::topology::Triangle2EdgeTopologicalMapping::init ( void   )  [virtual]

void sofa::component::topology::Triangle2EdgeTopologicalMapping::updateTopologicalMapping (  )  [virtual]

Translates the TopologyChange objects from the source to the target.

Translates each of the TopologyChange objects waiting in the source list so that they have a meaning and reflect the effects of the first topology changes on the second topology.

Implements sofa::core::componentmodel::topology::TopologicalMapping.

Definition at line 137 of file Triangle2EdgeTopologicalMapping.cpp.

References sofa::component::topology::EdgeSetTopologyModifier::addEdgesProcess(), sofa::component::topology::EdgeSetTopologyModifier::addEdgesWarning(), sofa::component::topology::EdgeSetTopologyModifier::addPointsProcess(), sofa::component::topology::PointSetTopologyModifier::addPointsWarning(), sofa::component::topology::PointsAdded::ancestorsList, sofa::component::topology::PointsAdded::coefs, sofa::core::componentmodel::topology::EDGESREMOVED, sofa::core::componentmodel::topology::ENDING_EVENT, sofa::core::componentmodel::topology::BaseMeshTopology::firstChange(), sofa::core::componentmodel::topology::TopologicalMapping::fromModel, sofa::core::objectmodel::BaseContext::get(), sofa::core::objectmodel::BaseObject::getContext(), sofa::core::componentmodel::topology::BaseMeshTopology::getEdge(), sofa::core::componentmodel::topology::BaseMeshTopology::getEdgeIndexInTriangle(), sofa::core::componentmodel::topology::BaseMeshTopology::getEdgeTriangleShell(), sofa::component::topology::TrianglesAdded::getNbAddedTriangles(), sofa::component::topology::PointsAdded::getNbAddedVertices(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbEdges(), sofa::core::componentmodel::topology::BaseMeshTopology::getTriangleEdgeShell(), sofa::core::componentmodel::topology::BaseMeshTopology::getTriangles(), sofa::core::componentmodel::topology::TopologicalMapping::Glob2LocMap, sofa::core::componentmodel::topology::BaseMeshTopology::lastChange(), sofa::core::componentmodel::topology::TopologicalMapping::Loc2GlobVec, sofa::component::topology::PointSetTopologyModifier::notifyEndingEvent(), sofa::core::componentmodel::topology::POINTSADDED, sofa::core::componentmodel::topology::POINTSREMOVED, sofa::core::componentmodel::topology::POINTSRENUMBERING, sofa::component::topology::PointSetTopologyModifier::propagateTopologicalChanges(), sofa::component::topology::EdgeSetTopologyModifier::removeEdges(), sofa::component::topology::EdgeSetTopologyModifier::removePointsProcess(), sofa::component::topology::PointSetTopologyModifier::removePointsWarning(), sofa::component::topology::EdgeSetTopologyModifier::renumberPointsProcess(), sofa::component::topology::PointSetTopologyModifier::renumberPointsWarning(), sofa::core::componentmodel::topology::TopologicalMapping::toModel, sofa::component::topology::TrianglesAdded::triangleIndexArray, sofa::core::componentmodel::topology::TRIANGLESADDED, and sofa::core::componentmodel::topology::TRIANGLESREMOVED.


Field Documentation

Definition at line 156 of file Triangle2EdgeTopologicalMapping.h.

Definition at line 157 of file Triangle2EdgeTopologicalMapping.h.


The documentation for this class was generated from the following files:

Generated on Sun Nov 23 04:21:39 2008 for Sofa by  doxygen 1.5.7.1