HalfEdgeGraphSearch Class

Methods

Name Description
constructor(): HalfEdgeGraphSearch    
collectConnectedComponentsWithExteriorParityMasks(graph: , parityEdgeTester: undefined | HalfEdgeTestObject, parityMask: = HalfEdgeMask.NULL_MASK): [][] Static Collect arrays gathering faces by connected component.  
collectExtendedBoundaryLoopFromSeed(seed: , visitMask: , isBoundaryEdge: , announceEdge: (edge: , counter: number) => void): void Static Announce nodes that are "extended face boundary" by conditions (usually mask of node and mate) in test functions.  
collectExtendedBoundaryLoopsInGraph(graph: , exteriorMask: ): [][] Static Collect arrays of nodes "around the boundary" of a graph with extraneous (non-boundary) edges.  
collectFaceAreaSummary(source: | [], collectAllNodes: boolean = false, areaFunction: = HalfEdgeGraphSearch.signedFaceArea): SignedDataSummary<> Static Return a summary structure data about face (or other numeric quantity if the caller's areaFunction returns other value)  
findMinimumAreaFace(oneCandidateNodePerFace: | [], faceAreaFunction?: ): Static Search an array of faceSeed nodes for the face with the most negative area.  
isTriangulatedCCW(source: | [], allowMultipleNegativeAreaFaces: boolean = true, numPositiveExceptionsAllowed: number = 0): boolean Static * Test if the graph is triangulated.  
pointInOrOnFaceXY(seedNode: , x: number, y: number): undefined | number Static Test if (x,y) is inside (1), on an edge (0) or outside (-1) a face.  
signedFaceArea(node: ): number Static static method for face area computation -- useful as function parameter in collect FaceAreaSummary.  

Defined in

Last Updated: 20 June, 2023