# All Classes and Interfaces

Class

Description

2D affine transform for 64-bit floats.

2D affine transform for 64-bit floats.

The area contained inside 2D shapes

The area contained inside 2D shapes

Computes the area of intersection between two convex polygons.

Computes the area of intersection between two convex polygons.

Finds the average of a set of

`quaternions`

by using a method proposed in [1].Finds the average of a set of

`quaternions`

by using a method proposed in [1].Finds the average of a set of

`quaternions`

by using a modification of the
method proposed in [1].Finds the average of a set of

`quaternions`

by using a modification of the
method proposed in [1].An axis aligned box in 3D that is specified by two points, p0 and p1, the lower and upper extents of the box.

An axis aligned box in 3D that is specified by a point p=(x0,y0,z0), and its lengthX, lengthY, and lengthZ.

Describes a circle in 2D space using it's center and radius.

Describes a circle in 2D space using it's center and radius.

Functions related to finding the closest point(s) on one shape from another shape.

Functions related to finding the closest point(s) on one shape from another shape.

Functions related to finding the closest point(s) on one shape from another shape.

Functions related to finding the closest point(s) on one shape from another shape.

Finds the closest point on an ellipse to a point.

Finds the closest point on an ellipse to a point.

An interface where the closest point to a model is looked up.

Encodes and decodes

`Cylinder3D_F32`

into float[].Encodes and decodes

`Cylinder3D_F64`

into double[].Encodes and decodes

`PlaneGeneral3D_F32`

into float[].Encodes and decodes

`PlaneGeneral3D_F64`

into double[].Encodes and decodes

`Sphere3D_F32`

into float[].Encodes and decodes

`Sphere3D_F64`

into double[].A*x

^{2}+ B*x*y + C*y^{2}+ D*x + E*y + F=0A*x

^{2}+ B*x*y + C*y^{2}+ D*x + E*y + F=0Contains code for converting between different 3D coordinate systems

Contains code for converting between different 3D coordinate systems

Functions for converting between 32bit and 64bit structures

Provides functions to convert between different parameterizations of 3D rotation matrices.

Provides functions to convert between different parameterizations of 3D rotation matrices.

Functions for converting one type of geometric transform into another type.

Functions for converting one type of geometric transform into another type.

Computes the convex hull of a set of points using Andrew's monotone chain algorithm.

Computes the convex hull of a set of points using Andrew's monotone chain algorithm.

Finds the convex hull using Graham Scan.

Finds the convex hull using Graham Scan.

Computes a containment ellipse given a covariance

Computes a containment ellipse given a covariance

Modified version of the linked list to provide support for being cyclical.

Defines a cylinder in 3D space using a point and vector, which defines a line, and a radius around the line.

Specifies a Cylinder in 3D space which is bounded along the axis.

Specifies a Cylinder in 3D space which is bounded along the axis.

Computes the signed Euclidean distance between a cylinder and a set of points, see

`Distance3D_F32.distanceSigned(georegression.struct.shapes.Cylinder3D_F32, georegression.struct.point.Point3D_F32)`

.Computes the signed Euclidean distance between a cylinder and a set of points, see

`Distance3D_F64.distanceSigned(georegression.struct.shapes.Cylinder3D_F64, georegression.struct.point.Point3D_F64)`

.Jacobian of

`CylinderToPointSignedDistance_F32`

.Jacobian of

`CylinderToPointSignedDistance_F64`

.Functions related to finding the distance of one shape from another shape.

Functions related to finding the distance of one shape from another shape.

Distance of various shapes in 3D space

Distance of various shapes in 3D space

Computes the closest point and distance between a triangle in 3D and the closest point on a triangle.

In general quadratic form, an ellipse is described by 6-coefficients:

where [a,b,c,d,e,f] are the coefficients and [x,y] is the coordinate of a point on the ellipse.

`F(x,y) = a*x^2 + 2*b*x*y + c*y^2 + 2*d*x + 2*e*y + f = 0`

`a*c - b*b > 0`

where [a,b,c,d,e,f] are the coefficients and [x,y] is the coordinate of a point on the ellipse.

`F(x,y) = a*x^2 + 2*b*x*y + c*y^2 + 2*d*x + 2*e*y + f = 0`

`a*c - b*b > 0`

where [a,b,c,d,e,f] are the coefficients and [x,y] is the coordinate of a point on the ellipse.

An ellipse described using its center, semi-axes, and orientation.

(x'*cos(phi) + y'*sin(phi))^2/a^2 + (-x'*sin(phi) + y'*cos(phi))^2/b_2 = 1

x' = x-x_0, y' = y-y_0

where (x_0,y_0) is the center, (a,b) are major and minor axises, and phi is it's orientation.

(x'*cos(phi) + y'*sin(phi))^2/a^2 + (-x'*sin(phi) + y'*cos(phi))^2/b_2 = 1

