protected new void Initialize() { base.Initialize(); CurrentCoordinates = new AxisCoordinates { X = 0, Y = 0, Z = 0 }; OldCoordinates = CurrentCoordinates; }
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); }
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; }
protected void Initialize() { FrameNumber = -1; ToolNumber = 0; FeedRate = 0; OldCoordinates = new AxisCoordinates() { X = 0, Y = 0, Z = 0 }; CurrentCoordinates = OldCoordinates; }
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])); }
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; } } }