Spline2D
Canonical path: NemAll_Python_Geometry.Spline2D
Bases: PolyPoints2D
Representation class for 2D spline.
Methods:
-
Clear–Remove all points from vector.
-
Count–Get count of points.
-
Empty–Return true if no points, otherwise false.
-
EqualRef–Test if reference points are equal.
-
GetControlPoints–Compute bezier control points
-
GetEndPoint–Get the end point in world coordinate system.
-
GetEndRelPoint–Get the end point
-
GetEndVector–Get end vector.
-
GetLastPoint–Get the last point in world coordinate system.
-
GetPoint–Get point in world coordinate system.
-
GetPointIndex–Get index of the given point
-
GetPointIndexes–Get indexes of the given point, in case that several points in the spline
-
GetRefPoint–Get reference point.
-
GetRelPoint–Get point in Local coordinate system.
-
GetStartPoint–Get the start point in world coordinate system.
-
GetStartRelPoint–Get the start point
-
GetStartVector–Get start vector.
-
Insert–Overloaded function. See individual overloads.
-
InsertRel–Insert relative point at specific position. Used local coordinates.
-
IsClosed–Check if spline is closed ( first/last points are equal )
-
Remove–Remove point from specific position.
-
RemoveLastPoint–Remove the last point
-
Reserve–Reserve container capacity
-
Resize–Specifies a new size for the points vector.
-
Reverse–Reverse of current spline
-
SetEndPoint–Set the end point in world coordinates
-
SetEndVector–Set end vector.
-
SetPoint–Set point at given position in world coordinate system.
-
SetRefPoint–Set reference point in world coordinate system.
-
SetRelPoint–Set point at given position in relative coordinate system.
-
SetStartPoint–Set the start point in world coordinates
-
SetStartVector–Set start vector.
-
ToLineChain–Get polyline as a chain of lines composed from 2 points.
-
__eq__–Comparison of splines.
-
__getitem__–Get point at position from index. Used world coordinates.
-
__iadd__–Addition assignment operator
-
__init__–Overloaded function. See individual overloads.
-
__mul__–Multiple Spline with matrix.
-
__repr__–Convert to string
-
__setitem__–Set a value at position from index.
Attributes:
-
EndPoint(Point2D) –Get the end point in world coordinate system.
-
EndRelPoint(Point2D) –Get the end point
-
EndVector(Vector2D) –Get end vector.
-
LastPoint(Point2D) –Get the last point in world coordinate system.
-
Points(list[Point2D]) –Get the points
-
RefPoint(Point2D) –Get reference point.
-
StartPoint(Point2D) –Get the start point in world coordinate system.
-
StartRelPoint(Point2D) –Get the start point
-
StartVector(Vector2D) –Get start vector.
EqualRef
EqualRef(polyPoints: PolyPoints2D) -> bool
Test if reference points are equal.
Parameters:
-
polyPoints(PolyPoints2D) –the PolyPoints.
Returns:
-
bool–Reference points are equal: true/false
GetControlPoints
GetControlPoints() -> tuple[eGeometryErrorCode, Point2DList]
Compute bezier control points
Returns:
-
tuple[eGeometryErrorCode, Point2DList]–tuple(error code, vector of control points)
GetEndPoint
GetEndPoint() -> Point2D
Get the end point in world coordinate system.
Returns:
-
Point2D–end point in world coordinate system
GetLastPoint
GetLastPoint() -> Point2D
Get the last point in world coordinate system.
Returns:
-
Point2D–last point in world coordinate system
GetPoint
GetPoint(index: int) -> Point2D
Get point in world coordinate system.
This method is checked and throwing Geometry::Exception when index is out of range.
Parameters:
-
index(int) –point index.
Returns:
-
Point2D–point point in world coordinate system.
GetPointIndex
GetPointIndexes
GetRefPoint
GetRefPoint() -> Point2D
GetRelPoint
GetRelPoint(index: int) -> Point2D
Get point in Local coordinate system.
This method is checked and throwing Geometry::Exception when index is out of range.
Parameters:
-
index(int) –point index.
Returns:
-
Point2D–point the point at position index.
GetStartPoint
GetStartPoint() -> Point2D
Get the start point in world coordinate system.
Returns:
-
Point2D–start point in world coordinate system
Insert
overloaded
Insert(point: Point2D, position: int = 18446744073709551615) -> bool
Insert a point at specified position.
Parameters:
-
point(Point2D) –point which will be inserted.
-
position(int, default:18446744073709551615) –Position where the point has to be inserted.
Returns:
-
bool–true if insert was successfully.
Insert(polyPoints: PolyPoints2D, position: int = 18446744073709551615) -> bool
Insert vector of points at specific position.
If return false then points weren't inserted.
Parameters:
-
polyPoints(PolyPoints2D) –the PolyPoints.
-
position(int, default:18446744073709551615) –position where points will be inserted.
Returns:
-
bool–bool true if successful.
InsertRel
InsertRel(point: Point2D, position: int = 18446744073709551615) -> bool
Insert relative point at specific position. Used local coordinates.
If return false then points weren't Inserted.
Parameters:
-
point(Point2D) –the Point.
-
position(int, default:18446744073709551615) –position where points will be inserted.
Returns:
-
bool–bool true if successful.
IsClosed
Check if spline is closed ( first/last points are equal )
Returns:
-
bool–closed spline true/false
Remove
Remove point from specific position.
If return false then points weren't removed.
Parameters:
-
position(int) –position of point which will be removed.
Returns:
-
bool–Point removed: true/false
RemoveLastPoint
Remove the last point
Returns:
-
bool–Point removed: true/false
Reserve
Reserve container capacity
Parameters:
-
newCount(int) –Expected size of container [count of points]
Resize
Specifies a new size for the points vector.
Parameters:
-
newSize(int) –The new size of the points vector.
Reverse
Reverse of current spline
Method reverse Spline using reverse from PolyPoints and swapping tangents.
SetEndPoint
SetEndPoint(endpoint: Point2D)
SetEndVector
SetEndVector(vec: Vector2D)
SetPoint
SetPoint(point: Point2D, index: int)
Set point at given position in world coordinate system.
Parameters:
-
point(Point2D) –point in the world coordinate system.
-
index(int) –index of point which will be set
SetRefPoint
SetRefPoint(refPoint: Point2D)
Set reference point in world coordinate system.
Parameters:
-
refPoint(Point2D) –reference point in the world coordinate system.
SetRelPoint
SetRelPoint(point: Point2D, index: int)
Set point at given position in relative coordinate system.
Parameters:
-
point(Point2D) –point in the relative coordinate system.
-
index(int) –index of point which will be set
SetStartPoint
SetStartPoint(startpoint: Point2D)
SetStartVector
SetStartVector(vec: Vector2D)
ToLineChain
ToLineChain() -> Point2DList
Get polyline as a chain of lines composed from 2 points.
Returns:
-
Point2DList–vector of lines composed from 2 points (start and end point of a line)
__eq__
__eq__(spline: Spline2D) -> bool
Comparison of splines.
Be careful, this method work without tolerance!
Parameters:
-
spline(Spline2D) –spline to be compared.
Returns:
-
bool–True when splines are equal, otherwise false.
__getitem__
__getitem__(index: int) -> Point2D
Get point at position from index. Used world coordinates.
This method is checked and throwing Geometry::Exception when index is out of range.
Parameters:
-
index(int) –point index.
Returns:
-
Point2D–copy of point.