x' = x-x_0, y' = y-y_0

where (x_0,y_0) is the center, (a,b) are major and minor axises, and phi is it's orientation.

(x'*cos(phi) + y'*sin(phi))^2/a^2 + (-x'*sin(phi) + y'*cos(phi))^2/b_2 = 1

x' = x-x_0, y' = y-y_0

where (x_0,y_0) is the center, (a,b) are major and minor axises, and phi is it's orientation.

Enumerated types for each possible Euler coordinate composed of three rotations.

Specialized implementation for rigid body 2D points

Specialized implementation for rigid body 2D points

Specialized implementation for rigid body 3D points

Specialized implementation for rigid body 3D points

Fit's a parabola to a set of points by finding the null space of A.

Fit's a parabola to a set of points by finding the null space of A.

Fit's a parabola to a set of points by finding the null space of A

^{T}*A.Fit's a parabola to a set of points by finding the null space of A

^{T}*A.Interface for Convex Hull algorithms.

Interface for Convex Hull algorithms.

Fits different types of curves to points

Fits different types of curves to points

`UnconstrainedLeastSquares`

fitting of 3D points to a `cylinder`

.`UnconstrainedLeastSquares`

fitting of 3D points to a `cylinder`

.
Fits an ellipse to a set of points in "closed form" by minimizing algebraic least-squares error.

Fits an ellipse to a set of points in "closed form" by minimizing algebraic least-squares error.

Fits an ellipse to a set of points in "closed form" by minimizing algebraic least-squares error.

Fits an ellipse to a set of points in "closed form" by minimizing algebraic least-squares error.

Finds the best file line given a set of observations.

Finds the best file line given a set of observations.

Fits a

`LineParametric2D_F32`

to a set of points by minimizing algebraic error.Fits a

`LineParametric2D_F64`

to a set of points by minimizing algebraic error.Various functions for fitting planes in 3D to point clouds.

Various functions for fitting planes in 3D to point clouds.

Functions related to fitting polygons to different inputs

Functions related to fitting polygons to different inputs

Functions related to fitting polygons to different inputs

Functions related to fitting polygons to different inputs

Functions related to fitting polygons to different inputs

Fits a polynomial using a

`LinearSolverDense`

and the equation A*X=B.Fits a polynomial using a

`LinearSolverDense`

and the equation A*X=B.General interface for fitting a shape to a set of points.

General interface for fitting a shape to a set of points.

General interface for fitting a shape to a set of points.

Functions related to fitting

`SpecialEuclidean`

transform to a set
of corresponding points.Functions related to fitting

`SpecialEuclidean`

transform to a set
of corresponding points.`UnconstrainedLeastSquares`

fitting of 3D points to a sphere.`UnconstrainedLeastSquares`

fitting of 3D points to a sphere.Given a list of two point and surface normal pairs, first a cylinder using an analytic equation.

Given a list of two point and surface normal pairs, first a cylinder using an analytic equation.

Estimates a

`PlaneGeneral3D_F32`

from `PlaneNormal3D_F32`

.Estimates a

`PlaneGeneral3D_F64`

from `PlaneNormal3D_F64`

.Math operations that can be applied to geometric primitives.

Math operations that can be applied to geometric primitives.

Automatically generated file containing build version information.

Describes geometric objects that are composed of N double values.

Describes geometric objects that are composed of N float values.

Describes geometric objects that are composed of N double values.

Integer tuple class

Generic Tuple for geometric objects that store (x,y)

Generic Tuple for geometric objects that store (x,y)

Generic Tuple for geometric objects that store (x,y,z)

Generic Tuple for geometric objects that store (x,y,z)

Generic Tuple for geometric objects that store (x,y,z,w)

Generic Tuple for geometric objects that store (x,y,z,w)

Extends Equations with support for geometric data types

Constants used throughout the library.

Describes a homography transform in 2D.

Describes a homography transform in 2D.

Applies homography transform to 2D points.

Applies homography transform to 2D points.

Performs linear interpolation between two rigid body transforms

Performs linear interpolation between two rigid body transforms

Linear interpolation between two

`Se3_F32`

transforms.
Linear interpolation between two

`Se3_F64`

transforms.Functions relating to finding the points at which two shapes intersect with each other.

Functions relating to finding the points at which two shapes intersect with each other.

Functions for finding the intersection of different 3D objects

Functions for finding the intersection of different 3D objects

Finds the intersection of

`LineGeneral2D_F32`

by minimizing algebraic error.Finds the intersection of

`LineGeneral2D_F64`

by minimizing algebraic error.
Any transform which has an unique inverse.

Given a sequence of

`InvertibleTransform`

transforms it will compute a single
equivalent transform.
A straight forward implementation of the Iterative Closest Point (ICP) algorithm for 2D or 3D objects.

