C# 클래스 Poly2Tri.Triangulation.TriangulationUtil

파일 보기 프로젝트 열기: scastle/Solitude

공개 프로퍼티들

프로퍼티 타입 설명
EPSILON double

공개 메소드들

메소드 설명
InScanArea ( TriangulationPoint pa, TriangulationPoint pb, TriangulationPoint pc, TriangulationPoint pd ) : bool
Orient2d ( TriangulationPoint pa, TriangulationPoint pb, TriangulationPoint pc ) : Orientation
SmartIncircle ( TriangulationPoint pa, TriangulationPoint pb, TriangulationPoint pc, TriangulationPoint pd ) : bool

Requirements: 1. a,b and c form a triangle. 2. a and d is know to be on opposite side of bc a + / \ / \ b/ \c +-------+ / B \ / \ Facts: d has to be in area B to have a chance to be inside the circle formed by a,b and c d is outside B if orient2d(a,b,d) or orient2d(c,a,d) is CW This preknowledge gives us a way to optimize the incircle test

메소드 상세

InScanArea() 공개 정적인 메소드

public static InScanArea ( TriangulationPoint pa, TriangulationPoint pb, TriangulationPoint pc, TriangulationPoint pd ) : bool
pa TriangulationPoint
pb TriangulationPoint
pc TriangulationPoint
pd TriangulationPoint
리턴 bool

Orient2d() 공개 정적인 메소드

public static Orient2d ( TriangulationPoint pa, TriangulationPoint pb, TriangulationPoint pc ) : Orientation
pa TriangulationPoint
pb TriangulationPoint
pc TriangulationPoint
리턴 Orientation

SmartIncircle() 공개 정적인 메소드

Requirements: 1. a,b and c form a triangle. 2. a and d is know to be on opposite side of bc a + / \ / \ b/ \c +-------+ / B \ / \ Facts: d has to be in area B to have a chance to be inside the circle formed by a,b and c d is outside B if orient2d(a,b,d) or orient2d(c,a,d) is CW This preknowledge gives us a way to optimize the incircle test
public static SmartIncircle ( TriangulationPoint pa, TriangulationPoint pb, TriangulationPoint pc, TriangulationPoint pd ) : bool
pa TriangulationPoint triangle point, opposite d
pb TriangulationPoint triangle point
pc TriangulationPoint triangle point
pd TriangulationPoint point opposite a
리턴 bool

프로퍼티 상세

EPSILON 공개적으로 정적으로 프로퍼티

public static double EPSILON
리턴 double