// 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(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);