Skip to content

editor › Globals › FilterCollinearEdges

Class: FilterCollinearEdges

Return a cycle of edges where we removed all collinear edges (edges where the next edges has the same or opposite direction).

Hierarchy

  • FilterCollinearEdges

Index

Methods

Methods

Static Private _edgeAndNextAreCollinear

▸ _edgeAndNextAreCollinear(edge: MeshHalfEdge): boolean

Defined in src/util/Polygon3DFixing/FilterCollinearEdges.ts:74

Parameters:

Name Type
edge MeshHalfEdge

Returns: boolean


Static Private _findNonCollinearStartEdge

▸ _findNonCollinearStartEdge(cycle: MeshHalfEdge[]): MeshHalfEdge | null

Defined in src/util/Polygon3DFixing/FilterCollinearEdges.ts:25

Parameters:

Name Type
cycle MeshHalfEdge[]

Returns: MeshHalfEdge | null


Static Private _skipCollinearEdges

▸ _skipCollinearEdges(cycle: MeshHalfEdge[], startEdge: MeshHalfEdge): MeshHalfEdge | null

Defined in src/util/Polygon3DFixing/FilterCollinearEdges.ts:48

Return null when the whole cycle degenerates.

Parameters:

Name Type Description
cycle MeshHalfEdge[] Has to be exactly one full cycle, no checks made here
startEdge MeshHalfEdge An edge not collinear with its next edge.

Returns: MeshHalfEdge | null


Static execute

▸ execute(cycle: MeshHalfEdge[]): MeshHalfEdge[] | null

Defined in src/util/Polygon3DFixing/FilterCollinearEdges.ts:10

Parameters:

Name Type
cycle MeshHalfEdge[]

Returns: MeshHalfEdge[] | null