Skip to content

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