Artec 3D Scanning SDK  2.0
Public Member Functions | List of all members
artec::sdk::base::IFrameMesh Class Referenceabstract

Indexed triangle mesh with optional texture. More...

#include <artec/sdk/base/IFrameMesh.h>

+ Inheritance diagram for artec::sdk::base::IFrameMesh:

Public Member Functions

virtual bool isTextured () const =0
 Check the presence of texture. More...
 
virtual ErrorCode mapTexture (const Matrix3x4D &matrix)=0
 Map texture on the mesh. More...
 
- Public Member Functions inherited from artec::sdk::base::IMesh
virtual bool isEmpty () const =0
 Check whether the mesh is empty. More...
 
virtual IArrayPoint3FgetPoints () const =0
 Get points (vertices). More...
 
virtual void setPoints (IArrayPoint3F *points)=0
 Set points (vertices). More...
 
virtual IArrayIndexTripletgetTriangles () const =0
 Get triangles (triplets of vertex indices). More...
 
virtual void setTriangles (IArrayIndexTriplet *triangles)=0
 Set triangles (triplets of vertex indices). More...
 
virtual IArrayPoint3FgetPointsNormals () const =0
 Get vertex normals (smooth). More...
 
virtual void setPointsNormals (IArrayPoint3F *normals)=0
 Set vertex normals (smooth). More...
 
virtual IArrayPoint3FgetTrianglesNormals () 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...
 
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...
 
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 &center)=0
 Scale. More...
 
virtual const IArrayPoint3FgetTrianglesCenters () const =0
 
virtual const IArrayPoint3FgetTrianglesAngles () const =0
 
virtual const IArrayFloatgetTrianglesAreas () const =0
 
virtual const IArrayPoint3FgetEdgeLengths () const =0
 
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
 
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...
 
- 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...
 

Texture access functions

virtual IImagegetImage () const =0
 Get texture image. More...
 
virtual void setImage (IImage *image)=0
 Set texture image. More...
 

Texture coordinate access functions

virtual IArrayUVCoordinatesgetUVCoordinates () const =0
 Get texture coordinate array. More...
 
virtual void setUVCoordinates (IArrayUVCoordinates *coords)=0
 Set texture coordinate array. More...
 

Detailed Description

Indexed triangle mesh with optional texture.

Designed to store triangulated captured frame. It may contain only one texture. Note that the texture is applied through the operation of simple projection (unwrapping isn't possible).

Examples:
project-sample.cpp.

Definition at line 42 of file IFrameMesh.h.

Member Function Documentation

virtual IImage* artec::sdk::base::IFrameMesh::getImage ( ) const
pure virtual

Get texture image.

Returns
Pointer to the Image interface.
virtual IArrayUVCoordinates* artec::sdk::base::IFrameMesh::getUVCoordinates ( ) const
pure virtual

Get texture coordinate array.

Returns
Pointer to the texture coordinate array.
virtual bool artec::sdk::base::IFrameMesh::isTextured ( ) const
pure virtual

Check the presence of texture.

Returns
True if the texture is present.
virtual ErrorCode artec::sdk::base::IFrameMesh::mapTexture ( const Matrix3x4D matrix)
pure virtual

Map texture on the mesh.

Calculate texture coordinates through projection.

Parameters
matrixProjection (calibration) matrix.
virtual void artec::sdk::base::IFrameMesh::setImage ( IImage image)
pure virtual

Set texture image.

Parameters
imagePointer to the Image interface.
virtual void artec::sdk::base::IFrameMesh::setUVCoordinates ( IArrayUVCoordinates coords)
pure virtual

Set texture coordinate array.

Parameters
coordsPointer to the texture coordinate array.

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