You are here: Start » AVL.NET » Function Reference » Document

Geometry 3D Angle Metrics

Icon Name Description / Applications Modules
AngleBetweenLines3D

Measures the smaller and the larger angle between two lines in 3D.

Vision3DLite
AngleBetweenPlanes

Measures the smaller and the larger angle between two planes in 3D.

Vision3DLite
AngleBetweenSegments3D

Measures the angle between two segments in 3D.

Vision3DLite
AngleBetweenThreePoints3D

Measures the angle defined by three consecutive points in 3D.

Vision3DLite
AngleBetweenVectors3D

Measures the angle between two vectors in 3D.

Vision3DLite

Geometry 3D Basics

Icon Name Description / Applications Modules
CreateBox3D

Creates a box in 3D.

Vision3DLite
CreateSegment3D

Produces a segment in 3D of given parameters.

Vision3DLite
LoadPoint3DArrayFromTextFile

Loads arrays of 3D points from text file.

Vision3DLite
RandomPoint3D

Creates random 3D point inside given box.

Vision3DLite
SkipEmptyBox3D

If the input box in 3D has all dimensions different from zero, then it is copied to the output; otherwise Nil is returned.


Secures against domain errors caused by empty boxes.

Vision3DLite
TestBox3DEmpty

Tests whether the box in 3D is empty.

Vision3DLite
TestBox3DInBox3D

Tests whether a box in 3D is contained in another one.

Vision3DLite
TestBox3DIntersectsWith

Tests whether two boxes in 3D have non-empty intersection.

Vision3DLite
TestBox3DNotEmpty

Tests whether the box in 3D is not empty.

Vision3DLite

Geometry 3D Constructions

Icon Name Description / Applications Modules
CircleThroughPoints3D

Computes a circle in 3D passing through three noncollinear 3D points.

Vision3DLite
LineThroughPoint3D

Computes a line in 3D passing through a point with given direction.

Vision3DLite
LineThroughPoints3D

Computes a line in 3D passing through two points.

Vision3DLite
PlaneThroughLineAndPoint3D

Computes a plane passing through a line and a point in 3D.

Vision3DLite
PlaneThroughPoints3D

Computes a plane passing through three distinct points in 3D.

Vision3DLite
ProjectPointsOnLine3D

Projects points onto a line.

Vision3DLite
VectorBetweenPoints3D

Computes a vector representing distance from one point in 3D to another.

Vision3DLite

Geometry 3D Distance Metrics

Icon Name Description / Applications Modules
CircleToPlaneDistance3D

Measures the distance between a circle in 3D and a plane.

Vision3DLite
LineToLineDistance3D

Measures the distance between two lines in 3D.

Vision3DLite
PointSequenceDistances3D

Measures the distances between consecutive points of a point sequence in 3D.

Vision3DLite
PointToCircleDistance3D

Measures the distance between a 3D point and a circle in 3D.

Vision3DLite
PointToLineDistance3D

Measures the distance between a 3D point and a line in 3D.

Vision3DLite
PointToPlaneDistance3D

Measures the distance between a 3D point and a plane.

Vision3DLite
PointToPointDistance3D

Measures the distance between two 3D points.

Vision3DLite
PointToSegmentDistance3D

Measures the distance between a 3D point and a segment in 3D.

Vision3DLite
SegmentToPlaneDistance3D

Measures the distance between a segment in 3D and a plane.

Vision3DLite
SegmentToSegmentDistance3D

Measures the distance between two segments in 3D.

Vision3DLite

Geometry 3D Features

Icon Name Description / Applications Modules
Box3DCenter

Returns the center of the input box in 3D.

Vision3DLite
Box3DCharacteristicPoint

Returns a characteristic point of a box in 3D.

Vision3DLite
Box3DSurfaceArea

Returns the surface area of the input box in 3D.

Vision3DLite
Box3DVolume

Returns the volume of the input box in 3D.

Vision3DLite
Boxes3DBoundingBox3D_OrNil

Computes the bounding box 3D of given boxes in 3D; returns NIL if the array is empty.

Vision3DLite
BoxesBoundingBox3D

Computes the bounding box 3D of given boxes in 3D.

