Esempio n. 1
0
        /// <summary>
        /// Метод поворачивающий визуального робота в указанном направлении
        /// </summary>
        /// <param name="robot">робот, которого нужно повернуть</param>
        /// <param name="route">направление поворота</param>
        public void RotationRobot(Path robot, RouteMove route)
        {
            switch (route)
            {
            case RouteMove.Right: Rotate(robot, 0); break;

            case RouteMove.Bottom: Rotate(robot, 90); break;

            case RouteMove.Left: Rotate(robot, 180); break;

            case RouteMove.Top: Rotate(robot, 270); break;

            default:
                throw new ArgumentOutOfRangeException(nameof(route), route, null);
            }
        }
 /// <summary>
 /// Конструктор по умолчанию
 /// </summary>
 /// <param name="robot">робот, которому нужно задать направление</param>
 /// <param name="routeRobot">направление движения робота (направо, налево)</param>
 public RotationRobotCommand(Robot robot, RouteMove routeRobot)
 {
     Robot       = robot;
     _routeRobot = routeRobot;
     Execute     = UpdateRoute;
 }
 /// <summary>
 /// Метод для изменения направления движения робота и вызова обработчика события изменения направления робота
 /// </summary>
 /// <param name="robot">робот</param>
 /// <param name="route">направление</param>
 private void Update(Robot robot, RouteMove route) => robot.RouteMove = route;
Esempio n. 4
0
 /// <summary>
 /// Конструктор по умолчанию
 /// </summary>
 /// <param name="row">начальное положение робота(индекс строки)</param>
 /// <param name="column">начальное положение робота(индекс столбца)</param>
 public Robot(int row, int column, RouteMove route)
 {
     Row       = row;
     Column    = column;
     RouteMove = route;
 }