00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef GEOS_TRIANGULATE_QUADEDGE_TRIANGLEPREDICATE_H
00020 #define GEOS_TRIANGULATE_QUADEDGE_TRIANGLEPREDICATE_H
00021
00022 namespace geos {
00023 namespace geom {
00024
00025 class Coordinate;
00026
00041 class TrianglePredicate
00042 {
00043 public:
00056 static bool isInCircleNonRobust(
00057 const Coordinate &a, const Coordinate &b, const Coordinate &c,
00058 const Coordinate &p);
00059
00077 static bool isInCircleNormalized(
00078 const Coordinate &a, const Coordinate &b, const Coordinate &c,
00079 const Coordinate &p);
00080
00081 private:
00090 static double triArea(const Coordinate &a,
00091 const Coordinate &b, const Coordinate &c);
00092
00093 public:
00105 static bool isInCircleRobust(
00106 const Coordinate &a, const Coordinate &b, const Coordinate &c,
00107 const Coordinate &p);
00108 } ;
00109
00110 }
00111 }
00112
00113 #endif //GEOS_TRIANGULATE_QUADEDGE_TRIANGLEPREDICATE_H
00114