editor › Globals › FixTouchingCycles
Class: FixTouchingCycles
Given a polygon where a hole touches the outline or two holes touch each other, this will unite the touching cycles. e.g. hole + hole = new hole hole + outline = new outline
Note 1: This may create duplicate points. Note 2: This does not fix self-touching polygons. Note 3. This is similar to what happens in the polygon clipping, but in 3D.
Hierarchy
- FixTouchingCycles
Index
Methods
Methods
Static Private _mergeCycles
▸ _mergeCycles(cycle: Vector3[], otherCycle: Vector3[]): Vector3[] | null
Defined in src/util/Polygon3DFixing/FixTouchingCycles.ts:57
Parameters:
| Name | Type |
|---|---|
cycle |
Vector3[] |
otherCycle |
Vector3[] |
Returns: Vector3[] | null
Static Private _mergeOverlappingSections
▸ _mergeOverlappingSections(cycle: Vector3[], otherCycle: Vector3[]): Vector3[] | null
Defined in src/util/Polygon3DFixing/FixTouchingCycles.ts:92
Parameters:
| Name | Type |
|---|---|
cycle |
Vector3[] |
otherCycle |
Vector3[] |
Returns: Vector3[] | null
Static Private _mergeSharedSection
▸ _mergeSharedSection(cycle: Vector3[], otherCycle: Vector3[]): Vector3[] | null
Defined in src/util/Polygon3DFixing/FixTouchingCycles.ts:65
Parameters:
| Name | Type |
|---|---|
cycle |
Vector3[] |
otherCycle |
Vector3[] |
Returns: Vector3[] | null
Static Private _mergeTouchingInPoint
▸ _mergeTouchingInPoint(cycle: Vector3[], otherCycle: Vector3[]): Vector3[] | null
Defined in src/util/Polygon3DFixing/FixTouchingCycles.ts:186
Parameters:
| Name | Type |
|---|---|
cycle |
Vector3[] |
otherCycle |
Vector3[] |
Returns: Vector3[] | null
Static execute
▸ execute(polygon: VectorPolygon3D): VectorPolygon3D
Defined in src/util/Polygon3DFixing/FixTouchingCycles.ts:15
Parameters:
| Name | Type |
|---|---|
polygon |
VectorPolygon3D |
Returns: VectorPolygon3D