Shapemetry API / Polyline
Class: Polyline
Defined in: core/Polyline.ts:16
Polyline (sequence of points, optionally closed).
Stored representation: points never repeats first/last. closed is the loop flag. fromJSON auto-detects an explicit closing point and strips it (forcing closed=true).
Constructors
Constructor
new Polyline(
points,isClosed?):Polyline
Defined in: core/Polyline.ts:20
Parameters
points
Point[]
isClosed?
boolean = false
Returns
Polyline
Properties
points
points:
Point[]
Defined in: core/Polyline.ts:17
isClosed
isClosed:
boolean
Defined in: core/Polyline.ts:18
Methods
toJSON()
toJSON():
PolylineJSON
Defined in: core/Polyline.ts:25
Returns
fromJSON()
staticfromJSON(d):Polyline
Defined in: core/Polyline.ts:30
Parameters
d
Returns
Polyline
length()
length():
number
Defined in: core/Polyline.ts:40
Returns
number
reverse()
reverse():
Polyline
Defined in: core/Polyline.ts:55
Returns
Polyline
centroid()
centroid():
Point
Defined in: core/Polyline.ts:57
Returns
boundingBox()
boundingBox():
BoundingBox
Defined in: core/Polyline.ts:65
Returns
isCoplanar()
isCoplanar(
tol?):boolean
Defined in: core/Polyline.ts:67
Parameters
tol?
number = 1e-10
Returns
boolean
fitPlane()
fitPlane():
Plane
Defined in: core/Polyline.ts:79
Best-fit plane via PCA: smallest eigenvector of the centered point covariance (Jacobi 3×3 eigendecomposition).
Returns
normal()
normal():
Vector
Defined in: core/Polyline.ts:126
Newell's normal — treats points as a closed ring.
Returns
signedArea()
signedArea(
referenceNormal):number
Defined in: core/Polyline.ts:141
Signed area against reference normal — treats points as a closed ring. Positive = CCW from refNormal side.
Parameters
referenceNormal
Returns
number
containsPoint()
containsPoint(
p):boolean
Defined in: core/Polyline.ts:156
Point-in-ring test (projects to ring plane, even-odd rule). Treats points as a closed ring.
Parameters
p
Returns
boolean
makeUnique()
makeUnique(
tol?):Polyline
Defined in: core/Polyline.ts:181
Parameters
tol?
number = 1e-10
Returns
Polyline
transform()
transform(
tr):Polyline
Defined in: core/Polyline.ts:189
Parameters
tr
Returns
Polyline
clone()
clone():
Polyline
Defined in: core/Polyline.ts:193
Returns
Polyline