18 #ifndef __igstkMeshObject_h
19 #define __igstkMeshObject_h
22 #include <itkMeshSpatialObject.h>
23 #include <itkTetrahedronCell.h>
24 #include <itkTriangleCell.h>
25 #include <itkDefaultDynamicMeshTraits.h>
32 class MeshReaderToMeshSpatialObject;
59 typedef itk::DefaultDynamicMeshTraits<
float,3,3> MeshTrait;
65 typedef itk::Mesh<
float,3,MeshTrait>
MeshType;
88 bool AddPoint(
unsigned int id,
float x,
float y,
float z);
92 unsigned int vertex1,
unsigned int vertex2,
93 unsigned int vertex3,
unsigned int vertex4);
99 unsigned int vertex3);
102 const PointsContainerPointer
GetPoints() const;
105 const CellsContainerPointer
GetCells() const;
120 virtual
void PrintSelf( std::ostream& os, itk::Indent indent ) const;
125 void SetMesh( MeshType * mesh );
128 MeshSpatialObjectType::
Pointer m_MeshSpatialObject;
135 #endif // __igstkMeshObject_h
Implements the 3-dimensional mesh structure.
MeshType::PointType PointType
Type of the point used to describe the mesh.
bool AddTetrahedronCell(unsigned int id, unsigned int vertex1, unsigned int vertex2, unsigned int vertex3, unsigned int vertex4)
Add a tetrahedron cell to the mesh.
#define igstkFriendClassMacro(type)
Create a Macro for friend class.
const PointsContainerPointer GetPoints() const
Return the points.
Geometrical abstraction of physical objects present in the surgical scene.
MeshType::CellsContainerPointer CellsContainerPointer
bool AddTriangleCell(unsigned int id, unsigned int vertex1, unsigned int vertex2, unsigned int vertex3)
Add a triangle cell to the mesh.
MeshType::PointsContainerPointer PointsContainerPointer
itk::CellInterface< float, CellTraits > CellInterfaceType
itk::MeshSpatialObject< MeshType > MeshSpatialObjectType
Type of the internal MeshSpatialObject.
MeshType::CellTraits CellTraits
#define igstkStandardClassTraitsMacro(classname, superclassname)
Convenience macro for traits of a non-templated class.
const CellsContainerPointer GetCells() const
Return the cells.
igstkStandardClassTraitsMacro(MeshObject, SpatialObject) typedef itk typedef itk::Mesh< float, 3, MeshTrait > MeshType
Macro with standard traits declarations.
bool AddPoint(unsigned int id, float x, float y, float z)
Add a point to the mesh.
MeshType::PointsContainer PointsContainer
Type of containers used to store the points and cells.
CellType::CellAutoPointer CellAutoPointer
::itk::SmartPointer< Self > Pointer
MeshType::CellsContainer CellsContainer
MeshType::CellType CellType
itk::TriangleCell< CellInterfaceType > TriangleCellType
itk::TetrahedronCell< CellInterfaceType > TetraCellType
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const
Print object information.