X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fgeometry.h;h=58252b3d1ac6d6291fb590d3d198e1768c2bb8d5;hb=5d8c9e52606315fbfe857f2715b8f051b4f97491;hp=865dc6d0f6b36ed3a6050bcdde45d3c7e0912d78;hpb=4a979ddae8aa6b3556f24e8b961f7787c4b40cbe;p=architektonas diff --git a/src/geometry.h b/src/geometry.h index 865dc6d..58252b3 100644 --- a/src/geometry.h +++ b/src/geometry.h @@ -8,19 +8,21 @@ class Geometry { public: // All methods are class methods for this class -//unused static Point IntersectionOfLineAndLine(Point, Point, Point, Point); static double ParameterOfLineAndPoint(Point, Point, Point); + static double DistanceToLineFromPoint(Point, Point, Point); static Point MirrorPointAroundLine(Point, Point, Point); static Point RotatePointAroundPoint(Point, Point, double); static double Determinant(Point, Point); - static int Intersects(Object *, Object *, double * tp = 0, double * up = 0, double * vp = 0, double * wp = 0); - static int CheckLineToLineIntersection(Object *, Object *, double *, double *); -// static int Intersects(Line *, Line *, double * tp = 0, double * up = 0); -// static int Intersects(Line *, Dimension *, double * tp = 0, double * up = 0); -// static int Intersects(Line * l, Circle * c, double * tp = 0, double * up = 0, double * vp = 0, double * wp = 0); -// static int Intersects(Circle * c1, Circle * c2, double * tp = 0, double * up = 0, double * vp = 0, double * wp = 0, Point * p1 = 0, Point * p2 = 0); + static void Intersects(Object *, Object *); + static void CheckLineToLineIntersection(Object *, Object *); + static void CheckCircleToCircleIntersection(Object *, Object *); + static void CheckLineToCircleIntersection(Object *, Object *); static void FindAnglesForSides(double s1, double s2, double s3, double * a1, double * a2, double * a3); + static Point GetPointForParameter(Object *, double); + static Point Midpoint(Line *); + static void FindTangents(Object *, Point); + static void FindTangents(Object *, Object *); + static Point NearestTo(Point, Point, Point); }; #endif // __GEOMETRY_H__ -