oevislib_net  0.14.3.0
Loading...
Searching...
No Matches
Spatial Transforms

Functions

Path oevislib_net.Path.Translate (Vector2D inDelta, TranslateAlignment inTranslateAlignment, bool inInverse)
 Translates each point of the path using the provided vector.
Path oevislib_net.Path.Rotate (float inAngle, Optional< Point2D > inCenter=null, bool inInverse=false)
 Rotates the entire path clockwise around a center point.
Path oevislib_net.Path.Crop (Box inBox, TrimPathMethod inTrimPathMethod)
 Crops the path to the provided rectangle box.
Path oevislib_net.Path.Crop (Rectangle2D inRectangle, TrimPathMethod inTrimPathMethod)
 Crops the path to the provided rectangle.
Path oevislib_net.Path.Rescale (float inScale, Optional< Point2D > inReferencePoint=null, bool inInverse=false)
 Rescales all the path's points distance with respect to a reference point.
Path oevislib_net.Path.Align (UCS2D inAlignment, bool inInverse)
 Moves the path to a new coordinate system.
static void oevislib_net.Path.TranslatePaths (Array< Path > ioPaths, Vector2D inDelta, TranslateAlignment inTranslateAlignment, bool inInverse)
 Translates each path of the provided array.
static void oevislib_net.Path.RotatePaths (Array< Path > ioPaths, float inAngle, Optional< Point2D > inCenter=null, bool inInverse=false)
 Rotates each path of the provided array.
static void oevislib_net.Path.CropPaths (Array< Path > ioPaths, Box inBox, TrimPathMethod inTrimPathMethod)
 Crops each path of the provided array.
static void oevislib_net.Path.CropPaths (Array< Path > ioPaths, Rectangle2D inRectangle, TrimPathMethod inTrimPathMethod)
 Crops each path of the provided array using the provided rectangle.
static void oevislib_net.Path.RescalePaths (Array< Path > ioPaths, float inScale, Optional< Point2D > inReferencePoint, bool inInverse)
 Rescales each path of the provided array.
static void oevislib_net.Path.AlignPaths (Array< Path > ioPaths, UCS2D inAlignment, bool inInverse)
 Aligns each path of the provided array.
void oevislib_net.Path.Reverse ()
 Reverses path's points ordered.
void oevislib_net.Path.Transpose ()
 Flips x and y coordinates of each path's point.
Path oevislib_net.Path.Shift (float inDistance, ShiftDirection inDirection)
 Shifts the points of the path by a given distance in a specified direction.
Profile oevislib_net.Path.ProjectsOn (Line2D inLine, Optional< Array< Segment2D > > outProjectionSegments=null)
 Project each point on the provided line.
Conditional< Pathoevislib_net.Path.Inflate (float inMargin, float inMaxPointDisplacement)
 Enlarges the path with a given margin.

Detailed Description

Function Documentation

◆ Align()

Path oevislib_net.Path.Align ( UCS2D inAlignment,
bool inInverse )
inline

Moves the path to a new coordinate system.

Parameters
inAlignmentInput coordinate system.
inInverseIf true, the inverse transformation is performed.
Returns
The aligned path.

◆ AlignPaths()

void oevislib_net.Path.AlignPaths ( Array< Path > ioPaths,
UCS2D inAlignment,
bool inInverse )
inlinestatic

Aligns each path of the provided array.

Parameters
ioPathsArray with paths that must be aligned. The array will be modified in-place.
inAlignmentInput coordinate system.
inInverseIf true, the inverse transformation is performed.

◆ Crop() [1/2]

Path oevislib_net.Path.Crop ( Box inBox,
TrimPathMethod inTrimPathMethod )
inline

Crops the path to the provided rectangle box.

Parameters
inBoxInput rectangle box.
inTrimPathMethodMethod used to crop path.
Returns
The resulting path.

◆ Crop() [2/2]

Path oevislib_net.Path.Crop ( Rectangle2D inRectangle,
TrimPathMethod inTrimPathMethod )
inline

Crops the path to the provided rectangle.

Parameters
inRectangleInput rectangle.
inTrimPathMethodMethod used to crop path.
Returns
The resulting path.

◆ CropPaths() [1/2]

void oevislib_net.Path.CropPaths ( Array< Path > ioPaths,
Box inBox,
TrimPathMethod inTrimPathMethod )
inlinestatic

Crops each path of the provided array.

