コード例 #1
0
 protected new void Initialize()
 {
     base.Initialize();
     CurrentCoordinates = new AxisCoordinates {
         X = 0, Y = 0, Z = 0
     };
     OldCoordinates = CurrentCoordinates;
 }
コード例 #2
0
        private static void ParseCoordinate(string axisName, string position, AxisCoordinates result)
        {
            var properties = result.GetType();
            var sorted     = properties.GetProperties();
            var property   = sorted.Single(p => p.Name.Equals(axisName, StringComparison.Ordinal));
            var coordinate = float.Parse(position, CultureInfo.InvariantCulture);

            property.SetValue(result, coordinate);
        }
コード例 #3
0
        private void ProcessCoordinates(IEnumerable <string> coordinates)
        {
            var result = new AxisCoordinates();

            foreach (var coordinate in coordinates)
            {
                ParseCoordinate(new string(coordinate.Take(1).ToArray()), new string(coordinate.Skip(1).ToArray()), result);
            }
            _context.OutputData.Coordinate = result;
        }
コード例 #4
0
ファイル: MachineBase.cs プロジェクト: Jackhammer88/Visu
 protected void Initialize()
 {
     FrameNumber    = -1;
     ToolNumber     = 0;
     FeedRate       = 0;
     OldCoordinates = new AxisCoordinates()
     {
         X = 0, Y = 0, Z = 0
     };
     CurrentCoordinates = OldCoordinates;
 }
コード例 #5
0
        public AxisCoordinates MoveInAxialCoordinates(AxisCoordinates coordinates, int direction)
        {
            Dictionary <int, int[]> neighbors = new Dictionary <int, int[]>
            {
                { 0, new int[] { 1, 0 } }, { 1, new int[] { 1, -1 } }, { 2, new int[] { 0, -1 } },
                { 3, new int[] { -1, 0 } }, { 4, new int[] { -1, 1 } }, { 5, new int[] { 0, 1 } }
            };

            int[] d = neighbors[direction];

            return(new AxisCoordinates(coordinates.Q + d[0], coordinates.R + d[1]));
        }
コード例 #6
0
ファイル: MachineBase.cs プロジェクト: Jackhammer88/Visu
 private void SetOldCoordinates(AxisCoordinates currentCoordinates)
 {
     if (ModalGCodes.Contains(91))
     {
         if (currentCoordinates.A.HasValue)
         {
             OldCoordinates.A = currentCoordinates.A + OldCoordinates.A;
         }
         if (currentCoordinates.B.HasValue)
         {
             OldCoordinates.B = currentCoordinates.B + OldCoordinates.B;
         }
         if (currentCoordinates.C.HasValue)
         {
             OldCoordinates.C = currentCoordinates.C + OldCoordinates.C;
         }
         if (currentCoordinates.U.HasValue)
         {
             OldCoordinates.U = currentCoordinates.U + OldCoordinates.U;
         }
         if (currentCoordinates.V.HasValue)
         {
             OldCoordinates.V = currentCoordinates.V + OldCoordinates.V;
         }
         if (currentCoordinates.W.HasValue)
         {
             OldCoordinates.W = currentCoordinates.W + OldCoordinates.W;
         }
         if (currentCoordinates.X.HasValue)
         {
             OldCoordinates.X = currentCoordinates.X + OldCoordinates.X;
         }
         if (currentCoordinates.Y.HasValue)
         {
             OldCoordinates.Y = currentCoordinates.Y + OldCoordinates.Y;
         }
         if (currentCoordinates.Z.HasValue)
         {
             OldCoordinates.Z = currentCoordinates.Z + OldCoordinates.Z;
         }
     }
     else
     {
         if (currentCoordinates.A.HasValue)
         {
             OldCoordinates.A = currentCoordinates.A;
         }
         if (currentCoordinates.B.HasValue)
         {
             OldCoordinates.B = currentCoordinates.B;
         }
         if (currentCoordinates.C.HasValue)
         {
             OldCoordinates.C = currentCoordinates.C;
         }
         if (currentCoordinates.U.HasValue)
         {
             OldCoordinates.U = currentCoordinates.U;
         }
         if (currentCoordinates.V.HasValue)
         {
             OldCoordinates.V = currentCoordinates.V;
         }
         if (currentCoordinates.W.HasValue)
         {
             OldCoordinates.W = currentCoordinates.W;
         }
         if (currentCoordinates.X.HasValue)
         {
             OldCoordinates.X = currentCoordinates.X;
         }
         if (currentCoordinates.Y.HasValue)
         {
             OldCoordinates.Y = currentCoordinates.Y;
         }
         if (currentCoordinates.Z.HasValue)
         {
             OldCoordinates.Z = currentCoordinates.Z;
         }
     }
 }