예제 #1
0
        private int FindAxis(double[] dir)
        {
            int    r0 = 0;
            double d0 = double.MaxValue;

            foreach (PAxis Ax in Axes)
            {
                double v = PGeom.Dist2(dir, Ax.Dir);
                if (v < d0)
                {
                    d0 = v; r0 = Ax.Id + 1;
                }
                v = PGeom.Dist2Rev(dir, Ax.Dir);
                if (v < d0)
                {
                    d0 = v; r0 = -Ax.Id - 1;
                }
            }
            return(r0);
        }