Vision3DLite
Circle3DArea

Computes the area of a circle in 3D.

Vision3DLite
Circle3DBoundingBox

Computes the smallest box in 3D containing a circle in 3D.

Vision3DLite
Circle3DPerimeterLength

Computes the length of a circle in 3D perimeter.

Vision3DLite
Plane3DNormalVector

Computes the normal vector of a line.

Vision3DLite
Plane3DOrientation

Computes the orientation of a plane as angles in the range from 0 to 180 between the plane and coordinate planes.

Vision3DLite
PointsBoundingBox3D

Computes the smallest box in 3D containing an array of points in 3D.

Vision3DLite
PointsBoundingBox3D_OrNil

Computes the smallest box in 3D containing an array of points in 3D; returns NIL if the array is empty.

Vision3DLite
PointsMassCenter3D

Computes the central point of the input points.

Vision3DLite
Segment3DBisector

Computes a plane passing through the center of a segment in 3D at a right angle.

Vision3DLite
Segment3DBoundingBox

Computes the smallest box in 3D containing a segment in 3D.

Vision3DLite
Segment3DCenter

Computes the center point of a segment in 3D.

Vision3DLite
Segment3DLength

Computes the length of a segment in 3D.

Vision3DLite
Segment3DLine

Computes the line in 3D passing through a segment.

Vision3DLite
Segment3DVector

Returns the vector [x2 - x1, y2 - y1, z2 - z1].

Vision3DLite
Vector3DAzimuth

Computes the angle between a 3D vector's projection to the XY plane and the X axis measured toward Y axis, as an angle in the range from 0 to 360.

Vision3DLite
Vector3DElevation

Computes the angle between a 3D vector's projection to the XY plane and itself measured toward Z axis, as an angle in the range from -90 to 90.

Vision3DLite
Vector3DLength

Computes the length of a 3D vector.

Vision3DLite

Geometry 3D Fitting

Icon Name Description / Applications Modules
AnalyzePoint3DGrid

Analyzes the steps in X and Y directions of a point 3D grid.

Vision3DLite
FitCircle3DToHole

Fits a circle to a hole in a plane.

Vision3DLite
FitCircleToPoints3D

Approximates points in 3D with a circle using selected outliers suppression method.

Vision3DStandard
FitLineToPoints3D

Approximates points in 3D with a line using the Least Squares method.

Vision3DStandard
FitLineToPoints3D_LTE

Approximates points in 3D with a line using Least Trimmed Error algorithm.

Vision3DStandard
FitLineToPoints3D_M

Approximates points in 3D with a line using selected M-estimator for outlier suppression.


Finding a locally optimal line in 3D. Good enough when the number of outliers is small.

Vision3DStandard
FitLineToPoints3D_RANSAC

Approximates points in 3D with a line using a RANSAC algorithm.

Vision3DStandard
FitPlaneToPoints

Approximates points with a plane using the Least Squares method.

Vision3DStandard
FitPlaneToPoints_M

Approximates points with a plane using selected M-estimator for outlier suppression.


Finding a locally optimal plane. Good enough when the number of outliers is small.

Vision3DStandard
FitSegmentToPoints3D

Approximates points in 3D with a segment using selected outliers suppression method.

Vision3DStandard
FitSegmentToPoints3D_LTE

Approximates points in 3D with a segment using a RANSAC algorithm.

Vision3DStandard
FitSegmentToPoints3D_RANSAC

Approximates points in 3D with a segment using a RANSAC algorithm.

Vision3DStandard

Geometry 3D Interpolations

Icon Name Description / Applications Modules
LerpPoints3D

Linearly interpolates between two points in 3D.

Vision3DStandard
LerpSegments3D

Linearly interpolates between two segments in 3D.

Vision3DStandard
LerpVectors3D

Linearly interpolates between two 3D vectors.

Vision3DStandard

Geometry 3D Intersections

Icon Name Description / Applications Modules
BoxIntersection3D

Computes the common part of two boxes in 3D.

Vision3DLite
CirclePlaneIntersection3D

Computes common points of a circle in 3D and a plane.

Vision3DLite
LineLineIntersection3D

Computes a common point of two lines in 3D.

