Geom Software - C++ Programming and Geometry Libraries
WOF Documentation pages v1.13
GEOM_WOF Namespace Reference

Classes

class  Point3
 3D Point More...
 
class  TimerC
 Timer class. More...
 
class  Vector3
 3D Vector More...
 
class  WofLicenseException
 License-Exception. More...
 
struct  WofBugException
 Bug-Exception. More...
 
class  ProgressBase
 Base class for progress subscribers. More...
 
class  Mesh
 3D Mesh class More...
 

Typedefs

typedef std::shared_ptr< MeshMeshPtr
 

Enumerations

enum  FileType {
  FT_STL , FT_PLY , FT_XYZ , FT_BIN ,
  FT_LIST , FT_UNKNOWN
}
 Filetype. More...
 

Functions

std::ostream & operator<< (std::ostream &stream, const Point3 &pnt)
 
std::istream & operator>> (std::istream &stream, Point3 &pnt)
 
double sqDistance (const Point3 &p0, const Point3 &p1)
 Get the squared distance between two points.
 
double sqDistance (const Point3 *p0, const Point3 *p1)
 Get the squared distance between two points.
 
double distance (const Point3 &p0, const Point3 &p1)
 Get the squared distance between two points.
 
Point3 center (const Point3 &p0, const Point3 &p1)
 Midpoint of p0 and p1.
 
std::ostream & operator<< (std::ostream &stream, const Vector3 &vec)
 
Vector3 crossProduct (const Vector3 &vec0, const Vector3 &vec1)
 Cross product.
 
Vector3 normalize (const Vector3 &other)
 Normalize.
 
Vector3 operator- (const Vector3 &in)
 
Vector3 operator* (double d, const Vector3 &vec)
 
Vector3 operator+ (const Vector3 &vec0, const Vector3 &vec1)
 
Vector3 operator- (const Vector3 &vec0, const Vector3 &vec1)
 
int getLicenseState ()
 Check the license state. More...
 
void printLicense ()
 Print license details.
 
bool isPure ()
 Check if pure or lm build.
 
bool activateWof (const char *key, bool bSystemWide)
 Activate WOF license. More...
 
bool deactivateWof ()
 Deactivate WOF license. More...
 
bool extendTrial (const char *key)
 Extend Trial. More...
 
void printVersion ()
 Print version number. More...
 
void getVersion (int &versionMajor, int &versionMinor)
 Get version numbers. More...
 
bool isRelease ()
 Check if the present binary is a Release or Debug build. More...
 
MeshPtr melt (std::vector< Point3 > &vInputCorners, double avgLength, double featureThresh=15.0)
 Remesh (melt) a triangle mesh. More...
 
MeshPtr reconstruct_auto (std::vector< Point3 > &vPoints, bool bAllowSmoothing, double sfactor=2.0, int numGrowSteps=10)
 Reconstruct with an automatic spacing value. More...
 
MeshPtr reconstruct_abs (std::vector< Point3 > &vPoints, bool bAllowSmoothing, double spacingAbs, int numGrowSteps=10)
 Reconstruct with an absolute spacing value. More...
 
void toCloud (std::vector< Point3 > &vCornersIn, double length, double featureThresh, std::vector< Point3 > &vCloudOut)
 Mesh-to-Cloud. More...
 
void edgeFlips (MeshPtr pMesh)
 Flip edges. More...
 
void edgeFlipsSimA (MeshPtr pMesh)
 Flip edges - simulated annealing. More...
 
void laplacianSmoothing (MeshPtr pMesh, int numIterations)
 Laplacian smoothing. More...
 
int reduce (MeshPtr pMesh, double targetLen=DBL_MAX, double maxDev=2.0)
 Reduce. More...
 
void subscribe (ProgressBase *pProgressBase)
 Subscribe to progress updates. More...
 
FileType getFileType (const std::string &filename)
 Get File Type. More...
 
bool writePoints_ASCII (const char *filename, const std::vector< Point3 > &vPoints)
 Write points to an ASCII file. More...
 
bool writePoints_BIN (const char *filename, std::vector< Point3 > &vPoints)
 Write points to a binary file. More...
 
bool readPly (const char *filename, bool bReadPoints, std::vector< Point3 > &vPointsOut)
 Write points to a *.ply file. More...
 
bool writePointsPly (const std::string &filename, std::vector< GEOM_WOF::Point3 > &vPoints, bool bASCII)
 
bool readPoints_ASCII (const char *filename, std::vector< Point3 > &vPoints)
 Read points from an ASCII file. More...
 
bool readPoints_BIN (const char *filename, std::vector< Point3 > &vPointsOut)
 Read points from a binary file. More...
 
bool readSTL_ASCII (const char *filename, std::vector< Point3 > &vTriangleCorners)
 Read a mesh from ASCII STL. More...
 
bool readPoints_auto (std::string &inFilename, std::vector< Point3 > &vPoints)
 Read points from a file (automatic detection) More...
 
bool writePoints_auto (std::string &outFilename, std::vector< Point3 > &vPoints, bool bASCII)
 Write points to a file. More...
 
bool writeMesh_auto (const std::string &filename, std::shared_ptr< Mesh > pMesh, bool bASCII)
 Write mesh to a file. More...
 

Detailed Description

Namespace GEOM_WOF

Namespace of the WOF library

Typedef Documentation

◆ MeshPtr

typedef std::shared_ptr<Mesh> GEOM_WOF::MeshPtr

MeshPtr is a shared pointer to Mesh

Function Documentation

◆ subscribe()

void GEOM_WOF::subscribe ( ProgressBase pProgressBase)

You can provide your own progress receiver class (e.g. progress bar) deriving from ProgressBase. Whenever the progress state changes its update method ProgressBase::update() will be called.