Алгодром


03. Исполнитель Чертежник

Чертежник предназначен для построения рисунков на поле, "размер" которого можно задавать. Чертежник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остается след — отрезок от старого положения исполнителя до нового.

СКИ Чертежник:

  • опустить перо
  • поднять перо
  • по этой команде Чертежник опускает перо ("готовится" к рисованию). перо поднимается (после чего можно перемещать исполнителя без оставления следа).
  • задать поле(MinX, MaxX, MinY, MaxY)
  •  
    задает систему координат; причем абсциссы всех точек поля лежат в промежутке [MinX, MaxX], а ординаты — в промежутке [MinY, MaxY].
  • нарисовать оси
  • на поле отображаются оси координат.
  • сместиться в точку(x, y)
  • перемещает Чертежника в точку с координатами (x, y);
    если при этом перо опущено — остается след: отрезок, соединяющий предыдущее положение Чертежника с указанной точкой (см. иллюстрацию справа).
    Обратите внимание: независимо от предыдущего положения после этой команды исполнитель оказывается в точке (x, y) ( направление и длина нарисованных при этом отрезков зависят, конечно, от начальной точки ).

    Совсем иначе работает следующая команда. После ее выполнения уже положение исполнителя зависит от начальной точки, а вот длина и направление получающегося отрезка — постоянны, т.е. не зависят от предыдущего положения Чертежника (см. иллюстрацию ниже). Такой отрезок в математике называют вектором, отсюда и название команды:
  • сместиться на вектор (a, b)
  • перемещает Чертежника в точку, в которую можно попасть из данной, пройдя a единиц по горизонтали и b — по вертикали;
        т.е.
    если исполнитель находился в точке с координатами (x, y), то после выполнения команды он окажется в точке с координатами (x
    +a, y +b).
    (Каким будет перемещение, если a или b отрицательны?)

    Как проста эта команда - посмотри!

    Таким образом, координаты
    (a, b) вектора откладываются не от начала координат, а от текущего положения Чертежника. Вот почему эту команду называют командой относительного смещения.

    начать сначала
    В отличие от команды абсолютного смещения: сместиться в точку, в которой указываются абсолютные (относительно начала координат) координаты Чертежника.


    Вычисление координат вектора

    Пусть требуется переместить Чертежника из точки M с координатами (x1, y1) в точку N(x2, y2) с помощью команды сместиться на вектор. Как найти его координаты?
    Если (a,b) — интересующие нас координаты вектора, то, как известно,
     
    x1+ a = x2
    y1+ b = y2
    откуда, выражая a и b, получим:
    a = x2 - x1
    b = y2 - y1
    Теперь ясно, что для нахождения координат искомого вектора необходимо из координат его конца (точка N) вычесть соответствующие координаты его начала (точка M) (x2x1, y2y1).
      Например, чтобы переместить Чертежника из точки (3, 4) в точку (7,1) понадобится вектор с координатами: (7-3, 1-4) = (4, -3). Соответствующая команда, следовательно, будет иметь вид: сместиться на вектор(4,-3).
     
    Если у Вас, поначалу, возникнут проблемы при вычислении координат вектора, можно воспользоваться следующим "калькулятором":
    (концы вектора можно премещать с помощью мыши или вводить координаты в соответствующие поля, завершая ввод нажатием клавиши ENTER.)