Example #1
0
 public Coord(decimal X, decimal Y, decimal Z)
 {
     this.X   = X;
     this.Y   = Y;
     this.Z   = Z;
     this.Set = CoordSet.All;
 }
Example #2
0
 public Coord(Coord coord)
 {
     this.X   = coord.X;
     this.Y   = coord.Y;
     this.Z   = coord.Z;
     this.Set = coord.Set;
 }
Example #3
0
 public Coord()
 {
     this.X   = 0M;
     this.Y   = 0M;
     this.Z   = 0M;
     this.Set = CoordSet.None;
 }
Example #4
0
 public Coord(Coord coord)
 {
     X   = coord.X;
     Y   = coord.Y;
     Z   = coord.Z;
     Set = coord.Set;
 }
Example #5
0
 public Coord(decimal x, decimal y, decimal z)
 {
     X   = x;
     Y   = y;
     Z   = z;
     Set = CoordSet.All;
 }
Example #6
0
        public Coord(decimal a, decimal b, CoordSet addCoord = CoordSet.Z)
        {
            switch (addCoord)
            {
            case CoordSet.X:
                X   = 0M;
                Y   = a;
                Z   = b;
                Set = CoordSet.Y | CoordSet.Z;
                break;

            case CoordSet.Y:
                X   = a;
                Y   = 0M;
                Z   = b;
                Set = CoordSet.X | CoordSet.Z;
                break;

            default:
                X   = a;
                Y   = b;
                Z   = 0M;
                Set = CoordSet.X | CoordSet.Y;
                break;
            }
        }
Example #7
0
 public Coord()
 {
     X   = 0M;
     Y   = 0M;
     Z   = 0M;
     Set = CoordSet.None;
 }
Example #8
0
    public PointF ToPointF(CoordSet dropCoord = CoordSet.Z)
    {
        if (dropCoord == CoordSet.X)
        {
            return(new PointF((float)(this.Y), (float)(this.Z)));
        }
        else if (dropCoord == CoordSet.Y)
        {
            return(new PointF((float)(this.X), (float)(this.Z)));
        }

        return(new PointF((float)(this.X), (float)(this.Y)));
    }
Example #9
0
        public PointF ToPointF(CoordSet dropCoord = CoordSet.Z)
        {
            switch (dropCoord)
            {
            case CoordSet.X:
                return(new PointF((float)Y, (float)Z));

            case CoordSet.Y:
                return(new PointF((float)X, (float)Z));

            default:
                return(new PointF((float)X, (float)Y));
            }
        }
Example #10
0
    public static List <CoordSet> GetSquareSets(Coord start)
    {
        List <CoordSet> ret = new List <CoordSet> ();
        CoordSet        a   = new CoordSet();

        a.coords = new List <Coord> ();
        a.coords.Add(start);
        a.coords.Add(new Coord(start.x - 1, start.y + 1));
        a.coords.Add(new Coord(start.x, start.y + 1));
        a.coords.Add(new Coord(start.x - 1, start.y));

        CoordSet b = new CoordSet();

        b.coords = new List <Coord> ();
        b.coords.Add(start);
        b.coords.Add(new Coord(start.x, start.y + 1));
        b.coords.Add(new Coord(start.x + 1, start.y + 1));
        b.coords.Add(new Coord(start.x + 1, start.y));

        CoordSet c = new CoordSet();

        c.coords = new List <Coord> ();
        c.coords.Add(start);
        c.coords.Add(new Coord(start.x - 1, start.y));
        c.coords.Add(new Coord(start.x - 1, start.y - 1));
        c.coords.Add(new Coord(start.x, start.y - 1));

        CoordSet d = new CoordSet();

        d.coords = new List <Coord> ();
        d.coords.Add(start);
        d.coords.Add(new Coord(start.x + 1, start.y));
        d.coords.Add(new Coord(start.x, start.y - 1));
        d.coords.Add(new Coord(start.x + 1, start.y - 1));

        ret.Add(a);
        ret.Add(b);
        ret.Add(c);
        ret.Add(d);
        return(ret);
    }