Computes the Euclidean distance squared of

`Point3D_F32`

for a `KdTree`

.Computes the Euclidean distance squared of

`Point3D_F64`

for a `KdTree`

.
Represents the line using three parameters such that any point on the line obeys the
following formula, A*x + B*y + C = 0.

2D line parameterized using parametric equation:

[x, y] = [x_0, y_0] + tÃ‚Â·[slopeX, slopeY]

where t specifies the location along the line, (x_0,y_0) is an arbitrary point on the line, and (slopeX,slopeY).

[x, y] = [x_0, y_0] + tÃ‚Â·[slopeX, slopeY]

where t specifies the location along the line, (x_0,y_0) is an arbitrary point on the line, and (slopeX,slopeY).

2D line parameterized using parametric equation:

[x, y] = [x_0, y_0] + tÂ·[slopeX, slopeY]

where t specifies the location along the line, (x_0,y_0) is an arbitrary point on the line, and (slopeX,slopeY).

[x, y] = [x_0, y_0] + tÂ·[slopeX, slopeY]

where t specifies the location along the line, (x_0,y_0) is an arbitrary point on the line, and (slopeX,slopeY).

[x, y] = [x_0, y_0] + tÃ‚Â·[slopeX, slopeY]

where t specifies the location along the line, (x_0,y_0) is an arbitrary point on the line, and (slopeX,slopeY).

3D line parameterized using parametric equation:

[x, y, z] = [x_0, y_0, z_0] + tÃ‚Â·[slopeX, slopeY, slopeZ]

where t specifies the location along the line, (x_0,y_0,z_0) is an arbitrary point on the line, and (slopeX,slopeY,slopeZ).

[x, y, z] = [x_0, y_0, z_0] + tÃ‚Â·[slopeX, slopeY, slopeZ]

where t specifies the location along the line, (x_0,y_0,z_0) is an arbitrary point on the line, and (slopeX,slopeY,slopeZ).

3D line parameterized using parametric equation:

[x, y, z] = [x_0, y_0, z_0] + tÂ·[slopeX, slopeY, slopeZ]

where t specifies the location along the line, (x_0,y_0,z_0) is an arbitrary point on the line, and (slopeX,slopeY,slopeZ).

[x, y, z] = [x_0, y_0, z_0] + tÂ·[slopeX, slopeY, slopeZ]

where t specifies the location along the line, (x_0,y_0,z_0) is an arbitrary point on the line, and (slopeX,slopeY,slopeZ).

Defines a line in 2D space based upon the distance of its closest point to the origin
and the angle of a line from the origin to that point.

Defines a line segment by its two end points.

Defines a line segment by its two end points.

Defines a line segment by its two end points.

Defines a line segment by its two end points.

Defines a line segment by its two end points.

Generalized interface for finding the transform which minimizes the difference between two point clouds.

Abstract implementation of ICP for point cloud fitting using an

`arbitrary transform`

.Matrix with a fixed size of 3 by 3.

Matrix with a fixed size of 3 by 3.

Manages

`Affine2D_F32`

.Manages

`Affine2D_F64`

.Manages

`Cylinder3D_F32`

.Manages

`Cylinder3D_F64`

.Manages

`LinePolar2D_F32`

.Manages

`LinePolar2D_F64`

.Manages

`PlaneGeneral3D_F32`

.Manages

`PlaneGeneral3D_F64`

.Manages

`Se2_F32`

.Manages

`Se2_F64`

.Manages

`Se3_F32`

.Manages

`Se3_F64`

.Manages

`Sphere3D_F32`

.Manages

`Sphere3D_F64`

.Finds the best fit model parameters in the least squares sense which can describe the transform
from the 'fromPts' list to the 'toPts' list.

Finds the rigid body motion which minimizes the different between the two sets of associated points in 2D.

Finds the rigid body motion which minimizes the different between the two sets of associated points in 3D.

Finds the rotation which minimizes the different between the two sets of associated points in 3D.

Finds the rotation which minimizes the different between the two sets of associated points in 3D.

Interface for finding a transform that when applied to the 'src' points will minimize
the difference between the corresponding point in the 'dst' list.

Parabola is a specific type of conic that is defined below using 5 coefficients.

Parabola is a specific type of conic that is defined below using 5 coefficients.

Parametric form of parabola with 4 parameters.

Parametric form of parabola with 4 parameters.

Represents the line using four parameters such that any point on the planes obeys the
following formula, A*x + B*y + C*z = D.

Defines a plane using a point on the plane and the plane's normal.

Defines a plane using a point on the plane and the plane's normal.

Specifies a plane using the closest point on the plane to the origin.

Specifies a plane using the closest point on the plane to the origin.

A point in 2D

A point in 2D

A point in 2D composed of shorts

An integer 2D point

