IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
ipsdk::geom::Shape3d Class Reference

Shape 3d associated to one or more closed mesh 3d. More...

#include <Shape3d.h>

Inheritance diagram for ipsdk::geom::Shape3d:
ipsdk::geom::BaseTypedGeometryEntity3d< Shape3dDataType > ipsdk::geom::BaseGeometryEntity3d ipsdk::geom::BaseGeometryEntity ipsdk::BaseObjectWithSkeleton ipsdk::BaseSerializationObject ipsdk::BaseDynamicObject

Public Types

typedef Shape3dMeshWithHoles MeshWithHolesType
 msh with holes type associated to object
 
typedef Shape3dMeshWithHolesPtr MeshWithHolesPtr
 shared pointer to mesh with holes
 
typedef Shape3dMeshWithHolesConstPtr MeshWithHolesConstPtr
 shared pointer to mesh with holes
 
typedef Shape3dMeshWithHolesConstColl MeshWithHolesConstColl
 collection of const mesh with holes
 
typedef Shape3dMeshWithHolesColl MeshWithHolesColl
 collection of mesh with holes
 
typedef boost::shared_ptr< MeshWithHolesCollMeshWithHolesCollPtr
 shared pointer to collection of mesh with holes
 
typedef Shape3dMeshWithHolesColl::iterator MeshWithHolesIterator
 iterator to collection of mes with holes
 
- Public Types inherited from ipsdk::geom::BaseTypedGeometryEntity3d< Shape3dDataType >
typedef Shape3dDataType DataType
 data type associated to coordinates
 

Public Member Functions

eCoordinateSystem3dType getCoordinateSystem3dType () const
 method allowing to retrieve coordinate system 2d type
 
eEntity3dType getEntity3dType () const
 method allowing to retrieve entity 3d type
 
const RowSegmentsgetRowIntersections (const ipUInt64 rowIdx, const ipUInt64 planIdx) const
 access to row intersections for a given position (y, z) More...
 
const ipUInt64 getNbVoxels () const
 retrieve number of voxels associated to shape
 
void clearRowIntersections ()
 method allowing to clear row intersections
 
void clear ()
 method allowing all data associated to shape
 
Constructors and destructors
 Shape3d ()
 
 ~Shape3d ()
 
Access to row intersections informations
bool hasRowIntersections () const
 check whether row intersections have been set
 
const RowIntersections3dgetRowIntersections () const
 get row intersections collection
 
RowIntersections3dgetRowIntersections ()
 access to row intersections collection
 
bool hasRowIntersections (const ipUInt64 planIdx) const
 check whether a given zOffset is associated to row intersections
 
bool hasRowIntersection (const ipUInt64 rowIdx, const ipUInt64 planIdx) const
 check whether shape has an intersection with a given row
 
ipUInt64 getStartZ () const
 retrieve starting and ending z index for shape
 
ipUInt64 getEndZ () const
 check whether row intersections have been set
 
ipUInt64 getStartY (const ipUInt64 planIdx) const
 retrieve starting and ending row index for shape More...
 
ipUInt64 getEndY (const ipUInt64 planIdx) const
 retrieve starting and ending row index for shape More...
 
Access to mesh with holes collection informations
bool isMeshWithHolesCollSet () const
 check whether surface mesh has been initialized
 
const MeshWithHolesConstCollgetMeshWithHolesColl () const
 get mesh with holes collection
 
MeshWithHolesCollgetMeshWithHolesColl ()
 access to mesh with holes collection
 
ipUInt64 getNbTotVertices () const
 retrieve total number of mesh vertices (including holes vertices)
 
ipUInt64 getNbTotEdges () const
 retrieve total number of mesh edges (including holes edges)
 
ipUInt64 getNbTotTriangles () const
 retrieve total number of mesh triangles (including holes triangles)
 
ipUInt64 getNbExteriorVertices () const
 retrieve number of exterior mesh vertices
 
ipUInt64 getNbExteriorEdges () const
 retrieve number of exterior edges
 
ipUInt64 getNbExteriorTriangles () const
 retrieve number of exterior triangles
 
MeshWithHolesIterator beginMeshWithHoles ()
 iterator used to parse mesh
 
MeshWithHolesIterator endMeshWithHoles ()
 iterator used to parse mesh
 
void clearMeshWithHolesColl ()
 method allowing to mesh with holes collection
 
- Public Member Functions inherited from ipsdk::geom::BaseTypedGeometryEntity3d< Shape3dDataType >
 BaseTypedGeometryEntity3d ()
 
virtual ~BaseTypedGeometryEntity3d ()=0
 
