C# Class R3.Geometry.Euclidean3D

Show file Open project: roice3/Honeycombs Class Usage Examples

Public Methods

Method Description
Coplanar ( Vector3D points ) : bool
DistanceLineLine ( Vector3D n1, Vector3D p1, Vector3D n2, Vector3D p2 ) : double
DistancePointLine ( Vector3D n1, Vector3D p1, Vector3D point ) : double
DistancePointPlane ( Vector3D normalVector, Vector3D planePoint, Vector3D point ) : double
DoSegmentsIntersect ( Vector3D a1, Vector3D a2, Vector3D b1, Vector3D b2 ) : bool

Checks to see if two segments intersect. This does not actually calculate the intersection point. It uses information from the following paper: http://www.geometrictools.com/Documentation/DistanceLine3Line3.pdf

MaxTriangleEdgeLengthAfterTransform ( Vector3D &p1, Vector3D &p2, Vector3D &p3, Vector3D>.System transform ) : double
NormalFrom3Points ( Vector3D p1, Vector3D p2, Vector3D p3 ) : Vector3D
NormalFrom3Points ( Vector3D p1, Vector3D p2, Vector3D p3, Vector3D>.System transform ) : Vector3D

Calculate a plane normal after a transformation function is applied to the points.

PointOnSegment ( Vector3D s1, Vector3D s2, Vector3D point ) : bool

Checks if a point is anywhere on a segment.

ProjectOntoLine ( Vector3D nl, Vector3D pl, Vector3D point ) : Vector3D
ProjectOntoPlane ( Vector3D normalVector, Vector3D planePoint, Vector3D point ) : Vector3D
TriangleAreaAfterTransform ( Vector3D &p1, Vector3D &p2, Vector3D &p3, Vector3D>.System transform ) : double

Method Details

Coplanar() public static method

public static Coplanar ( Vector3D points ) : bool
points Vector3D
return bool

DistanceLineLine() public static method

public static DistanceLineLine ( Vector3D n1, Vector3D p1, Vector3D n2, Vector3D p2 ) : double
n1 Vector3D
p1 Vector3D
n2 Vector3D
p2 Vector3D
return double

DistancePointLine() public static method

public static DistancePointLine ( Vector3D n1, Vector3D p1, Vector3D point ) : double
n1 Vector3D
p1 Vector3D
point Vector3D
return double

DistancePointPlane() public static method

public static DistancePointPlane ( Vector3D normalVector, Vector3D planePoint, Vector3D point ) : double
normalVector Vector3D
planePoint Vector3D
point Vector3D
return double

DoSegmentsIntersect() public static method

Checks to see if two segments intersect. This does not actually calculate the intersection point. It uses information from the following paper: http://www.geometrictools.com/Documentation/DistanceLine3Line3.pdf
public static DoSegmentsIntersect ( Vector3D a1, Vector3D a2, Vector3D b1, Vector3D b2 ) : bool
a1 Vector3D
a2 Vector3D
b1 Vector3D
b2 Vector3D
return bool

MaxTriangleEdgeLengthAfterTransform() public static method

public static MaxTriangleEdgeLengthAfterTransform ( Vector3D &p1, Vector3D &p2, Vector3D &p3, Vector3D>.System transform ) : double
p1 Vector3D
p2 Vector3D
p3 Vector3D
transform Vector3D>.System
return double

NormalFrom3Points() public static method

public static NormalFrom3Points ( Vector3D p1, Vector3D p2, Vector3D p3 ) : Vector3D
p1 Vector3D
p2 Vector3D
p3 Vector3D
return Vector3D

NormalFrom3Points() public static method

Calculate a plane normal after a transformation function is applied to the points.
public static NormalFrom3Points ( Vector3D p1, Vector3D p2, Vector3D p3, Vector3D>.System transform ) : Vector3D
p1 Vector3D
p2 Vector3D
p3 Vector3D
transform Vector3D>.System
return Vector3D

PointOnSegment() public static method

Checks if a point is anywhere on a segment.
public static PointOnSegment ( Vector3D s1, Vector3D s2, Vector3D point ) : bool
s1 Vector3D
s2 Vector3D
point Vector3D
return bool

ProjectOntoLine() public static method

public static ProjectOntoLine ( Vector3D nl, Vector3D pl, Vector3D point ) : Vector3D
nl Vector3D
pl Vector3D
point Vector3D
return Vector3D

ProjectOntoPlane() public static method

public static ProjectOntoPlane ( Vector3D normalVector, Vector3D planePoint, Vector3D point ) : Vector3D
normalVector Vector3D
planePoint Vector3D
point Vector3D
return Vector3D

TriangleAreaAfterTransform() public static method

public static TriangleAreaAfterTransform ( Vector3D &p1, Vector3D &p2, Vector3D &p3, Vector3D>.System transform ) : double
p1 Vector3D
p2 Vector3D
p3 Vector3D
transform Vector3D>.System
return double