Exemple #1
0
        public bool Contain(Point2D point, CoordPlane plane)
        {
            Point2D c0 = new Point2D(), c1 = new Point2D(), c2 = new Point2D(), c3 = new Point2D();

            switch (plane)
            {
            case CoordPlane.XY:
                c0 = new Point2D(Corners[0].X, Corners[0].Y);
                c1 = new Point2D(Corners[1].X, Corners[1].Y);
                c2 = new Point2D(Corners[2].X, Corners[2].Y);
                c3 = new Point2D(Corners[3].X, Corners[3].Y);
                break;

            case CoordPlane.XZ:
                c0 = new Point2D(Corners[0].X, Corners[0].Z);
                c1 = new Point2D(Corners[1].X, Corners[1].Z);
                c2 = new Point2D(Corners[2].X, Corners[2].Z);
                c3 = new Point2D(Corners[3].X, Corners[3].Z);
                break;

            case CoordPlane.YZ:
                c0 = new Point2D(Corners[0].Y, Corners[0].Z);
                c1 = new Point2D(Corners[1].Y, Corners[1].Z);
                c2 = new Point2D(Corners[2].Y, Corners[2].Z);
                c3 = new Point2D(Corners[3].Y, Corners[3].Z);
                break;
            }
            return(InsideQuadrangle(c0, c1, c2, c3, point));
        }
Exemple #2
0
        public CellFace Face(CoordPlane plane, FaceDistance distance)
        {
            switch (plane)
            {
            case CoordPlane.XY:
                switch (distance)
                {
                case FaceDistance.Near:         return(TopFace());

                case FaceDistance.Middle:       return(MiddleTopFace());

                default: /*FaceDistance.Far:*/ return(BottomFace());
                }

            case CoordPlane.XZ:
                switch (distance)
                {
                case FaceDistance.Near:         return(LeftFace());

                case FaceDistance.Middle:       return(MiddleLeftFace());

                default: /*FaceDistance.Far:*/ return(RightFace());
                }

            default:     // CoordPlane.YZ:
                switch (distance)
                {
                case FaceDistance.Near:         return(NearFace());

                case FaceDistance.Middle:       return(MiddleFrontFace());

                default: /*FaceDistance.Far:*/ return(FarFace());
                }
            }
        }
Exemple #3
0
        public Point2D Point2D(CoordPlane plane)
        {
            switch (plane)
            {
            case CoordPlane.XY:
                return(new Point2D(X, Y));

            case CoordPlane.XZ:
                return(new Point2D(X, Z));

            default:     //CoordPlane.XY:
                return(new Point2D(Y, Z));
            }
        }
Exemple #4
0
        public PointF ToPointF(CoordPlane plane)
        {
            switch (plane)
            {
            case CoordPlane.XY:
                return(new PointF((float)X, (float)Y));

            case CoordPlane.XZ:
                return(new PointF((float)X, (float)Z));

            default:     //CoordPlane.XY:
                return(new PointF((float)Y, (float)Z));
            }
        }