Skip to content

MathNet.Spatial.Euclidean.Line3D retruns UnExpected NULL  #239

@ASCmetrology

Description

@ASCmetrology

MathNet.Spatial.Euclidean.Line3D Intersection with Plane returns unexpected NULL:

//------------------------------------
// Immediate below FAILS, expecting (200, ~0, ~0) but receive aPtint = NULL:

                MathNet.Spatial.Euclidean.Point3D LinePt1 = new Point3D(200, 0, 0);
                MathNet.Spatial.Euclidean.Point3D LinePt2 = new Point3D(100, 0, 0);
                Line3D a_Line3D = new Line3D(LinePt1, LinePt2);
                        Ap = -100; Bp = 0; Cp = -3.979039320256561E-13;
                    Vector3D aNormal = new Vector3D(Ap, Bp, Cp);                         
                UnitVector3D aNormalV = aNormal.Normalize();
                Point3D PtOnPlane = new Point3D(200, -100, 100);
                Plane a_Plane = new Plane(PtOnPlane, aNormalV);
                Point3D? aPtint = new Point3D();
                aPtint = a_Line3D.IntersectionWith(a_Plane, 4.9E-324);  //returns unexpected NULL.

//------------------------------------

Below DOES work, receives aPtint = (200, 0, 0);

                MathNet.Spatial.Euclidean.Point3D LinePt1 = new Point3D(200, 0, 0);
                MathNet.Spatial.Euclidean.Point3D LinePt2 = new Point3D(100, 0, 0);
                Line3D a_Line3D = new Line3D(LinePt1, LinePt2);
                    Vector3D aNormal = new Vector3D(-100, 0, 0);
                UnitVector3D aNormalV = aNormal.Normalize();
                Point3D PtOnPlane = new Point3D(200, -100, 100); 
                Plane a_Plane = new Plane(PtOnPlane, aNormalV); 
                Point3D? aPtint = new Point3D();
                aPtint = a_Line3D.IntersectionWith(a_Plane, 4.9E-324);

Notes:
_difference in above is changing Cp value from -3.979039320256561E-13 to 0;
_modification of error epsilon from 4.9E-324 to 0 etc did not change results.
_employing using VS 2017 fully updated; Working as expected for all other code within subject test.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions