Exemple #1
0
        private CoordinatesPoint Move()
        {
            var newCoordinatesPoint = new CoordinatesPoint(_coordinatesPoint.X, _coordinatesPoint.Y);

            switch (_compassPoints)
            {
            case CompassPoints.N:
                newCoordinatesPoint.SetForwardY();
                break;

            case CompassPoints.E:
                newCoordinatesPoint.SetForwardX();
                break;

            case CompassPoints.S:
                newCoordinatesPoint.SetBackwardY();
                break;

            case CompassPoints.W:
                newCoordinatesPoint.SetBackwardX();
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            return(newCoordinatesPoint);
        }
Exemple #2
0
 public void SetCoordinatesPoint(CoordinatesPoint point)
 {
     X = point.X;
     Y = point.Y;
 }
Exemple #3
0
 private void SetRoverPosition(IPlate plateau, CoordinatesPoint nextPosition)
 {
     _coordinatesPoint = nextPosition;
 }
Exemple #4
0
 public Rover(CoordinatesPoint coordinatesPoint, CompassPoints compassPoints)
 {
     _compassPoints    = compassPoints;
     _coordinatesPoint = coordinatesPoint;
 }