C# Class Vertesaur.PolygonOperation.PolygonIntersectionOperation.PolygonCrossingsAlgorithmKernel

Exibir arquivo Open project: aarondandy/vertesaur

Public Properties

Property Type Description
A Polygon2
B Polygon2
EntranceHops PolygonCrossing>.Dictionary
Entrances HashSet
ExitHops PolygonCrossing>.Dictionary
Exits HashSet
RingCrossingsA PolygonRingCrossingLookup
RingCrossingsB PolygonRingCrossingLookup
VisitedCrossings List
VisitedCrossingsRingIndicesA HashSet
VisitedCrossingsRingIndicesB HashSet

Public Methods

Method Description
Turtle ( PointWinding fillWinding ) : IntersectionResults

Private Methods

Method Description
ApplyCrossingVisit ( PolygonCrossing crossing ) : void
BuildFinalResults ( Polygon2 intersectedPolygon ) : IntersectionResults
CodeContractInvariants ( ) : void
FilterQualifiedRingsToBoundaryTree ( List rings, RingBoundaryTree boundaryTree ) : IEnumerable
FindNextStartableEntrance ( ) : PolygonCrossing
FindUntouchedRingsA ( ) : Polygon2
FindUntouchedRingsB ( ) : Polygon2
PolygonCrossingsAlgorithmKernel ( Polygon2 a, Polygon2 b, List crossings ) : System
TraverseASide ( PolygonCrossing exit, List buildingRing ) : PolygonCrossing
TraverseASideHops ( PolygonCrossing start ) : PolygonCrossing
TraverseASideRing ( List buildingRing, PolygonCrossing fromCrossing, PolygonCrossing ringCrossings ) : PolygonCrossing
TraverseBSide ( PolygonCrossing entrance, List buildingRing ) : PolygonCrossing
TraverseBSideHops ( PolygonCrossing start ) : PolygonCrossing
TraverseBSideRing ( List buildingRing, PolygonCrossing fromCrossing, PolygonCrossing ringCrossings ) : PolygonCrossing
VisitEntrance ( PolygonCrossing entrance ) : void
VisitExit ( PolygonCrossing exit ) : void

Method Details

Turtle() public method

public Turtle ( PointWinding fillWinding ) : IntersectionResults
fillWinding PointWinding
return IntersectionResults

Property Details

A public_oe property

public Polygon2 A
return Polygon2

B public_oe property

public Polygon2 B
return Polygon2

EntranceHops public_oe property

public Dictionary EntranceHops
return PolygonCrossing>.Dictionary

Entrances public_oe property

public HashSet Entrances
return HashSet

ExitHops public_oe property

public Dictionary ExitHops
return PolygonCrossing>.Dictionary

Exits public_oe property

public HashSet Exits
return HashSet

RingCrossingsA public_oe property

public PolygonRingCrossingLookup RingCrossingsA
return PolygonRingCrossingLookup

RingCrossingsB public_oe property

public PolygonRingCrossingLookup RingCrossingsB
return PolygonRingCrossingLookup

VisitedCrossings public_oe property

public List VisitedCrossings
return List

VisitedCrossingsRingIndicesA public_oe property

public HashSet VisitedCrossingsRingIndicesA
return HashSet

VisitedCrossingsRingIndicesB public_oe property

public HashSet VisitedCrossingsRingIndicesB
return HashSet