Skip to content

editorGlobalsEarcutPolygonTriangulator

Class: EarcutPolygonTriangulator

Takes a polygon and triangulates it into the internal data structure

Hierarchy

EarcutPolygonTriangulator

Index

Properties

Methods

Properties

Protected steinerPointDistanceLevels

steinerPointDistanceLevels: number[] = [256, 128, 32, 16, 8, 4, 2]

Inherited from PolygonTriangulator.steinerPointDistanceLevels

Defined in src/util/polygon/triangulatingClipper/Triangulator/PolygonTriangulator.ts:22

Methods

Protected _generateSteinerPoints

_generateSteinerPoints(polygon: Polygon | MultiPolygon, options: ISteinerPointOptions): Array‹object›

Inherited from PolygonTriangulator._generateSteinerPoints

Defined in src/util/polygon/triangulatingClipper/Triangulator/PolygonTriangulator.ts:46

Steiner points are additional triangulation points inside the polygon that are triangulated to optimize the quality of the triangulation solution. we add regularly spaced steiner points in order to prevent long (and degenerated) triangles.

Parameters:

Name Type Default
polygon Polygon | MultiPolygon -
options ISteinerPointOptions {}

Returns: Array‹object›


Private _getPointsAsVectorFromFlattened

_getPointsAsVectorFromFlattened(pointsFlattened: number[]): Vector3[]

Defined in src/util/polygon/triangulatingClipper/Triangulator/EarcutPolygonTriangulator.ts:53

Parameters:

Name Type
pointsFlattened number[]

Returns: Vector3[]


Private _getTriangleIndicesFromTriangulation

_getTriangleIndicesFromTriangulation(earcutTriangles: any): Array‹[number, number, number]›

Defined in src/util/polygon/triangulatingClipper/Triangulator/EarcutPolygonTriangulator.ts:61

Parameters:

Name Type
earcutTriangles any

Returns: Array‹[number, number, number]›


Private _reconstructTriangles

_reconstructTriangles(pointsAsVectors: Vector3[], trianglesAsIndices: Array‹[number, number, number]›): Triangle[]

Inherited from PolygonTriangulator._reconstructTriangles

Defined in src/util/polygon/triangulatingClipper/Triangulator/PolygonTriangulator.ts:161

Parameters:

Name Type Description
pointsAsVectors Vector3[] -
trianglesAsIndices Array‹[number, number, number]› indices into the pointsAsVectors array

Returns: Triangle[]


triangulate

triangulate(polygon: Polygon): Triangle‹›[]

Overrides PolygonTriangulator.triangulate

Defined in src/util/polygon/triangulatingClipper/Triangulator/EarcutPolygonTriangulator.ts:16

Parameters:

Name Type Description
polygon Polygon -

Returns: Triangle‹›[]