Исполнитель Чертежник
Чертежник — графический исполнитель для создания рисунков с помощью прямых перемещений. Чертежник работает на координатной плоскости и может перемещаться в заданные точки или на заданные векторы.
Для использования укажите первой строкой в программе:
использовать Чертежник
Основы
Чертежник находится на координатной плоскости и имеет:
- Позицию (x, y) — текущие координаты на плоскости
- Перо — опущено (рисует) или поднято (не рисует)
- Цвет чернил — текущий цвет линий (целое число от 0 до 15)
В отличие от Черепахи, Чертежник перемещается не по направлению, а прямо к указанным координатам.
Команды
Управление пером
| Команда |
Описание |
опустить перо |
Чертежник рисует при перемещении |
поднять перо |
Чертежник не рисует при перемещении |
выбрать чернила(цвет) |
Установить цвет чернил (0-15) |
Перемещение
| Команда |
Описание |
сместиться в точку(x, y) |
Переместиться в точку с координатами (x, y) |
сместиться на вектор(dx, dy) |
Сместиться на вектор (dx, dy) от текущей позиции |
Текст
| Команда |
Описание |
написать(ширина, текст) |
Написать текст с заданной шириной |
Палитра цветов
| Номер |
Цвет |
| 0 |
Черный |
| 1 |
Синий |
| 2 |
Зеленый |
| 3 |
Голубой |
| 4 |
Красный |
| 5 |
Пурпурный |
| 6 |
Желтый |
| 7 |
Белый |
| 8 |
Серый |
| 9-15 |
Другие оттенки |
Примеры
Квадрат
использовать Чертежник
алг
нач
опустить перо
выбрать чернила(1) | синий
сместиться в точку(0.0, 0.0)
сместиться в точку(3.0, 0.0)
сместиться в точку(3.0, 3.0)
сместиться в точку(0.0, 3.0)
сместиться в точку(0.0, 0.0)
кон
Треугольник
использовать Чертежник
алг
нач
опустить перо
выбрать чернила(4) | красный
сместиться в точку(0.0, 0.0)
сместиться в точку(3.0, 0.0)
сместиться в точку(1.5, 2.6)
сместиться в точку(0.0, 0.0)
кон
Домик
использовать Чертежник
алг
нач
| Основание дома
опустить перо
выбрать чернила(1) | синий
сместиться в точку(0.0, 0.0)
сместиться в точку(4.0, 0.0)
сместиться в точку(4.0, 3.0)
сместиться в точку(0.0, 3.0)
сместиться в точку(0.0, 0.0)
| Крыша
выбрать чернила(4) | красный
сместиться в точку(0.0, 3.0)
сместиться в точку(2.0, 5.0)
сместиться в точку(4.0, 3.0)
| Надпись
поднять перо
выбрать чернила(0) | черный
сместиться в точку(0.5, -0.5)
написать(3.0, "ДОМ")
кон
Использование векторов
использовать Чертежник
алг
нач
опустить перо
выбрать чернила(2) | зеленый
| Рисуем квадрат со стороной 2, используя векторы
сместиться в точку(0.0, 0.0)
сместиться на вектор(2.0, 0.0)
сместиться на вектор(0.0, 2.0)
сместиться на вектор(-2.0, 0.0)
сместиться на вектор(0.0, -2.0)
кон
Геометрические фигуры
Правильный многоугольник
использовать Чертежник
алг
нач
многоугольник(6, 0.0, 0.0, 2.0) | шестиугольник
кон
| Рисует правильный n-угольник с центром в (cx, cy) и радиусом r
алг многоугольник(цел n, вещ cx, вещ cy, вещ r)
нач
цел i
вещ angle, x, y
| Вычисляем первую точку
angle := 0.0
x := cx + r * cos(angle)
y := cy + r * sin(angle)
| Переходим в начальную точку
поднять перо
сместиться в точку(x, y)
опустить перо
выбрать чернила(1)
| Рисуем стороны многоугольника
нц для i от 1 до n
angle := 2.0 * 3.14159 * i / n
x := cx + r * cos(angle)
y := cy + r * sin(angle)
сместиться в точку(x, y)
кц
кон
Звезда
использовать Чертежник
алг
нач
звезда(0.0, 0.0, 3.0, 1.2, 5)
кон
| Рисует звезду с n лучами
алг звезда(вещ cx, вещ cy, вещ outerR, вещ innerR, цел n)
нач
цел i
вещ angle, x, y
| Первая внешняя точка (сверху)
angle := -3.14159 / 2.0
x := cx + outerR * cos(angle)
y := cy + outerR * sin(angle)
поднять перо
сместиться в точку(x, y)
опустить перо
выбрать чернила(6) | желтый
| Рисуем звезду
нц для i от 0 до n - 1
| Внутренняя точка
angle := -3.14159 / 2.0 + (2.0 * i + 1.0) * 3.14159 / n
x := cx + innerR * cos(angle)
y := cy + innerR * sin(angle)
сместиться в точку(x, y)
| Внешняя точка
angle := -3.14159 / 2.0 + 2.0 * (i + 1.0) * 3.14159 / n
x := cx + outerR * cos(angle)
y := cy + outerR * sin(angle)
сместиться в точку(x, y)
кц
кон
Графики функций
График синуса
использовать Чертежник
алг
нач
цел i, n
вещ x, y, scale
scale := 2.0
n := 100
| Оси координат
выбрать чернила(8) | серый
опустить перо
| Ось X
поднять перо
сместиться в точку(-5.0, 0.0)
опустить перо
сместиться в точку(5.0, 0.0)
| Ось Y
поднять перо
сместиться в точку(0.0, -3.0)
опустить перо
сместиться в точку(0.0, 3.0)
| График функции
выбрать чернила(1) | синий
x := -5.0
y := sin(x) * scale
поднять перо
сместиться в точку(x, y)
опустить перо
| Рисуем график
нц для i от 1 до n
x := -5.0 + 10.0 * i / n
y := sin(x) * scale
сместиться в точку(x, y)
кц
кон
Координатная сетка
использовать Чертежник
алг
нач
цел i
вещ pos
выбрать чернила(8) | серый
опустить перо
| Вертикальные линии
нц для i от -5 до 5
pos := i
поднять перо
сместиться в точку(pos, -5.0)
опустить перо
сместиться в точку(pos, 5.0)
кц
| Горизонтальные линии
нц для i от -5 до 5
pos := i
поднять перо
сместиться в точку(-5.0, pos)
опустить перо
сместиться в точку(5.0, pos)
кц
| Оси координат (ярче)
выбрать чернила(0) | черный
поднять перо
сместиться в точку(-5.0, 0.0)
опустить перо
сместиться в точку(5.0, 0.0)
поднять перо
сместиться в точку(0.0, -5.0)
опустить перо
сместиться в точку(0.0, 5.0)
кон
Использование в онлайн-песочнице
- Откройте qumir.dev
- Напишите программу с командами чертежника
- Нажмите Run
- Переключите вывод на Чертежник (появится автоматически)
Система координат
- Начало координат (0, 0) — в центре поля
- Ось X направлена вправо
- Ось Y направлена вверх
- Координаты измеряются в условных единицах
Отличия от Черепахи
| Черепаха |
Чертежник |
| Движется по направлению |
Движется к координатам |
Команды: вперед, назад, влево, вправо |
Команды: сместиться в точку, сместиться на вектор |
| Имеет направление (угол) |
Не имеет направления |
поднять хвост, опустить хвост |
поднять перо, опустить перо |
См. также