Vision3DLite
LinePlaneIntersection3D

Computes the intersection point of a line in 3D and a plane.

Vision3DLite
PlanePlaneIntersection3D

Computes a common line in 3D of two planes.

Vision3DLite
SegmentPlaneIntersection3D

Computes the intersection point of a segment in 3D and a plane.

Vision3DLite

Geometry 3D Normalizations

Icon Name Description / Applications Modules
RemoveInvalidPoints3D

Removes invalid 3D points from an array (i.e. points with NaN or INF coordinates).

Vision3DLite

Geometry 3D Relations

Icon Name Description / Applications Modules
TestLine3DThroughCircle3D

Tests whether a line in 3D goes through a circle in 3D.

Vision3DLite
TestPoint3DInBox3D

Tests whether a point in 3D lies in a box in 3D.

Vision3DLite

Geometry 3D Spatial Transforms

Icon Name Description / Applications Modules
AlignPoint3DArrayToPlane

Rotates an array of 3D points with a rotation that transforms the input plane to be parallel to XY plane.

Vision3DLite
Box2DToBox3D_AxesPlane

Projects a 2D box onto a plane defined by 3D coordinate axes.

Vision3DLite
Box3DToBox2D_AxesPlane

Projects a 3D box onto a plane defined by coordinate axes.

Vision3DLite
Circle2DToCircle3D_AxesPlane

Projects a 2D circle onto a plane defined by 3D coordinate axes.

Vision3DLite
Circle3DToCircle2D_AxesPlane

Projects a 3D circle onto a plane defined by coordinate axes.

Vision3DLite
Line2DToLine3D_AxesPlane

Projects a 2D line onto a plane defined by 3D coordinate axes.

Vision3DLite
Line3DToLine2D_AxesPlane

Projects a 3D line onto a plane defined by coordinate axes.

Vision3DLite
MirrorPoint3D

Mirrors a point according to the input plane.

Vision3DLite
MirrorPoint3DArray

Mirrors each point from the array according to the input plane.

Vision3DLite
Point2DToPoint3D_AxesPlane

Projects a 2D point onto a plane defined by 3D coordinate axes.

Vision3DLite
Point3DToPoint2D_AxesPlane

Projects a 3D point onto a plane defined by coordinate axes.

Vision3DLite
Points2DToPoints3D_AxesPlane

Projects an array of 2D points onto a plane defined by 3D coordinate axes.

Vision3DLite
Points3DToPoints2D_AxesPlane

Projects an array of 3D points onto a plane defined by coordinate axes.

Vision3DLite
ProjectLineOntoPlane3D

Projects a line 3D onto a plane.

Vision3DLite
ProjectPoint2DOntoPlane3D

Projects a point on a plane Z=0 onto a given plane, translating it parallel to Z axis.

Vision3DLite
ProjectPointOnLine3D

Projects a point 3D onto a line in 3D.

Vision3DLite
ProjectPointOntoPlane3D

Projects a point 3D onto a plane.

Vision3DLite
ProjectPointOrthogonal

Converts a point through a simple orthogonal projection, parallel to the Z axis.

Vision3DLite
ProjectPointPerspective

Converts a point through a perspective projection, parallel to the Z axis.

Vision3DLite
RescaleBox3D

Changes the distances of box in 3D to a reference point.

Vision3DLite
RescaleCircle3D

Changes radius of a circle in 3D and translates its center in relation to a reference point.

Vision3DLite
RescaleLine3D

Changes the input line in 3D distance to a reference point.

Vision3DLite
RescalePlane

Changes the input plane distance to a reference point.

Vision3DLite
RescalePoint3D

Changes the distance of a point to a reference point.

Vision3DLite
RescalePoint3DArray

Changes the distances of array points to a reference point.

Vision3DLite
RescaleSegment3D

Lengthens or shortens a segment in 3D relatively.

Vision3DLite
RescaleVector3D

Lengthens or shortens a 3D vector relatively preserving its direction.

Vision3DLite
ResizeBox3D

Changes the dimensions of a box in 3D.

Vision3DLite
ResizeBox3D_Delta

Changes the dimensions of a box in 3D by adding some values.

