|  | Artec 3D Scanning SDK
    2.0
    | 
Indexed triangle mesh. More...
#include <artec/sdk/base/IMesh.h>
 Inheritance diagram for artec::sdk::base::IMesh:
 Inheritance diagram for artec::sdk::base::IMesh:| Public Member Functions | |
| virtual bool | isEmpty () const =0 | 
| Check whether the mesh is empty.  More... | |
|  Public Member Functions inherited from artec::sdk::base::IRevision | |
| virtual bool | wasChanged (unsigned int rev) const =0 | 
| Check whether the object was changed (true if changed)  More... | |
| virtual unsigned int | incRevision ()=0 | 
| Increment object's revision.  More... | |
| virtual unsigned int | getRevision () const =0 | 
| Get object's revision.  More... | |
|  Public Member Functions inherited from artec::sdk::base::IRef | |
| virtual int | addRef () const =0 | 
| Increase object reference counter.  More... | |
| virtual int | release () const =0 | 
| Decrease object reference counter.  More... | |
| Data access functions | |
| virtual IArrayPoint3F * | getPoints () const =0 | 
| Get points (vertices).  More... | |
| virtual void | setPoints (IArrayPoint3F *points)=0 | 
| Set points (vertices).  More... | |
| virtual IArrayIndexTriplet * | getTriangles () const =0 | 
| Get triangles (triplets of vertex indices).  More... | |
| virtual void | setTriangles (IArrayIndexTriplet *triangles)=0 | 
| Set triangles (triplets of vertex indices).  More... | |
| virtual IArrayPoint3F * | getPointsNormals () const =0 | 
| Get vertex normals (smooth).  More... | |
| virtual void | setPointsNormals (IArrayPoint3F *normals)=0 | 
| Set vertex normals (smooth).  More... | |
| virtual IArrayPoint3F * | getTrianglesNormals () const =0 | 
| Get triangle normals (flat).  More... | |
| virtual void | setTrianglesNormals (IArrayPoint3F *normals)=0 | 
| Set triangle normals (flat).  More... | |
| virtual Triangle | getTriangle (int i) const =0 | 
| Return point coordinates for i-th triangle.  More... | |
| Calculated data functions | |
| virtual unsigned int | calculate (unsigned int requested_mode, unsigned int recreate_mode=CM_None)=0 | 
| Create calculated data.  More... | |
| virtual unsigned int | getCalculated ()=0 | 
| Get calculated data flags.  More... | |
| virtual void | clear (int requested_mode=CM_ClearEverything)=0 | 
| Clear unneeded data from mesh.  More... | |
| Point transformation functions | |
| virtual void | transform (const Matrix4x4D &matrix)=0 | 
| Apply full transformation (motion / rotation / scale).  More... | |
| virtual void | translate (const Point3F &direction)=0 | 
| Apply translation.  More... | |
| virtual void | rotate (const Matrix4x4D &matrix)=0 | 
| Apply rotation.  More... | |
| virtual void | scale (float factor)=0 | 
| Scale.  More... | |
| virtual void | scale (float factor, const Point3F ¢er)=0 | 
| Scale.  More... | |
| Calculated data access functions | |
| virtual const IArrayPoint3F * | getTrianglesCenters () const =0 | 
| virtual const IArrayPoint3F * | getTrianglesAngles () const =0 | 
| virtual const IArrayFloat * | getTrianglesAreas () const =0 | 
| virtual const IArrayPoint3F * | getEdgeLengths () const =0 | 
| Calculated data existence verification | |
| virtual bool | hasNormals () const =0 | 
| virtual bool | hasPointsNormals () const =0 | 
| virtual bool | hasTrianglesNormals () const =0 | 
| virtual bool | hasTrianglesCenters () const =0 | 
| virtual bool | hasTrianglesAngles () const =0 | 
| virtual bool | hasTrianglesAreas () const =0 | 
| virtual bool | hasEdgeLengths () const =0 | 
| Internal functions | |
| virtual void | setInternalData (void *p)=0 | 
| Set internal data (used for compatibility with existing code). Do not use this function.  More... | |
| virtual void * | getInternalData () const =0 | 
| Get internal data (used for compatibility with existing code). Do not use this function.  More... | |
Indexed triangle mesh.
Contains points (vertices) and triangles (triplets of vertex indices). It may contain flat (per-triangle) and smooth (per-vertex) normals, calculate various data (triangle areas, edge lengths, etc.) and store one's internal data.
| 
 | pure virtual | 
Create calculated data.
| requested_mode | Request to calculate information | 
| recreate_mode | Request to re-calculate information | 
| 
 | pure virtual | 
Clear unneeded data from mesh.
Doing so won't clear any dependent data.
| requested_mode | request to clear information (modes can be combined) | 
| 
 | pure virtual | 
Get calculated data flags.
| 
 | pure virtual | 
| 
 | pure virtual | 
Get internal data (used for compatibility with existing code). Do not use this function.
| 
 | pure virtual | 
Get points (vertices).
IArrayPoint3F is used to access individual points.
| 
 | pure virtual | 
Get vertex normals (smooth).
IArrayPoint3F is used to access individual normals.
| 
 | pure virtual | 
| 
 | pure virtual | 
Get triangles (triplets of vertex indices).
IArrayIndexTriplet is used to access individual triangles.
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
Get triangle normals (flat).
IArrayPoint3F is used to access individual normals.
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | pure virtual | 
Check whether the mesh is empty.
| 
 | pure virtual | 
Apply rotation.
| matrix | Rotation matrix. | 
| 
 | pure virtual | 
Scale.
| factor | Scale factor. | 
| 
 | pure virtual | 
Scale.
| factor | Scale factor. | 
| center | Scaling center coordinates. | 
| 
 | pure virtual | 
Set internal data (used for compatibility with existing code). Do not use this function.
| 
 | pure virtual | 
Set points (vertices).
| points | Pointer to the IArrayPoint3F array. | 
| 
 | pure virtual | 
Set vertex normals (smooth).
| normals | Pointer to the IArrayPoint3F array. | 
| 
 | pure virtual | 
Set triangles (triplets of vertex indices).
| triangles | Pointer to the IArrayIndexTriplet array. | 
| 
 | pure virtual | 
Set triangle normals (flat).
| normals | Pointer to the IArrayPoint3F array. | 
| 
 | pure virtual | 
Apply full transformation (motion / rotation / scale).
| matrix | Transformation matrix. | 
| 
 | pure virtual | 
Apply translation.
| direction | Direction vector. | 
 1.8.9.1
 1.8.9.1