oevislib_net  0.14.3.0
Loading...
Searching...
No Matches
Features

Functions

static Point2D oevislib_net.Geometry.Features.Points.PointsMassCenter (Array< Point2D > inPoints)
 Computes the mass center of the points array.
static Box oevislib_net.Geometry.Features.Points.PointsBoundingBox (Array< Point2D > inPoints)
 Computes the smallest box that contains all the provided points.
static Circle2D oevislib_net.Geometry.Features.Points.PointsBoundingCircle (Array< Point2D > inPoints)
 Computes the smaller circle that contains all the provided points.
static Path oevislib_net.Geometry.Features.Points.PointsConvexHull (Array< Point2D > inPoints)
 Computes the convex hull of the provided points array.
static Path oevislib_net.Geometry.Features.Points.PointsConcaveHull (Array< Point2D > inPoints, int inNearestNeighbors)
 Computes the concave hull of the provided points array.
static Rectangle2D oevislib_net.Geometry.Features.Points.PointsBoundingRect (Array< Point2D > inPoints, float inAngle)
 Computes the smallest rectangle that contains the provided points and has the provided orientation.
static Rectangle2D oevislib_net.Geometry.Features.Points.PointsBoundingRect (Array< Point2D > inPoints, RectangleOrientation inRectangleOrientation=RectangleOrientation.Horizontal)
 Computes the smallest rectangle that contains the provided points.
static Segment2D oevislib_net.Geometry.Features.Points.PointsDiameter (Array< Point2D > inPoints)
 Computes the longest segment connecting two points of the provided array.
static void oevislib_net.Geometry.Features.Points.PointsCaliperDiameter (Array< Point2D > inPoints, Optional< Segment2D > outMinDiameter=null, Optional< Segment2D > outMaxDiameter=null)
 Computes the longest and shortest segments connecting two points of the provided array.

Arc2D Features

See also
Features
Point2D oevislib_net.Geometry.Arc2D.GetMidpoint ()
 Returns the arc midpoint.
void oevislib_net.Geometry.Arc2D.GetEndpoints (Point2D outPoint1, Point2D outPoint2)
 Returns both arc endpoints.
float oevislib_net.Geometry.Arc2D.GetLength ()
 Returns the arc length.
Circle2D oevislib_net.Geometry.Arc2D.GetCircle ()
 Returns the circle containing the arc.

Circle2D Features

See also
Features
Point2D oevislib_net.Geometry.Circle2D.GetAnchoredPoint (Anchor2D inPointAnchor)
 Returns a circle characteristic point.
float oevislib_net.Geometry.Circle2D.GetArea ()
 Returns the circle area.
float oevislib_net.Geometry.Circle2D.GetPerimeter ()
 Returns the circle perimeter.
Arc2D oevislib_net.Geometry.Circle2D.GetArcSection (float inStartAngle, float inSweepAngle)
 Returns an arc section from the circle using the provided angles.
Box oevislib_net.Geometry.Circle2D.GetBoundingBox ()
 Returns the box with minimum area that contains the entire circle.
Rectangle2D oevislib_net.Geometry.Circle2D.GetBoundingRect (Optional< float > inAngle=null)
 Computes the rectangle with minium area that contains the entire circle.
Array< Line2Doevislib_net.Geometry.Circle2D.GetTangents (Point2D inPoint)
 Returns the lines that are tangents to the Circle2D object.

Ellipse2D Features

See also
Features
Rectangle2D oevislib_net.Geometry.Ellipse2D.GetBoundingRect ()
 Returns the rectangle with minimum area that contains the entire ellipse.
Box oevislib_net.Geometry.Ellipse2D.GetBoundingBox ()
 Returns the box with minimum area that contains the entire ellipse.

Line2D Features

See also
Features
float oevislib_net.Geometry.Line2D.GetOrientation ()
 Computes the line orientation.
Vector2D oevislib_net.Geometry.Line2D.GetNormalVector (bool inReverse)
 Computes the vector normal to the line.
Point2D oevislib_net.Geometry.Line2D.GetPoint (float inCoordinate, Axis inAxis)
 Returns a point on the line with the provided coordinate.

Rectangle2D Features

See also
Features
Point2D oevislib_net.Geometry.Rectangle2D.GetCenter ()
 Returns the rectangle center.
Point2D oevislib_net.Geometry.Rectangle2D.GetCorner (RectangleCorner inRectangleCorner)
 Returns a rectangle corner.
void oevislib_net.Geometry.Rectangle2D.GetCorners (Point2D outTopLeft, Point2D outTopRight, Point2D outBottomRight, Point2D outBottomLeft)
 Computes all the rectangle corners.
