13 #ifndef SPATIUMLIB_GEOM3D_GEOMETRY_H 14 #define SPATIUMLIB_GEOM3D_GEOMETRY_H 55 Point3 &intersection)
const = 0;
61 #endif // SPATIUMLIB_GEOM3D_GEOMETRY_H Vector in 3D space.
Definition: Vector3.h:25
virtual double distanceTo(const Point3 &point) const =0
Compute Euclidean distance to point.
Point in 3D Cartesian space as homogeneous coordinates.
Definition: Point3.h:27
Abstract Geometry class.
Definition: Geometry.h:29
virtual Point3 projectPoint(const Point3 &point) const =0
Project point onto geometry.
virtual bool intersectLine(const Point3 &origin, const Vector3 &direction, Point3 &intersection) const =0
Intersect line with geometry.
virtual ~Geometry()=default