Click or drag to resize

TriangulationUtilSmartIncircle Method

Requirements: 1. a,b and c form a triangle. 2. a and d is know to be on opposite side of bc
C#
      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

Namespace: Poly2Tri
Assembly: AltaxoBase (in AltaxoBase.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public static bool SmartIncircle(
	TriangulationPoint pa,
	TriangulationPoint pb,
	TriangulationPoint pc,
	TriangulationPoint pd
)

Parameters

pa  TriangulationPoint
triangle point, opposite d
pb  TriangulationPoint
triangle point
pc  TriangulationPoint
triangle point
pd  TriangulationPoint
point opposite a

Return Value

Boolean
true if d is inside circle, false if on circle edge
See Also