Point2D oevislib_net.Geometry.Rectangle2D.GetAnchoredPoint (Anchor2D inPointAnchor)
 Computes the rectangle points found at the provided anchor.
float oevislib_net.Geometry.Rectangle2D.GetArea ()
 Returns the rectangle area.
float oevislib_net.Geometry.Rectangle2D.GetPerimeter ()
 Returns the rectangle perimeter.
Box oevislib_net.Geometry.Rectangle2D.GetBoundingBox ()
 Returns the box with minimum area that contains the entire rectangle.
Circle2D oevislib_net.Geometry.Rectangle2D.GetBoundingCircle ()
 Returns the circle with minimum area that contains the entire rectangle.

Ring2D Features

See also
Features
Box oevislib_net.Geometry.Ring2D.GetBoundingBox ()
 Returns the box with minimum area that contains the entire ring.

Segment2D Features

See also
Features
Point2D oevislib_net.Geometry.Segment2D.GetCenter ()
 Returns the center of the segment.
float oevislib_net.Geometry.Segment2D.GetLength ()
 Returns the segment length.
Line2D oevislib_net.Geometry.Segment2D.GetBisector ()
 Returns the segment bisector.
Vector2D oevislib_net.Geometry.Segment2D.GetNormalVector (bool inReverse)
 Returns a unary vector with direction normal to the segment.
Line2D oevislib_net.Geometry.Segment2D.GetLine ()
 Computes the line containing the segment.
Vector2D oevislib_net.Geometry.Segment2D.GetVector ()
 Returns the corresponding vector.
float oevislib_net.Geometry.Segment2D.GetOrientation (AngleRange inAngleRange)
 Returns the segment direction normalized to the provided range.

Vector2D Features

See also
Features
float oevislib_net.Geometry.Vector2D.GetDirection ()
 Computes the vector direction.
float oevislib_net.Geometry.Vector2D.GetLength ()
 Returns the vector length.
float oevislib_net.Geometry.Vector2D.GetLength2 ()
 Returns the vector squared length.

Detailed Description

Function Documentation

◆ GetAnchoredPoint() [1/2]

Point2D oevislib_net.Geometry.Circle2D.GetAnchoredPoint ( Anchor2D inPointAnchor)
inline

Returns a circle characteristic point.

Parameters
inPointAnchorAnchor of the returned point.
Returns
The computed point.

◆ GetAnchoredPoint() [2/2]

Point2D oevislib_net.Geometry.Rectangle2D.GetAnchoredPoint ( Anchor2D inPointAnchor)
inline

Computes the rectangle points found at the provided anchor.

Parameters
inPointAnchorSelects the rectangle point that must be returned.
Returns
The computed point.

◆ GetArcSection()

Arc2D oevislib_net.Geometry.Circle2D.GetArcSection ( float inStartAngle,
float inSweepAngle )
inline

Returns an arc section from the circle using the provided angles.

Parameters
inStartAngleInput start angle.
inSweepAngleInput sweep angle.
Returns
Circle's arc section.

◆ GetArea() [1/2]

float oevislib_net.Geometry.Circle2D.GetArea ( )
inline

Returns the circle area.

Returns
Circle's area.

◆ GetArea() [2/2]

float oevislib_net.Geometry.Rectangle2D.GetArea ( )
inline

Returns the rectangle area.

Returns
Rectangle area.

◆ GetBisector()

Line2D oevislib_net.Geometry.Segment2D.GetBisector ( )
inline

Returns the segment bisector.

Returns
Segment's bisector.

◆ GetBoundingBox() [1/4]

Box oevislib_net.Geometry.Circle2D.GetBoundingBox ( )
inline

Returns the box with minimum area that contains the entire circle.

Returns
Circle's bounding box.

◆ GetBoundingBox() [2/4]

Box oevislib_net.Geometry.Ellipse2D.GetBoundingBox ( )
inline

Returns the box with minimum area that contains the entire ellipse.

Returns
Ellipse's bounding box.

◆ GetBoundingBox() [3/4]

Box oevislib_net.Geometry.Rectangle2D.GetBoundingBox ( )
inline

Returns the box with minimum area that contains the entire rectangle.

Returns
Rectangle's bounding box.

◆ GetBoundingBox() [4/4]

Box oevislib_net.Geometry.Ring2D.GetBoundingBox ( )
inline

Returns the box with minimum area that contains the entire ring.

Returns
Ring's bounding box.

◆ GetBoundingCircle()