Example #11
0
 public Coord(decimal A, decimal B, CoordSet addCoord = CoordSet.Z)
 {
     if (addCoord == CoordSet.X)
     {
         this.X   = 0M;
         this.Y   = A;
         this.Z   = B;
         this.Set = CoordSet.Y | CoordSet.Z;
     }
     else if (addCoord == CoordSet.Y)
     {
         this.X   = A;
         this.Y   = 0M;
         this.Z   = B;
         this.Set = CoordSet.X | CoordSet.Z;
     }
     else
     {
         this.X   = A;
         this.Y   = B;
         this.Z   = 0M;
         this.Set = CoordSet.X | CoordSet.Y;
     }
 }
Example #12
0
 public Coord(PointF ab, CoordSet addCoord = CoordSet.Z) : this((decimal)ab.X, (decimal)ab.Y, addCoord)
 {
 }
Example #13
0
 public Coord(float A, float B, CoordSet addCoord = CoordSet.Z) : this((decimal)A, (decimal)B, addCoord)
 {
 }
Example #14
0
 public Coord(float a, float b, CoordSet addCoord = CoordSet.Z) : this((decimal)a, (decimal)b, addCoord)
 {
 }
Example #15
0
    public static List <CoordSet> GetHorizSquares(Coord start)
    {
        List <CoordSet> ret = new List <CoordSet> ();
        CoordSet        a   = new CoordSet();

        a.coords = new List <Coord> ();
        a.coords.Add(start);
        a.coords.Add(new Coord(start.x + 1, start.y));
        a.coords.Add(new Coord(start.x + 2, start.y));
        a.coords.Add(new Coord(start.x, start.y - 1));
        a.coords.Add(new Coord(start.x + 1, start.y - 1));
        a.coords.Add(new Coord(start.x + 2, start.y - 1));

        CoordSet b = new CoordSet();

        b.coords = new List <Coord> ();
        b.coords.Add(start);
        b.coords.Add(new Coord(start.x - 1, start.y));
        b.coords.Add(new Coord(start.x + 1, start.y));
        b.coords.Add(new Coord(start.x - 1, start.y - 1));
        b.coords.Add(new Coord(start.x, start.y - 1));
        b.coords.Add(new Coord(start.x + 1, start.y - 1));

        CoordSet c = new CoordSet();

        c.coords = new List <Coord> ();
        c.coords.Add(start);
        c.coords.Add(new Coord(start.x - 2, start.y));
        c.coords.Add(new Coord(start.x - 1, start.y));
        c.coords.Add(new Coord(start.x - 2, start.y - 1));
        c.coords.Add(new Coord(start.x - 1, start.y - 1));
        c.coords.Add(new Coord(start.x, start.y - 1));

        CoordSet d = new CoordSet();

        d.coords = new List <Coord> ();
        d.coords.Add(start);
        d.coords.Add(new Coord(start.x, start.y + 1));
        d.coords.Add(new Coord(start.x + 1, start.y + 1));
        d.coords.Add(new Coord(start.x + 2, start.y + 1));
        d.coords.Add(new Coord(start.x + 1, start.y));
        d.coords.Add(new Coord(start.x + 2, start.y));

        CoordSet e = new CoordSet();

        e.coords = new List <Coord> ();
        e.coords.Add(start);
        e.coords.Add(new Coord(start.x - 1, start.y + 1));
        e.coords.Add(new Coord(start.x, start.y + 1));
        e.coords.Add(new Coord(start.x + 1, start.y + 1));
        e.coords.Add(new Coord(start.x - 1, start.y));
        e.coords.Add(new Coord(start.x + 1, start.y));

        CoordSet f = new CoordSet();

        f.coords = new List <Coord> ();
        f.coords.Add(start);
        f.coords.Add(new Coord(start.x - 2, start.y + 1));
        f.coords.Add(new Coord(start.x - 1, start.y + 1));
        f.coords.Add(new Coord(start.x, start.y + 1));
        f.coords.Add(new Coord(start.x - 2, start.y));
        f.coords.Add(new Coord(start.x - 1, start.y));

        ret.Add(a);
        ret.Add(b);
        ret.Add(c);
        ret.Add(d);
        ret.Add(e);
        ret.Add(f);
        return(ret);
    }