Parameters
ioPathsArray with paths that must be cropped. The array will be modified in-place.
inBoxInput rectangle box used to crop each path.
inTrimPathMethodMethod used to crop each path.

◆ CropPaths() [2/2]

void oevislib_net.Path.CropPaths ( Array< Path > ioPaths,
Rectangle2D inRectangle,
TrimPathMethod inTrimPathMethod )
inlinestatic

Crops each path of the provided array using the provided rectangle.

Parameters
ioPathsArray with paths that must be cropped. The array will be modified in-place.
inRectangleInput rectangle used to crop each path.
inTrimPathMethodMethod used to crop each path.

◆ Inflate()

Conditional< Path > oevislib_net.Path.Inflate ( float inMargin,
float inMaxPointDisplacement )
inline

Enlarges the path with a given margin.

Parameters
inMarginInflation margin.
inMaxPointDisplacementMaximum distance covered by each point. Range: [0, +inf).
Returns
A conditional containing the inflated path. The conditional is Null if at least one point travels a distance grated than inMaxPointDisplacement.

◆ ProjectsOn()

Profile oevislib_net.Path.ProjectsOn ( Line2D inLine,
Optional< Array< Segment2D > > outProjectionSegments = null )
inline

Project each point on the provided line.

Parameters
inLineLine on which the path will be projected.
outProjectionSegmentsArray containing the projected segments.
Returns
The path projection.

◆ Rescale()

Path oevislib_net.Path.Rescale ( float inScale,
Optional< Point2D > inReferencePoint = null,
bool inInverse = false )
inline

Rescales all the path's points distance with respect to a reference point.

Parameters
inScaleInput scale factor.
inReferencePointRescale reference point.
inInverseIf true, the scale factor is inverted.
Returns
The rescaled path.

◆ RescalePaths()

void oevislib_net.Path.RescalePaths ( Array< Path > ioPaths,
float inScale,
Optional< Point2D > inReferencePoint,
bool inInverse )
inlinestatic

Rescales each path of the provided array.

Parameters
ioPathsArray with paths that must be rescaled. The array will be modified in-place.
inScaleInput scale factor.
inReferencePointScaling reference point. If Null, the path mass center will be used.
inInverseIf true, the scale factor is inverted.

◆ Reverse()

void oevislib_net.Path.Reverse ( )
inline

Reverses path's points ordered.

◆ Rotate()

Path oevislib_net.Path.Rotate ( float inAngle,
Optional< Point2D > inCenter = null,
bool inInverse = false )
inline

Rotates the entire path clockwise around a center point.

Parameters
inAngleRotation angle.
inCenterRotation center. If Null, the path mass center will be used.
inInverseIf true, the rotation is performed counter-clockwise.
Returns
The rotated path.

◆ RotatePaths()

void oevislib_net.Path.RotatePaths ( Array< Path > ioPaths,
float inAngle,
Optional< Point2D > inCenter = null,
bool inInverse = false )
inlinestatic

Rotates each path of the provided array.

Parameters
ioPathsArray with paths that must be rotated. The array will be modified in-place.
inAngleRotation angle.
inCenterRotation center. If Null, the path mass center will be used.
inInverseIf true, the paths will be rotated counter-clockwise.

◆ Shift()

Path oevislib_net.Path.Shift ( float inDistance,
ShiftDirection inDirection )
inline

Shifts the points of the path by a given distance in a specified direction.

Parameters
inDistanceThe distance by which the points of the path should be shifted. Range [0, +inf].
inDirectionThe direction in which the points should be shifted.
Returns
A new Path object with shifted points.

◆ Translate()

Path oevislib_net.Path.Translate ( Vector2D inDelta,
TranslateAlignment inTranslateAlignment,
bool inInverse )
inline

Translates each point of the path using the provided vector.

Parameters
inDeltaTranslation vector.
inTranslateAlignmentCoordinate system used for translation.
inInverseIf true, the vector with the opposite direction is used.
Returns
The translated path.

◆ TranslatePaths()

void oevislib_net.Path.TranslatePaths ( Array< Path > ioPaths,
Vector2D inDelta,
TranslateAlignment inTranslateAlignment,
bool inInverse )
inlinestatic

Translates each path of the provided array.

Parameters
ioPathsArray with paths that must be translated. The array will be modified in-place.
inDeltaTranslation vector.
inTranslateAlignmentCoordinate system used for translation.
inInverseIf true, the vector with the opposite direction is used.

◆ Transpose()

void oevislib_net.Path.Transpose ( )
inline

Flips x and y coordinates of each path's point.