Vision3DLite
ResizeBox3D_Relative

Resizes a box in 3D to relatively defined dimensions.

Vision3DLite
ResizeCircle3D

Changes radius of a circle in 3D.

Vision3DLite
ResizeCircle3D_Delta

Changes radius of a circle in 3D by adding a value.

Vision3DLite
ResizeSegment3D

Lengthens or shortens a segment in 3D to a new length preserving its orientation and center point.

Vision3DLite
ResizeSegment3D_Delta

Changes length of a segment in 3D by adding a value preserving its orientation and center point.

Vision3DLite
ResizeVector3D

Lengthens or shortens a 3D vector preserving its direction.

Vision3DLite
ResizeVector3D_Delta

Extends length of a 3D vector by adding a value preserving its direction.

Vision3DLite
ReverseSegment3D

Swaps the two endpoints of a segment in 3D.

Vision3DLite
RotateCircle3D

Rotates a circle in 3D around an axis in 3D.

Vision3DLite
RotateLine3D

Rotates a line in 3D around an axis in 3D.

Vision3DLite
RotatePlane

Rotates a plane in 3D around an axis in 3D.

Vision3DLite
RotatePoint3D

Rotates a 3D point around an axis in 3D.

Vision3DLite
RotatePoint3DArray

Rotates an array of 3D points around an axis in 3D.

Vision3DLite
RotateSegment3D

Rotates a segment in 3D around an axis in 3D.

Vision3DLite
RotateVector3D

Rotates a 3D vector around another 3D vector (the axis).

Vision3DLite
Segment2DToSegment3D_AxesPlane

Projects a 2D segment onto a plane defined by 3D coordinate axes.

Vision3DLite
Segment3DToSegment2D_AxesPlane

Projects a 3D segment onto a plane defined by coordinate axes.

Vision3DLite
Segments2DToSegments3D_AxesPlane

Projects an array of 2D segments onto a plane defined by 3D coordinate axes.

Vision3DLite
Segments3DToSegments2D_AxesPlane

Projects an array of 3D segments onto a plane defined by coordinate axes.

Vision3DLite
SplitPointsByPlane

Separates the points being on one side of the input plane from the others.

Vision3DLite
TransformCircle3D

Applies a general transformation expressed by a matrix to a 3D circle.

Vision3DLite
TransformLine3D

Applies a general transformation expressed by a matrix to a 3D line.

Vision3DLite
TransformPlane

Applies a general transformation expressed by a matrix to a plane.

Vision3DLite
TransformPoint3D

Applies a general transformation expressed by a matrix to a 3D point.

Vision3DLite
TransformPoint3DArray

Applies a general transformation expressed by a matrix to an array of 3D points.

Vision3DLite
TransformSegment3D

Applies a general transformation expressed by a matrix to a 3D segment.

Vision3DLite
TransformVector3D

Applies a general transformation expressed by a matrix to a 3D vector.

Vision3DLite
TranslateBox3D

Shifts a box in 3D by a vector.

Vision3DLite
TranslateCircle3D

Shifts a circle in 3D by a vector.

Vision3DLite
TranslateLine3D

Shifts a line in 3D by a vector.

Vision3DLite
TranslatePlane

Shifts a plane in 3D by a vector.

Vision3DLite
TranslatePoint3D

Translates a point by a vector.

Vision3DLite
TranslatePoint3DArray

Translates an array of points by a vector.

Vision3DLite
TranslatePoint3D_Toward

Translates a point in 3D towards another point in 3D by a specified distance.

Vision3DLite
TranslateSegment3D

Shifts a segment in 3D by a vector.

Vision3DLite
TrimLine3D

Creates a segment contained in a box in 3D from a line in 3D.

Vision3DLite
TrimPoint3DArray

Removes points not contained in a box in 3D from an array.

Vision3DLite
TrimSegment3D

Creates a segment contained in a box in 3D from another segment in 3D.

Vision3DLite
Vector2DToVector3D_AxesPlane

Projects a 2D vector onto a plane defined by 3D coordinate axes.

Vision3DLite
Vector3DToVector2D_AxesPlane

Projects a 3D vector onto a plane defined by coordinate axes.

Vision3DLite