19 namespace artec {
namespace sdk {
namespace base
103 virtual unsigned int calculate(
unsigned int requested_mode,
unsigned int recreate_mode =
CM_None) = 0;
141 virtual void scale(
float factor) = 0;
148 virtual void scale(
float factor,
const Point3F & center) = 0;
161 virtual bool isEmpty()
const = 0;
virtual void setPointsNormals(IArrayPoint3F *normals)=0
Set vertex normals (smooth).
virtual void translate(const Point3F &direction)=0
Apply translation.
virtual void setTriangles(IArrayIndexTriplet *triangles)=0
Set triangles (triplets of vertex indices).
virtual void setTrianglesNormals(IArrayPoint3F *normals)=0
Set triangle normals (flat).
virtual bool hasPointsNormals() const =0
Interface to retrieve the object's revision history It can be used to create change history...
Interface for array of float data that supports smart reference counting.
virtual void setInternalData(void *p)=0
Set internal data (used for compatibility with existing code). Do not use this function.
virtual void scale(float factor)=0
Scale.
virtual IArrayIndexTriplet * getTriangles() const =0
Get triangles (triplets of vertex indices).
virtual bool hasTrianglesNormals() const =0
virtual Triangle getTriangle(int i) const =0
Return point coordinates for i-th triangle.
virtual bool hasTrianglesAreas() const =0
virtual bool hasTrianglesCenters() const =0
virtual const IArrayPoint3F * getTrianglesCenters() const =0
virtual IArrayPoint3F * getPoints() const =0
Get points (vertices).
virtual unsigned int calculate(unsigned int requested_mode, unsigned int recreate_mode=CM_None)=0
Create calculated data.
virtual unsigned int getCalculated()=0
Get calculated data flags.
virtual void setPoints(IArrayPoint3F *points)=0
Set points (vertices).
Triangle defined by the three points
virtual const IArrayPoint3F * getTrianglesAngles() const =0
virtual void transform(const Matrix4x4D &matrix)=0
Apply full transformation (motion / rotation / scale).
virtual void clear(int requested_mode=CM_ClearEverything)=0
Clear unneeded data from mesh.
virtual IArrayPoint3F * getTrianglesNormals() const =0
Get triangle normals (flat).
virtual void * getInternalData() const =0
Get internal data (used for compatibility with existing code). Do not use this function.
virtual IArrayPoint3F * getPointsNormals() const =0
Get vertex normals (smooth).
virtual void rotate(const Matrix4x4D &matrix)=0
Apply rotation.
virtual bool hasEdgeLengths() const =0
virtual const IArrayFloat * getTrianglesAreas() const =0
virtual const IArrayPoint3F * getEdgeLengths() const =0
virtual bool hasTrianglesAngles() const =0
Interface for array of point positions (vertices and normal vectors); F for float type...
Interface for array of triangles (relationship between vertices).
virtual bool isEmpty() const =0
Check whether the mesh is empty.
virtual bool hasNormals() const =0