19#ifndef FLOWENGINESTEREOTEXTUREDMESH_H
20#define FLOWENGINESTEREOTEXTUREDMESH_H
30 class StereoMeshInterface;
112 int &outHeight )
const = 0;
#define FLOWENGINE_FACTORY
Definition: CommonDef.h:32
Interface for all FlowEngine objects with an editable name.
Definition: NamedObjectInterface.h:30
Stores a simple stereo mesh object for the FlowEngine interface.
Definition: StereoMeshInterface.h:38
Stores a simple textured mesh object for the FlowEngine interface.
Definition: StereoTexturedMeshInterface.h:36
virtual FLE_DLL Result getInputMeshIndexes(Buffer< Index > outIndexes) const =0
virtual FLE_DLL ~StereoTexturedMeshInterface()=default
Default virtual destructor.
virtual FLE_DLL Result extractStereoMesh(StereoMeshInterface &outStereoMesh, Buffer< Index > inOutTextureToMeshVertexMapping) const =0
virtual FLE_DLL Result getTextureData(Index texIdx, Buffer< PointColor32 > outData) const =0
virtual FLE_DLL Index getTriangleCount() const =0
virtual FLE_DLL Result setTriangle(Index idx, const Triangle &triangle)=0
virtual FLE_DLL Index getTextureCount() const =0
virtual FLE_DLL Result removePoints(ConstBuffer< Index > indexes)=0
virtual FLE_DLL Result copyFrom(const StereoTexturedMeshInterface &inStereoTexturedMesh)=0
virtual FLE_DLL Result getTriangle(Index idx, Triangle &outTriangle) const =0
virtual FLE_DLL Result setPointTexCoords(Index idx, const TexCoords &texCoords)=0
virtual FLE_DLL Result loadFromObj(ConstStringBuffer filePath, bool loadTextures)=0
virtual FLE_DLL Result getPointTexCoords(Index idx, TexCoords &outTexCoord) const =0
virtual FLE_DLL Result transform(ConstBuffer< double > transform)=0
virtual FLE_DLL Result extractStereoMesh(StereoMeshInterface &outStereoMesh, bool unifyDuplicatedVertices=true) const =0
virtual FLE_DLL Result getPointTexCoordData(Buffer< TexCoords > outTexCoordData, bool flipV=false) const =0
virtual FLE_DLL Result getPointPosition(Index idx, Point3 &outPosition) const =0
virtual FLE_DLL Result setPointPosition(Index idx, const Point3 &position)=0
virtual FLE_DLL Result getTextureDimensions(Index texIdx, int &outWidth, int &outHeight) const =0
virtual FLE_DLL Index getPointCount() const =0
virtual FLE_DLL Result saveTextureToFile(Index texIdx, ConstStringBuffer filePath, Size textureSize=0, Size channelBitDepth=0) const =0
virtual FLE_DLL Result removePoint(Index index)=0
virtual FLE_DLL Result saveToObj(ConstStringBuffer filePath, bool saveTextures=true, ConstStringBuffer textureFileFormat="png") const =0
Definition: BoundingBoxInterface.cpp:26
std::ptrdiff_t Index
Index type.
Definition: CommonDef.h:100
void DestroyStereoTexturedMesh(StereoTexturedMeshInterface *stereoTexturedMesh)
Definition: StereoTexturedMeshInterface.cpp:32
StereoTexturedMeshInterface * CreateStereoTexturedMesh()
Definition: StereoTexturedMeshInterface.cpp:27
std::size_t Size
Size type.
Definition: CommonDef.h:103
Result
Enumerates possible results generated by FlowEngine.
Definition: CommonDef.h:45
Holds a (mutable) non_owning pointer and a size Used to marshal memory buffers as arguments in a safe...
Definition: CommonDef.h:118
Specialization for a const buffer characters.
Definition: CommonDef.h:296
Holds a (non mutable) non_owning pointer and a count Used to marshal memory buffers as arguments in a...
Definition: CommonDef.h:191
a three dimensional point
Definition: CommonDef.h:375
a texture coordinate Holds a couple of floats representing texture coordinates
Definition: CommonDef.h:456
a triangle. Holds 3 indexes to points. Triangles are specified in counter-clockwise order
Definition: CommonDef.h:442