52 #define GT_TEPS 1.e-16 64 Vertex(
double x = 0,
double y = 0) : coords(2) {
97 double computeVolume()
const;
98 int testPoint(
double x,
double y)
const;
99 double pointDistance(
double x,
double y)
const;
110 std :: list< Vertex > :: const_iterator
iter;
129 if ( iter == ptr->
vertices.end() ) {
147 std :: list< Vertex > :: const_iterator
iter;
158 if ( iter == ptr->
vertices.end() ) {
168 if ( iter == ptr->
vertices.end() ) {
171 * p1 = iter.operator->( );
218 node *createNode(
double x,
double y,
node *next,
node *prev,
node *nextPoly,
219 node *neighbor,
nodeStatus st,
int entry,
int visited,
double alpha);
224 void remove(
node *n);
225 double dist(
double x1,
double y1,
double x2,
double y2);
228 double *alpha_p,
double *alpha_q,
double *xint,
double *yint);
230 int testIfCoincident(
node *p1,
node *p2,
node *q1,
node *q2,
double *alpha_1,
double *alpha_2);
231 int testPoint(
node *poly,
double x,
double y)
const;
236 int vertex2IntersectionVertex(
node *v,
node *l1,
node *l2);
237 void testNewIntersectionVertexEdgeCollapse(
node *v,
node *l1,
node *l2);
238 bool testCollapsedEdge(
node *p1,
node *p2);
239 void merge2vertex(
node *v1,
node *v2);
241 void printYourself();
252 GT_Exception(
const char *file,
int line) : msg(NULL), file(file), line(line) { }
253 GT_Exception(
const char *msg,
const char *file,
int line) : msg(msg), file(file), line(line) { }
259 #define THROW_GT_EXCEPTION() throw GT_Exception(__FILE__, __LINE__); 260 #define THROW_GT_EXCEPTIONM(m) throw GT_Exception(m, __FILE__, __LINE__); 262 #endif // geotoolbox_h std::list< Vertex >::const_iterator iter
std::list< Vertex >::const_iterator iter
int giveNext(const Vertex **p1)
Vertex(const Vertex &src)
const FloatArray * getCoords() const
GT_Exception(const char *file, int line)
GT_Exception(const char *msg, const char *file, int line)
Vertex(double x=0, double y=0)
Class representing the special graph constructed from two polygons that is used to perform boolean op...
PolygonEdgeIterator(const Polygon *p)
Class representing vector of real numbers.
PolygonVertexIterator(const Polygon *p)
Class representing 2D polygon.
void setCoords(double x, double y)
Class representing vertex.
std::list< Vertex > vertices
#define OOFEG_DEBUG_LAYER
the oofem namespace is to define a context or scope in which all oofem names are defined.
void init(const Polygon *p)
int giveNext(Vertex &p1, Vertex &p2)