10 // All methods are class methods for this class
11 static double ParameterOfLineAndPoint(Point, Point, Point);
12 static double DistanceToLineFromPoint(Point, Point, Point);
13 static Point MirrorPointAroundLine(Point, Point, Point);
14 static Point RotatePointAroundPoint(Point, Point, double);
15 static double Determinant(Point, Point);
16 static void Intersects(Object *, Object *);
17 static void CheckLineToLineIntersection(Object *, Object *);
18 static void CheckCircleToCircleIntersection(Object *, Object *);
19 static void CheckLineToCircleIntersection(Object *, Object *);
20 static void FindAnglesForSides(double s1, double s2, double s3, double * a1, double * a2, double * a3);
21 static Point GetPointForParameter(Object *, double);
22 static Point Midpoint(Line *);
23 static void FindTangents(Object *, Point);
24 static void FindTangents(Object *, Object *);
25 static Point NearestTo(Point, Point, Point);
26 static Vector GetNormalOfPointAndLine(Point, Line *);
27 static Circle FindCircleForThreePoints(Point, Point, Point);
28 static double Determinant3x3(double, double, double, double, double, double, double, double, double);
29 static Arc Unpack(Point, Point, double);
32 #endif // __GEOMETRY_H__