IPlane_DG Interface
 GetOrigin
 SetOrigin
 GetNormal
 SetNormal
 Init
 GetLocation
 SetLocation
 GetDistance
 GetPointLocation
 GetLineIntersection
 GetPlaneIntersection
 Mirror
 MirrorVector
 MirrorLine
 Copy
 Clone
A 3D plane
Point_DG GetOrigin()
void SetOrigin(Point_DG origin)
Vect_DG GetNormal()
void SetNormal(Vect_DG normal)
bool Init(Point_DG point0, Point_DG point1, Point_DG point2)
Returns false if the points are not in general position and the initialisation has failed
IFrame_DG GetLocation()
Returns frame x,y plane of which is this plane and z axis is a normal.
void SetLocation(IFrame_DG frame)
Defines this plane as coinsiding with x,y plane of frame
double GetDistance(Point_DG point, out Point_DG pointNearestInPlane)
Returns distance from point. The out pointNearestInPlane is the nearest point on this plane
int GetPointLocation(Point_DG point, double tolerance)
Returns 0 is the point is inside the plane, 1 if is on the side where normal points to and 1 otherwise
bool GetLineIntersection(ILine_DG line, out Point_DG intersection, out double positionLine)
Returns false if line is parallel to this or lies in this. [out] positionLine is parameter along line, which is the distance from origin of the line.
ILine_DG GetPlaneIntersection(IPlane_DG plane)
Returns intersection line of the two planes.
void Mirror(ref Point_DG point)
Mirros [in,out] point across this plane.
void MirrorVector(ref Vect_DG vector)
Mirros [in,out] vector across this plane.
void MirrorLine(ref ILine_DG line)
Mirros [in,out] line across this plane.
void Copy(IPlane_DG plane)
IPlane_DG Clone()
Returns a new copy of this.
