Черепа́шья гра́фика — принцип организации библиотеки графического вывода, построенный на метафоре Черепахи[1], воображаемого (а в некоторых экспериментах и реального) роботоподобного устройства, которое перемещается по экрану или бумаге и поворачивается в заданных направлениях, при этом оставляя (или, по выбору, не оставляя) за собой нарисованный след заданного цвета и ширины.
Впервые, по-видимому, черепашья графика была применена при реализации языка программирования Лого, в дальнейшем использовалась в ряде графических библиотек и систем программирования.
Фактически используется управление рисованием в полярной системе координат, связанной с текущим положением черепахи.
Базовые команды:
В системах, поддерживающих работу с несколькими черепахами, обычно есть команды
В системах, нацеленных на детей, например, в системе ЛогоМиры, есть возможность менять внешний вид черепахи, заменяя её стандартный вид на картинку из комплекта поставки или на нарисованную вручную. Кроме того, изображение черепахи можно делать крупнее или мельче, а также отпечатывать на листе или наоборот, копировать с листа.
Одним из применений черепашьей графики являются L-системы[2], предоставляющие механизм для визуализации фрактальных кривых.
В качестве примера рассмотрим рисование в начале координат квадрата со стороной в 100 точек в «обычной» графике:
line (0, 0, 0, 100); line (0, 100, 100, 100); line (100, 100, 100, 0); line (100, 0, 0, 0);
то же самое в черепашьей графике, на языке Лого:
repeat 4 [forward 100 right 90]
Обобщить данный пример для случая N-угольника в «обычной» графике уже довольно затруднительно, в то время как в черепашьей графике это так же просто:
repeat :N [forward 100 right 360/:N]
Пример рисования квадрата на языке Python
import turtle
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .