Polyline3D
Canonical path: NemAll_Python_Geometry.Polyline3D
Bases: PolyPoints3D
Representation class for 3D Polyline.
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.
-
GetEndPoint
–Get the end point in world coordinate system.
-
GetEndRelPoint
–Get the end point
-
GetLastPoint
–Get the last point in world coordinate system.
-
GetLine
–Extract a line
-
GetLines
–get lines from polyline
-
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
-
Insert
–Overloaded function. See individual overloads.
-
InsertPolyline
–Insert another polyline at given position
-
InsertRel
–Insert relative point at specific position. Used local coordinates.
-
IsPlanar
–Check if polyline is on one plane
-
IsValid
–Check if the polygon is valid ( has at least 2 points )
-
Is_Planar
–Check if polyline is on one plane
-
LineCount
–Get the count of lines connecting the points
-
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 Polyline orientation
-
SetEndPoint
–Set the end point in world coordinates
-
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
-
ToLineChain
–Get polyline as a chain of lines composed from 2 points.
-
__eq__
–Equal operator
-
__getitem__
–Get point at position from index. Used world coordinates.
-
__iadd__
–Overloaded function. See individual overloads.
-
__init__
–Overloaded function. See individual overloads.
-
__mul__
–Multiple Polyline with matrix
-
__ne__
–Not equal operator
-
__repr__
–Convert to string
-
__setitem__
–Set a value at position from index.
Attributes:
-
EndPoint
(Point3D
) –Get the end point in world coordinate system.
-
EndRelPoint
(Point3D
) –Get the end point
-
LastPoint
(Point3D
) –Get the last point in world coordinate system.
-
Points
(list[Point3D]
) –Get the points
-
RefPoint
(Point3D
) –Get reference point.
-
StartPoint
(Point3D
) –Get the start point in world coordinate system.
-
StartRelPoint
(Point3D
) –Get the start point
EqualRef
EqualRef(polyPoints: PolyPoints3D) -> bool
Test if reference points are equal.
Parameters:
-
polyPoints
(PolyPoints3D
) –the PolyPoints.
Returns:
-
bool
–Reference points are equal: true/false
GetEndPoint
GetEndPoint() -> Point3D
Get the end point in world coordinate system.
Returns:
-
Point3D
–end point in world coordinate system
GetLastPoint
GetLastPoint() -> Point3D
Get the last point in world coordinate system.
Returns:
-
Point3D
–last point in world coordinate system
GetLine
GetLine(index: int) -> Line3D
GetPoint
GetPoint(index: int) -> Point3D
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:
-
Point3D
–point point in world coordinate system.
GetPointIndex
GetPointIndexes
GetRefPoint
GetRefPoint() -> Point3D
GetRelPoint
GetRelPoint(index: int) -> Point3D
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:
-
Point3D
–point the point at position index.
GetStartPoint
GetStartPoint() -> Point3D
Get the start point in world coordinate system.
Returns:
-
Point3D
–start point in world coordinate system
Insert
overloaded
Insert(polyPoints: PolyPoints3D, position: int = 18446744073709551615) -> bool
Insert vector of points at specific position.
If return false then points weren't inserted.
Parameters:
-
polyPoints
(PolyPoints3D
) –the PolyPoints.
-
position
(int
, default:18446744073709551615
) –position where points will be inserted.
Returns:
-
bool
–bool true if successful.
Insert(point: Point3D, position: int = 18446744073709551615) -> bool
Insert point at specific position. Used world coordinates.
If return false then points weren't Inserted.
Parameters:
-
point
(Point3D
) –the Point.
-
position
(int
, default:18446744073709551615
) –position where points will be inserted.
Returns:
-
bool
–bool true if successful.
InsertPolyline
InsertPolyline(
polyline: Polyline3D, position: int = 18446744073709551615
) -> bool
Insert another polyline at given position
Parameters:
-
polyline
(Polyline3D
) –Polyline to be inserted
-
position
(int
, default:18446744073709551615
) –Position where the polyline has to be inserted
Returns:
-
bool
–true if successful
InsertRel
InsertRel(point: Point3D, position: int = 18446744073709551615) -> bool
Insert relative point at specific position. Used local coordinates.
If return false then points weren't Inserted.
Parameters:
-
point
(Point3D
) –the Point.
-
position
(int
, default:18446744073709551615
) –position where points will be inserted.
Returns:
-
bool
–bool true if successful.
IsPlanar
IsValid
Check if the polygon is valid ( has at least 2 points )
For additional point validation use Service::Validate.
Returns:
-
bool
–true if is valid
Is_Planar
Is_Planar() -> tuple[eGeometryErrorCode, bool, Plane3D]
Check if polyline is on one plane
Returns:
-
tuple[eGeometryErrorCode, bool, Plane3D]
–tuple(first: error; second: true if polyline is on one plane, if polyline is on one plane the plane is calculated)
LineCount
Get the count of lines connecting the points
Returns:
-
int
–count of lines
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.
SetEndPoint
SetEndPoint(endpoint: Point3D)
SetPoint
SetPoint(point: Point3D, index: int)
Set point at given position in world coordinate system.
Parameters:
-
point
(Point3D
) –point in the world coordinate system.
-
index
(int
) –index of point which will be set
SetRefPoint
SetRefPoint(refPoint: Point3D)
Set reference point in world coordinate system.
Parameters:
-
refPoint
(Point3D
) –reference point in the world coordinate system.
SetRelPoint
SetRelPoint(point: Point3D, index: int)
Set point at given position in relative coordinate system.
Parameters:
-
point
(Point3D
) –point in the relative coordinate system.
-
index
(int
) –index of point which will be set
SetStartPoint
SetStartPoint(startpoint: Point3D)
ToLineChain
ToLineChain() -> Point3DList
Get polyline as a chain of lines composed from 2 points.
Returns:
-
Point3DList
–vector of lines composed from 2 points (start and end point of a line)
__eq__
__eq__(polyline2: Polyline3D) -> bool
Equal operator
Parameters:
-
polyline2
(Polyline3D
) –Second polyline
Returns:
-
bool
–Polyline3D are equal
__getitem__
__getitem__(index: int) -> Point3D
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:
-
Point3D
–copy of point.
__iadd__
overloaded
__iadd__(polyline: Polyline3D) -> Polyline3D
Additional assignment operator
Parameters:
-
polyline
(Polyline3D
) –Polyline which will be added to current polyline
Returns:
-
Polyline3D
–Reference to polyline
__iadd__(point: Point3D) -> Polyline3D
Addition assignment operator
Parameters:
-
point
(Point3D
) –New Point3D which will be added to the polyline
Returns:
-
Polyline3D
–Reference to polyline
__iadd__(line: Line3D) -> Polyline3D
Addition assignment operator
Parameters:
-
line
(Line3D
) –Line3D which will be added to the polyline
Returns:
-
Polyline3D
–Reference to polyline
__init__
overloaded
Initialize
__init__(pntList: list[Point3D])
__init__(polyline: Polyline3D)
__init__(polyline: Polyline3D, skip: int, count: int)
Copy constructor with limited scope
Parameters:
-
polyline
(Polyline3D
) –Polyline which will be copied
-
skip
(int
) –count of points ignored at start.
-
count
(int
) –count of points copied.
__init__(points: Point3DList)
Vector points constructor.
Parameters:
-
points
(Point3DList
) –Vector of points which will be moved to polyline
__mul__
__mul__(matrix: Matrix3D) -> Polyline3D
Multiple Polyline with matrix
Parameters:
-
matrix
(Matrix3D
) –Transformation matrix
Returns:
-
Polyline3D
–Transformed polyline
__ne__
__ne__(polyline2: Polyline3D) -> bool
Not equal operator
Parameters:
-
polyline2
(Polyline3D
) –Second polyline
Returns:
-
bool
–Polyline3D are equal