27 #if GEOM_PSEUDO3D==GEOM_TRUE
28 namespace GEOM_FADE25D {
29 #elif GEOM_PSEUDO3D==GEOM_FALSE
30 namespace GEOM_FADE2D {
32 #error GEOM_PSEUDO3D is not defined
48 void simplifyPolygon(
const std::vector<Point2>& vIn,
double errBound,std::vector<Point2>& vOut);
88 const std::vector<Point2>& vOrgPoints,
89 std::vector<Point2>& vOffsetPoints,
90 double maxCorrectionFactor=1.0
100 void untwistPolygon(std::vector<Segment2>& vPolygon,std::vector<std::vector<Segment2> >& vvPolygon);
157 std::vector<Edge2>& vOutsidePolygon,
158 std::vector<std::vector<Edge2> >& vHolePolygons
180 void pointsToPolyline(std::vector<Point2>& vInPoints,
bool bClose,std::vector<Segment2>& vOutSegments);
195 #if GEOM_PSEUDO3D==GEOM_TRUE
217 #if GEOM_PSEUDO3D==GEOM_TRUE
255 void getDirectedEdges(
const std::vector<Triangle2*>& vT,std::vector<Edge2>& vDirectedEdgesOut);
276 std::vector<std::vector<Triangle2*> >& vvT
304 bool fillHole(
const std::vector<std::pair<Segment2,Vector2> >& vPolygonSegments,
307 std::vector<Point2>& vCornersOut
313 #if GEOM_PSEUDO3D==GEOM_TRUE
333 bool fillHole(
const std::vector<Point2>& vMeshCorners,
334 const std::vector<Segment2>& vPolygonSegments,
337 std::vector<Point2>& vCornersOut
359 const std::vector<Edge2>& vPolygonEdges,
362 std::vector<Point2>& vCornersOut
398 const std::vector<Edge2>& vEdgesIn,
399 std::vector<std::vector<Edge2> >& vvPolygonsOut,
400 std::vector<Edge2>& vRemainingOut
412 void getBorders(
const std::vector<Triangle2*>& vT,std::vector<Segment2>& vBorderSegmentsOut);
459 const char* getString(
const Orientation2 ori);
564 bool readXY(
const char* filename,std::vector<Point2>& vPointsOut);
566 #if GEOM_PSEUDO3D==GEOM_TRUE
574 bool readXYZ(
const char* filename,std::vector<Point2>& vPointsOut);
595 bool readPointsPLY(
const char* filename,
bool bUniquePoints,std::vector<Point2>& vPoints,std::vector<VtxColor>* pVertexColors=NULL);
611 bool readPointsPLY(std::istream& is,
bool bUniquePoints,std::vector<Point2>& vPoints,std::vector<VtxColor>* pVertexColors=NULL);
635 bool writePointsPLY(
const char* filename,std::vector<Point2*>& vPoints,
bool bASCII);
701 bool readPointsBIN(
const char* filename, std::vector<Point2>& vPointsIn,
bool bWithHeader=
true);
Point.
Definition: Point2.h:53
Vector.
Definition: Vector2.h:42
void getSortedBoundaryPolygons(std::vector< Triangle2 * > &vConnectedComponent, std::vector< Edge2 > &vOutsidePolygon, std::vector< std::vector< Edge2 > > &vHolePolygons)
Get sorted boundary polygons.
void untwistPolygon(std::vector< Segment2 > &vPolygon, std::vector< std::vector< Segment2 > > &vvPolygon)
Repair a selfintersecting polygon.
int setGlobalNumCPU(int numCPU)
Set the global number of threads to be used.
void offsetPolygonPoints(double offset, const std::vector< Point2 > &vOrgPoints, std::vector< Point2 > &vOffsetPoints, double maxCorrectionFactor=1.0)
**
void simplifyPolygon(const std::vector< Point2 > &vIn, double errBound, std::vector< Point2 > &vOut)
Simplify a polygon.
int getGlobalNumCPU()
Get the global number of threads to be used.
int getMajorVersionNumber()
Get the major version number.
const char * getFade2DVersion()
Get the Fade2D version string.
int getMinorVersionNumber()
Get the minor version number.
int getRevisionNumber()
Get the revision version number.
bool isRelease()
Check if a RELEASE or a DEBUG version is used.
bool readPointsBIN(const char *filename, std::vector< Point2 > &vPointsIn, bool bWithHeader=true)
Read points from a binary file.
bool readXY(const char *filename, std::vector< Point2 > &vPointsOut)
Read (x y) points.
bool readXYZ(const char *filename, std::vector< Point2 > &vPointsOut)
Read (x y z) points.
bool readSegmentsBIN(const char *filename, std::vector< Segment2 > &vSegmentsOut)
Read segments from a binary file.
bool readPointsPLY(std::istream &is, bool bUniquePoints, std::vector< Point2 > &vPoints, std::vector< VtxColor > *pVertexColors=NULL)
Read points from a *.PLY file.
bool writeSegmentsBIN(const char *filename, std::vector< Segment2 > &vSegmentsIn)
Write segments to a binary file.
bool writePointsPLY(const char *filename, std::vector< Point2 * > &vPoints, bool bASCII)
Write points to a *.PLY file.
bool writePointsBIN(const char *filename, std::vector< Point2 * > &vPoints)
Write points to a binary file.
bool writePointsASCII(const char *filename, const std::vector< Point2 > &vPointsIn)
Write points to an ASCII file.