sofa::component::topology::Hexa2QuadTopologicalMapping Class Reference

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

#include <Hexa2QuadTopologicalMapping.h>

Inheritance diagram for sofa::component::topology::Hexa2QuadTopologicalMapping:

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

Collaboration graph
[legend]

Public Member Functions

 Hexa2QuadTopologicalMapping (In *from=NULL, Out *to=NULL)
 Constructor.
virtual ~Hexa2QuadTopologicalMapping ()
 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 Hexa2QuadTopologicalMapping, is a specific implementation of the interface TopologicalMapping where :.

INPUT TOPOLOGY = HexahedronSetTopology OUTPUT TOPOLOGY = QuadSetTopology, as the boundary of the INPUT TOPOLOGY

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

Definition at line 60 of file Hexa2QuadTopologicalMapping.h.


Constructor & Destructor Documentation

sofa::component::topology::Hexa2QuadTopologicalMapping::Hexa2QuadTopologicalMapping ( 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 67 of file Hexa2QuadTopologicalMapping.cpp.

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

Destructor.

Does nothing.

Definition at line 75 of file Hexa2QuadTopologicalMapping.cpp.


Member Function Documentation

template<class T >
static bool sofa::component::topology::Hexa2QuadTopologicalMapping::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 98 of file Hexa2QuadTopologicalMapping.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::Hexa2QuadTopologicalMapping::create ( T *&  obj,
core::objectmodel::BaseContext *  context,
core::objectmodel::BaseObjectDescription *  arg 
) [inline, static]

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

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

void sofa::component::topology::Hexa2QuadTopologicalMapping::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 Hexa2QuadTopologicalMapping.cpp.

References sofa::component::topology::QuadSetTopologyModifier::addQuadsProcess(), sofa::component::topology::QuadSetTopologyModifier::addQuadsWarning(), 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::getHexaQuadShell(), sofa::core::componentmodel::topology::BaseMeshTopology::getHexas(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbQuads(), sofa::core::componentmodel::topology::BaseMeshTopology::getQuadHexaShell(), sofa::core::componentmodel::topology::BaseMeshTopology::getQuadIndexInHexahedron(), sofa::core::componentmodel::topology::TopologicalMapping::Glob2LocMap, sofa::core::componentmodel::topology::HEXAHEDRAREMOVED, sofa::core::componentmodel::topology::BaseMeshTopology::lastChange(), sofa::core::componentmodel::topology::TopologicalMapping::Loc2GlobVec, sofa::component::topology::PointSetTopologyModifier::notifyEndingEvent(), sofa::core::componentmodel::topology::POINTSREMOVED, sofa::core::componentmodel::topology::POINTSRENUMBERING, sofa::component::topology::PointSetTopologyModifier::propagateTopologicalChanges(), sofa::core::componentmodel::topology::QUADSREMOVED, sofa::component::topology::QuadSetTopologyModifier::removePointsProcess(), sofa::component::topology::PointSetTopologyModifier::removePointsWarning(), sofa::component::topology::QuadSetTopologyModifier::removeQuads(), sofa::component::topology::QuadSetTopologyModifier::renumberPointsProcess(), sofa::component::topology::PointSetTopologyModifier::renumberPointsWarning(), and sofa::core::componentmodel::topology::TopologicalMapping::toModel.


Field Documentation

Definition at line 154 of file Hexa2QuadTopologicalMapping.h.

Definition at line 155 of file Hexa2QuadTopologicalMapping.h.


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

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