All Classes and Interfaces

Class
Description
Generation of Bézier curves.
Bounds<B extends Bounds<B,P,D>,P extends Point<P>,D extends Drawable<P>>
Bounds is the generic tagging interface that indicates the bounds for an object, where the simplest implementation is minX, minY, maxX and maxY for 2D, and minX, minY, minZ and maxX, maxY and maxZ for 3D.
A Bounds2d stores the rectangular 2D bounds of a 2d object, or a collection of 2d objects.
Bounds3d is the generic class for the 3D extent of an object.
Approximate a clothoid with a PolyLine3d.
ConvexHull.java.
Directed<D extends Directed<D>>
Directed is the interface to specify a Direction (a vector pointing in a direction without a length).
Drawable<P extends Point<P>>
Drawable is an interface to indicate zero or more points can be retrieved to draw the object.
Drawable2d is the interface that all drawable objects that use 2D coordinates must implement.
Drawable3d is the Interface that all drawable objects that use 3D coordinates must implement.
DrawRuntimeException is the root exception for drawing exceptions that do not have to be specified.
LineSegment<P extends Point<P>,R extends Ray<R,P>>
LineSegment is the interface for a line segment bound by 2 end points.
LineSegment2d is a line segment bound by 2 end points in 2D-space.
LineSegment3d is a line segment bound by 2 end points in 3D-space.
Oriented<O extends Oriented<O>>
Oriented is an interface to indicate an object has a direction.
Oriented2d is an interface to indicate an object has a direction in two dimensions.
Oriented3d is an interface to indicate an object has a direction in three dimensions.
The OrientedPoint2d is a point in a 2-dimensional space with an orientation vector, which is specified in terms of its counter-clockwise rotation around the point in radians.
A OrientedPoint3d is an immutable point with an x, y, and z coordinate, stored with double precision plus a 3d orientation.
Point<P extends Point<P>>
Point is the interface for the Point2d and Point3d implementations, standardizing as many of the methods as possible.
A Point2d is an immutable Point with an x and y coordinate, stored with double precision.
A Point3d is an immutable point with an x, y, and z coordinate, stored with double precision.
Polygon2d.java.
Polygon3d.java.
PolyLine<L extends PolyLine<L,P,R,LS>,P extends Point<P>,R extends Ray<R,P>,LS extends LineSegment<P,R>>
PolyLine is the interface for PolyLine2d and PolyLine3d implementations.
Interface for transition function.
Implementation of PolyLine for 2D space.
Implementation of PolyLine for 3D space.
Project<P extends Point<P>>
Project.java.
Ray<R extends Ray<R,P>,P extends Point<P>>
A Ray is a half-line; it has one end point with non-infinite coordinates; the other end point is infinitely far away.
Ray2d is a half-line; it has one end point with non-infinite coordinates; the other end point is infinitely far away.
Ray3d is a half-line; it has one end point with non-infinite coordinates; the other end point is infinitely far away.
Surface3d.java.
Transform2d contains a MUTABLE transformation object that can transform points (x,y) based on e.g, rotation and translation.
Transform3d contains a MUTABLE transformation object that can transform points (x,y,z) based on e.g, rotation and translation.
Volume3d.java.