24 #include "UserPredicates.h" 26 #if GEOM_PSEUDO3D==GEOM_TRUE 27 namespace GEOM_FADE25D {
28 #elif GEOM_PSEUDO3D==GEOM_FALSE 31 #error GEOM_PSEUDO3D is not defined 36 class ConstraintGraph2;
53 Zone2(Dt2* pDt_,ZoneLocation zoneLoc_);
57 Zone2(Dt2* pDt_,ZoneLocation zoneLoc_,
const std::vector<ConstraintGraph2*>& vConstraintGraphs_);
59 Zone2(Dt2* pDt_,
const std::vector<ConstraintGraph2*>& vConstraintGraphs_,ZoneLocation zoneLoc_,std::vector<Point2>& vStartPoints);
71 ZoneLocation getZoneLocation()
const;
85 Zone2* convertToBoundedZone();
94 void show(
const std::string& postscriptFilename,
bool bShowFull,
bool bWithConstraints)
const;
103 void show(
Visualizer2* pVisualizer,
bool bShowFull,
bool bWithConstraints)
const;
105 #if GEOM_PSEUDO3D==GEOM_TRUE 112 void showGeomview(
const std::string& filename,
const std::string& color)
const;
119 void showGeomview(Visualizer3* pVis,
const std::string& color)
const;
122 #if GEOM_PSEUDO3D==GEOM_TRUE 125 void analyzeAngles();
129 void slopeValleyRidgeOptimization();
175 void optimizeValleysAndRidges(
double tolerance2D,
double lowerThreshold25D);
200 void unifyGrid(
double tolerance);
203 bool assignDt2(Dt2* pDt_);
216 void getTriangles(std::vector<Triangle2*>& vTriangles_)
const;
221 void getVertices(std::vector<Point2*>& vVertices_)
const;
228 void statistics(
const std::string& s)
const;
241 size_t getNumberOfTriangles()
const;
247 void getConstraintGraphs(std::vector<ConstraintGraph2*>& vConstraintGraphs_)
const;
250 Dt2* getDelaunayTriangulation()
const;
256 size_t numberOfConstraintGraphs()
const;
260 void debug(std::string name=
"");
264 Bbox2 getBoundingBox()
const;
268 void getBoundaryEdges(std::vector<Edge2>& vEdges)
const;
272 void getBoundarySegments(std::vector<Segment2>& vSegments)
const;
286 double getArea2D()
const;
289 #if GEOM_PSEUDO3D==GEOM_TRUE 297 double getArea25D()
const;
303 void getBorderEdges(std::vector<Edge2>& vBorderEdgesOut)
const;
310 void getTriangles_RESULT(std::vector<Triangle2*>& vTriangles)
const;
312 void initWorkspace(
bool bInside,std::vector<Triangle2*>& vWorkspace)
const;
314 void bfsFromWorkspace(std::vector<Triangle2*>& vWorkspace,std::vector<Triangle2*>& vTriangles)
const;
316 Zone2* ctbz_treatCC(std::vector<Triangle2*>& vOneCC);
318 void optimize(std::vector<Triangle2*>& vT,std::vector<Triangle2*>& vChangedT);
321 ZoneLocation zoneLoc;
337 #pragma warning(push) 338 #pragma warning(disable:4251) 340 std::vector<ConstraintGraph2*> vConstraintGraphs;
341 std::vector<Point2> vStartPoints;
342 std::vector<Zone2*> vInputZones;
Visualizer2 is a general Postscript writer. It draws the objects Point2, Segment2, Triangle2, Circle2 and Label.
Definition: Visualizer2.h:51
Zone2 is an exactly defined area of a triangulation.
Definition: Zone2.h:49
User defined predicate.
Definition: UserPredicates.h:36
ConstraintGraph2 is a set of Constraint Edges to be enforced. These are ConstraintSegment2 objects...
Definition: ConstraintGraph2.h:49
Bbox2 is an axis aligned bounding box.
Definition: Bbox2.h:36