- Public Member Functions inherited from ipsdk::geom::BaseGeometryEntity3d
eCoordinateDimension getCoordinateDimension () const
 method allowing to retrieve entity underlying coordinates dimension
 
 BaseGeometryEntity3d ()
 
virtual ~BaseGeometryEntity3d ()=0
 
- Public Member Functions inherited from ipsdk::geom::BaseGeometryEntity
 BaseGeometryEntity ()
 
virtual ~BaseGeometryEntity ()=0
 
- Public Member Functions inherited from ipsdk::BaseObjectWithSkeleton
const eSklSrzModegetSerializationMode () const
 retrieve serialization flag for object More...
 
void setSerializationMode (const eSklSrzMode &sklSrzMode) const
 set serialization flag for object
 
 BaseObjectWithSkeleton ()
 
 ~BaseObjectWithSkeleton ()
 
- Public Member Functions inherited from ipsdk::BaseSerializationObject
 BaseSerializationObject ()
 Default constructor.
 
virtual ~BaseSerializationObject ()=0
 destructor
 
- Public Member Functions inherited from ipsdk::BaseDynamicObject
virtual const std::string & getClassName () const
 method allowing to retrieve object class name
 
virtual BaseDynamicObjectcreateNew () const =0
 method allowing to create new instance of current object type
 
virtual DynamicObjectPtr createShared () const =0
 method allowing to create new shared instance of current object type
 
virtual bool hasCopySupport () const =0
 check whether objet has copy support
 
virtual BaseDynamicObjectduplicate () const =0
 method allowing to duplicate current object More...
 
virtual DynamicObjectPtr duplicateShared () const =0
 method allowing shared duplication of current object More...
 
 BaseDynamicObject ()
 
virtual ~BaseDynamicObject ()=0
 

Static Public Attributes

static const eCoordinateSystem3dType::domain g_coordinateSystem3dType = eCoordinateSystem3dType::eCS3DT_Cartesian
 coordinate system associated to entity
 
static const eEntity3dType::domain g_entity3dType = eEntity3dType::eE3DT_Shape
 type associated to entity
 
- Static Public Attributes inherited from ipsdk::geom::BaseGeometryEntity3d
static const eCoordinateDimension::domain g_coordinateDimension = eCoordinateDimension::eCD_3d
 entity underlying coordinates dimension
 

Protected Attributes

RowIntersections3d _rowIntersections
 structure describing shape/row intersections
 
MeshWithHolesColl _meshWithHolesColl
 collection of mesh holes associated to shape 2d
 
- Protected Attributes inherited from ipsdk::BaseObjectWithSkeleton
eSklSrzMode _sklSrzMode
 serialization flag for object More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ipsdk::BaseSerializationObject
static ipUInt32 getVersion ()
 method allowing to retrieve class version information for serialization
 
- Static Public Member Functions inherited from ipsdk::BaseDynamicObject
static const std::string & getTypeName ()
 method allowing to retrieve name associated to class
 
- Protected Member Functions inherited from ipsdk::BaseSerializationObject
virtual BoolResult write (BaseOArchive &ar) const
 method allowing to ensure serialization write part for object
 
virtual BoolResult read (BaseIArchive &ar)
 method allowing to ensure serialization read part for object
 
- Protected Member Functions inherited from ipsdk::BaseDynamicObject
virtual void initCtorCopy (const BaseDynamicObject &object)
 
virtual void copy (const BaseDynamicObject &object)
 method allowing to copy data from another object
 

Detailed Description

Shape 3d associated to one or more closed mesh 3d.

Author
H. Delestre
Date
2015/08/11

Member Function Documentation

◆ getStartY()

ipUInt64 ipsdk::geom::Shape3d::getStartY ( const ipUInt64  planIdx) const

retrieve starting and ending row index for shape

Exceptions
ipsdk::geom::IPSDKGeometryExceptionif hasRowIntersections(planIdx) == false

◆ getEndY()

ipUInt64 ipsdk::geom::Shape3d::getEndY ( const ipUInt64  planIdx) const

retrieve starting and ending row index for shape

Exceptions
ipsdk::geom::IPSDKGeometryExceptionif hasRowIntersections(planIdx) == false

◆ getRowIntersections()

const RowSegments& ipsdk::geom::Shape3d::getRowIntersections ( const ipUInt64  rowIdx,
const ipUInt64  planIdx 
) const

access to row intersections for a given position (y, z)

Exceptions
ipsdk::geom::IPSDKGeometryExceptionif hasRowIntersection(rowIdx, planIdx) == false

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