Графика черепаха - Turtle graphics
В компьютерной графике , черепаха график является векторной графикой с использованием относительного курсора (далее « черепахой ») в случае декартовой плоскости (х и у оси) . Графика с черепахой - ключевая особенность языка программирования Logo .
Обзор
У черепахи есть три атрибута: местоположение, ориентация (или направление) и ручка. Перо также имеет атрибуты: цвет, ширину и состояние включения / выключения (также называемые « вниз» и « вверх» ).
Черепаха перемещается с помощью команд, относящихся к ее собственному положению, таких как «двигаться вперед на 10 делений» и «повернуть налево на 90 градусов». Ручкой, которую несет черепаха, также можно управлять, включив ее, установив ее цвет или ширину. Студент мог понять (и предсказать и рассудить) движение черепахи, представив, что они бы сделали, если бы они были черепахой. Сеймур Паперт назвал это рассуждение «телесно-синтонным».
Полная система графики черепахи требует потока управления, процедур и рекурсии: многие программы рисования черепах не работают. Из этих строительных блоков можно строить более сложные формы, такие как квадраты, треугольники, круги и другие составные фигуры. Идея черепаховой графики, например, полезна в системе Линденмайера для генерации фракталов .
Геометрия черепахи также иногда используется в графических средах в качестве альтернативы графической системе с строго координатной адресацией.
История
Графика черепах часто ассоциируется с языком программирования Logo . Сеймур Пейперт добавил поддержку графики черепахи в Logo в конце 1960-х годов для поддержки своей версии робота-черепахи , простого робота, управляемого с рабочей станции пользователя, который предназначен для выполнения назначенных ему функций рисования с помощью небольшой выдвижной ручки, установленной в или прикреплен к телу робота. Геометрия черепахи работает несколько иначе , чем декартова геометрия с адресом ( x , y ) , будучи в основном векторной (т.е. относительное направление и расстояние от начальной точки) по сравнению с системами с координатной адресацией, такими как растровые изображения или растровая графика. На практике использование геометрии черепахи вместо более традиционной модели имитирует реальную логику движения робота-черепахи. Черепаха традиционно и чаще всего изображается в виде треугольника или значка черепахи (хотя она может быть представлена любым значком).
Сегодня стандартная библиотека языка программирования Python включает графический модуль Turtle. Как и его предшественник Logo, реализация turtle на Python позволяет программистам управлять одной или несколькими черепахами в двухмерном пространстве. Поскольку стандартный синтаксис Python, поток управления и структуры данных могут использоваться вместе с модулем черепахи, черепаха стала популярным способом для программистов, изучающих Python, познакомиться с основами языка.
Расширение до трех измерений
Идеи, лежащие в основе графики черепах, могут быть расширены за счет включения трехмерного пространства. Это достигается за счет использования одной из нескольких различных координатных моделей. Если черепаха действует в цилиндрических координатах, то у нее есть местоположение и курс в пределах своей плоскости, и ее плоскость может вращаться вокруг вертикальной оси. Это часто проявляется в том, что черепаха имеет два разных угла курса, один в пределах плоскости, а другой определяет угол плоскости. Обычно изменение угла наклона самолета не приводит к перемещению черепахи.
В черепахе дается дополнительная команда Roll , которая вращает вектор нормали черепахи вокруг вектора направления, и статья переходит к разработке алгебраической теории для доказательства геометрических свойств на основе синтаксических свойств базовых программ черепахи.
Также могут использоваться другие координатные модели. Cheloniidae Turtle Graphics - это библиотека 3D-черепах для Java .
Смотрите также
Рекомендации
дальнейшее чтение
- Паперт, Сеймур (1993). Mindstorms: Дети, компьютеры и мощные идеи (2-е изд.). Нью-Йорк: Основные книги . ISBN 0-465-04674-6. OCLC 794964988 .
- Паперт, Сеймур (1993). Детская машина: переосмысление школы в эпоху компьютеров . Нью-Йорк: Основные книги. ISBN 0-465-01830-0. OCLC 248428992 .