void Segment2D::eval(Real t, Point2D& out) const { out = a; out.madd(b-a,t); }
void Line2D::eval(Real t, Point2D& out) const { out = source; out.madd(direction,t); }