Beispiel #1
0
        public static DxfVector RightVectorFromNormal(DxfVector normal)
        {
            // compute a right (x-axis) vector from a given normal as per the Arbitrary Axis Algorithm
            // http://help.autodesk.com/view/OARX/2020/ENU/?guid=GUID-E19E5B42-0CC7-4EBA-B29F-5E1D595149EE
            var axisEpsilon = 1.0 / 64.0;

            if (Math.Abs(normal.X) < axisEpsilon && Math.Abs(normal.Y) < axisEpsilon)
            {
                return(YAxis.Cross(normal));
            }
            else
            {
                return(ZAxis.Cross(normal));
            }
        }