Circle2D oevislib_net.Geometry.Rectangle2D.GetBoundingCircle ( )
inline

Returns the circle with minimum area that contains the entire rectangle.

Returns
Rectangle's bounding circle.

◆ GetBoundingRect() [1/2]

Rectangle2D oevislib_net.Geometry.Circle2D.GetBoundingRect ( Optional< float > inAngle = null)
inline

Computes the rectangle with minium area that contains the entire circle.

Parameters
inAngleThe rectangle's orientation angle. If Null, the angle will be set to 0.
Returns
The computed rectangle.

◆ GetBoundingRect() [2/2]

Rectangle2D oevislib_net.Geometry.Ellipse2D.GetBoundingRect ( )
inline

Returns the rectangle with minimum area that contains the entire ellipse.

Returns
Ellipse's bounding rectangle.

◆ GetCenter() [1/2]

Point2D oevislib_net.Geometry.Rectangle2D.GetCenter ( )
inline

Returns the rectangle center.

Returns
Rectangle's center.

◆ GetCenter() [2/2]

Point2D oevislib_net.Geometry.Segment2D.GetCenter ( )
inline

Returns the center of the segment.

Returns
Segment's center.

◆ GetCircle()

Circle2D oevislib_net.Geometry.Arc2D.GetCircle ( )
inline

Returns the circle containing the arc.

Returns
Circle containing the arc.

◆ GetCorner()

Point2D oevislib_net.Geometry.Rectangle2D.GetCorner ( RectangleCorner inRectangleCorner)
inline

Returns a rectangle corner.

Parameters
inRectangleCornerSelects which corner must be returned.
Returns
Requested corner.

◆ GetCorners()

void oevislib_net.Geometry.Rectangle2D.GetCorners ( Point2D outTopLeft,
Point2D outTopRight,
Point2D outBottomRight,
Point2D outBottomLeft )
inline

Computes all the rectangle corners.

Parameters
outTopLeftComputed top left corner.
outTopRightComputed top right corner.
outBottomRightComputed bottom right corner.
outBottomLeftComputed bottom left corner.

◆ GetDirection()

float oevislib_net.Geometry.Vector2D.GetDirection ( )
inline

Computes the vector direction.

Returns
The computed angle in range [0,360] [deg].

◆ GetEndpoints()

void oevislib_net.Geometry.Arc2D.GetEndpoints ( Point2D outPoint1,
Point2D outPoint2 )
inline

Returns both arc endpoints.

Parameters
outPoint1First arc endpoint.
outPoint2Second arc endpoint.

◆ GetLength() [1/3]

float oevislib_net.Geometry.Arc2D.GetLength ( )
inline

Returns the arc length.

Returns
Arc length.

◆ GetLength() [2/3]

float oevislib_net.Geometry.Segment2D.GetLength ( )
inline

Returns the segment length.

Returns
float Length.

◆ GetLength() [3/3]

float oevislib_net.Geometry.Vector2D.GetLength ( )
inline

Returns the vector length.

Returns
Vector length.

◆ GetLength2()

float oevislib_net.Geometry.Vector2D.GetLength2 ( )
inline

Returns the vector squared length.

Returns
Vector squared length.

◆ GetLine()

Line2D oevislib_net.Geometry.Segment2D.GetLine ( )
inline

Computes the line containing the segment.

Returns
The computed object.

◆ GetMidpoint()

Point2D oevislib_net.Geometry.Arc2D.GetMidpoint ( )
inline

Returns the arc midpoint.

Returns
Arc midpoint.

◆ GetNormalVector() [1/2]

Vector2D oevislib_net.Geometry.Line2D.GetNormalVector ( bool inReverse)
inline

Computes the vector normal to the line.

Parameters
inReverseIf true, the computed vector is rotated by 180 degrees.
Returns
The computed vector.

◆ GetNormalVector() [2/2]

Vector2D oevislib_net.Geometry.Segment2D.GetNormalVector ( bool inReverse)
inline

Returns a unary vector with direction normal to the segment.

Parameters
inReverseIf true, the computed vector has the opposite direction.
Returns
Segment's normal vector.

◆ GetOrientation() [1/2]

float oevislib_net.Geometry.Line2D.GetOrientation ( )
inline

Computes the line orientation.

Returns
The computed angle in range [0, 360] [deg].

◆ GetOrientation() [2/2]

float oevislib_net.Geometry.Segment2D.GetOrientation ( AngleRange inAngleRange)
inline

Returns the segment direction normalized to the provided range.

Parameters
inAngleRangeRange in which the computed angle is contained.
Returns
The computed angle.

◆ GetPerimeter() [1/2]

float oevislib_net.Geometry.Circle2D.GetPerimeter ( )
inline

Returns the circle perimeter.

Returns
Circle's perimeter.

◆ GetPerimeter() [2/2]

float oevislib_net.Geometry.Rectangle2D.GetPerimeter ( )
inline

Returns the rectangle perimeter.

Returns
Rectangle perimeter.

◆ GetPoint()

Point2D oevislib_net.Geometry.Line2D.GetPoint ( float inCoordinate,
Axis inAxis )
inline

Returns a point on the line with the provided coordinate.

If the line is vertical and the provided coordinate is on the X axis, the point's Y coordinate will be NaN. The same is true if the line is horizontal and the coordinate is on the Y axis.

Parameters
inCoordinateValue of the fixed coordinate.
inAxisAxis of the provided coordinate.
Returns
The computed point.

◆ GetTangents()

Array< Line2D > oevislib_net.Geometry.Circle2D.GetTangents ( Point2D inPoint)
inline

Returns the lines that are tangents to the Circle2D object.

Parameters
inPointPoint contained by the tangent lines.
Returns
Array of Line2D objects. If empty, no tangent lines were found. If array size is 1, the point lies onto the circle perimeter.

◆ GetVector()

Vector2D oevislib_net.Geometry.Segment2D.GetVector ( )
inline

Returns the corresponding vector.

Returns
Segment's corresponding vector.

◆ PointsBoundingBox()

Box oevislib_net.Geometry.Features.Points.PointsBoundingBox ( Array< Point2D > inPoints)
inlinestatic

Computes the smallest box that contains all the provided points.

Parameters
inPointsInput points.
Returns
The computed box.

◆ PointsBoundingCircle()

Circle2D oevislib_net.Geometry.Features.Points.PointsBoundingCircle ( Array< Point2D > inPoints)
inlinestatic

Computes the smaller circle that contains all the provided points.

Parameters
inPointsInput points.
Returns
The computed circle.

◆ PointsBoundingRect() [1/2]

Rectangle2D oevislib_net.Geometry.Features.Points.PointsBoundingRect ( Array< Point2D > inPoints,
float inAngle )
inlinestatic

Computes the smallest rectangle that contains the provided points and has the provided orientation.

Parameters
inPointsInput points.
inAngleRectangle orientation.
Returns
The computed rectangle

◆ PointsBoundingRect() [2/2]

Rectangle2D oevislib_net.Geometry.Features.Points.PointsBoundingRect ( Array< Point2D > inPoints,
RectangleOrientation inRectangleOrientation = RectangleOrientation::Horizontal )
inlinestatic

Computes the smallest rectangle that contains the provided points.

Parameters
inPointsInput points.
inRectangleOrientationOrientation of the output rectangle
Returns
The computed rectangle.

◆ PointsCaliperDiameter()

void oevislib_net.Geometry.Features.Points.PointsCaliperDiameter ( Array< Point2D > inPoints,
Optional< Segment2D > outMinDiameter = null,
Optional< Segment2D > outMaxDiameter = null )
inlinestatic

Computes the longest and shortest segments connecting two points of the provided array.

Parameters
inPointsInput points.
outMinDiameterShortest segment.
outMaxDiameterLongest segment.

◆ PointsConcaveHull()

Path oevislib_net.Geometry.Features.Points.PointsConcaveHull ( Array< Point2D > inPoints,
int inNearestNeighbors )
inlinestatic

Computes the concave hull of the provided points array.

Parameters
inPointsInput points
inNearestNeighborsNumber of nearest-neighbors to search for at each step. Higher values yields a smoother polygon.
Returns
The computed concave hull.

◆ PointsConvexHull()

Path oevislib_net.Geometry.Features.Points.PointsConvexHull ( Array< Point2D > inPoints)
inlinestatic

Computes the convex hull of the provided points array.

Parameters
inPointsInput points.
Returns
The computed convex hull.

◆ PointsDiameter()

Segment2D oevislib_net.Geometry.Features.Points.PointsDiameter ( Array< Point2D > inPoints)
inlinestatic

Computes the longest segment connecting two points of the provided array.

Parameters
inPointsInput points.
Returns
The computed segment.

◆ PointsMassCenter()

Point2D oevislib_net.Geometry.Features.Points.PointsMassCenter ( Array< Point2D > inPoints)
inlinestatic

Computes the mass center of the points array.

Parameters
inPointsInput points.
Returns
The computed mass center.