Point in 3D with integer values.

Point in 4D or a 3D point in homogenous coordinates.

Point in 4D or a 3D point in homogenous coordinates.

Takes in a point cloud and returns the same point cloud with surface norms.

Takes in a point cloud and returns the same point cloud with surface norms.

A concurrent implementation of

`PointCloudToNormals_F32`

.A concurrent implementation of

`PointCloudToNormals_F64`

.The model is a set of points in 3D space.

Describes a polygon in 2D.

Describes a polygon in 2D.

Describes a polygon in 2D.

Different classifications of polygons

Quadratic curve in 1D: f(x) = a + bx + c x

^{2}+ d x^{3}Quadratic curve in 1D: f(x) = a + bx + c x

^{2}+ d x^{3}Interface for all polynomials

Interface for all polynomials

Generalized polynomial curve

Generalized polynomial curve

Quadratic curve in 1D: f(x) = a + bx + c x

^{2}.Quadratic curve in 1D: f(x) = a + bx + c x

^{2}.Quadratic curve in 2D: f(x,y) = a + b·x + c·y + d·xy + e·x

^{2}+ f·y^{2}.Quadratic curve in 2D: f(x,y) = a + b·x + c·y + d·xy + e·x

^{2}+ f·y^{2}.A polygon with 4 vertices, a,b,c, and d.

A polygon with 4 vertices, a,b,c, and d.

Specifies a 3D rotation using a quaternion.

Specifies a 3D rotation using a quaternion.

An axis aligned rectangle in 2D that is specified by its lower-extent p0, and upper-extent p1.

An axis aligned rectangle in 2D that is specified by its lower-extent p0, and upper-extent p1.

An axis aligned rectangle in 2D that is specified by its lower extent (x0,y0), and upper extent (x1,y1).

An axis aligned rectangle in 2D that is specified by its lower extent (x0,y0), width, and height.

An axis aligned rectangle in 2D that is specified by its lower extent (x0,y0), width, and height.

An axis aligned rectangle in 2D that is specified by its lower extent (x0,y0), width, and height.

Minimizes the Euclidean distance between an ellipse and a set of points which it has been fit to.

Minimizes the Euclidean distance between an ellipse and a set of points which it has been fit to.

Defines a 3D rotation based upon the axis of rotation and the angle of rotation in SO(3).

Defines a 3D rotation based upon the axis of rotation and the angle of rotation in SO(3).

Used to specify which family of rotation parametrization is being used.

Special Euclidean transform that has been parameterized with three parameters:
translation (x,y) and rotation (yaw).

A coordinate system transform composed of a rotation and translation.

A coordinate system transform composed of a rotation and translation.

High level API for fitting points and related to shapes.

Special Orthogonal, i.e.

Special Orthogonal, i.e.

Special Euclidean or rigid body motion is a transform that preserves the norm and cross product
between any two vectors.

Various operations related to

`SpecialEuclidean`

transformations.Various operations related to

`SpecialEuclidean`

transformations.Defines a sphere in 3D space using a center point and radius.

Defines a sphere in 3D space using a center point and radius.

Computes the signed Euclidean distance between a sphere and a set of points, see

`Distance3D_F32.distanceSigned(georegression.struct.shapes.Sphere3D_F32, georegression.struct.point.Point3D_F32)`

.Computes the signed Euclidean distance between a sphere and a set of points, see

`Distance3D_F64.distanceSigned(georegression.struct.shapes.Sphere3D_F64, georegression.struct.point.Point3D_F64)`

.Jacobian of

`SphereToPointSignedDistance_F32`

.Jacobian of

`SphereToPointSignedDistance_F64`

.Specifies the stopping condition for an iterative algorithm.

Iterative algorithm for finding the 4 pairs of tangent lines between two ellipses.

Iterative algorithm for finding the 4 pairs of tangent lines between two ellipses.

Three integers that represents indexes in an array;

Triangle in 3D space.

Triangle in 3D space.

Triangulates a simple polygon by removing ears.

Triangulates a simple polygon by removing ears.

Representation of a twist coordinate, which is se(3).

Representation of a twist coordinate, which is se(3).

Operations related to twists.

Operations related to twists.

Utility functions relating to angles.

Functions related to circles.

Functions related to circles.

Functions for extracting information from ellipses and converting between different ellipse formats.

Functions for extracting information from ellipses and converting between different ellipse formats.

Various useful functions related to homographies.

Various useful functions related to homographies.

Various functions related to lines

Various functions related to lines

Various utilty functions related to lines in 3D

Various utilty functions related to lines in 3D

Various functions related to polygons.

Various functions related to polygons.

Various functions related to polygons.

Spacial vector in 2D

Spacial vector in 2D

Spacial vector in 3D.

Spacial vector in 3D.

Vector in 4D space

Vector in 4D space