Изучение функций файла gppoly.lsp
Окончательная компоновка
|
| ||||
Изучение функций файла gppoly.lsp | |||||
Файл gppoly.lsp содержит ряд функций, необходимых для коррекции формы полилинии после перемещения одной из ее вершин. В данном учебном пособии подробно объясняются только некоторые из них.
Примечание В данном разделе учебного пособия построения парковой дорожки описан наиболее сложный материал. Начинающим программистам рекомендуется перейти к разделу Сборка приложения, расположенному ниже в данной главе. Организация функций внутри файла gppoly.lsp аналогична другим исходным файлам AutoLISP. Функция самого высокого уровня, зачастую основная, или функция C: (в данном случае gp:Redefine-PolyBorder), расположена в конце файла. Функции, вызываемые из главной, описаны в исходном файле выше. Такой порядок сложился исторически, так как в прежние времена он использовался некоторыми средами программирования. В VLISP соблюдать такой порядок личное дело каждого программиста, так как требований располагать функции в какой-либо определенной последовательности не существует. Перед тем, как перейти к подробностям, вернемся немного назад и посмотрим, что нужно сделать, чтобы пересчитать и построить границу дорожки. На следующем рисунке показан пример парковой дорожки и отмечены ключевые точки ассоциативного списка, хранящегося с реактором: В данном примере ключевая точка 12 представляет собой нижний левый угол, 13 — нижний правый, и т.д. Если пользователь перемещает правую верхнюю точку (14), программе необходимо пересчитать две точки: нижнюю правую (13) и верхнюю левую (15).
|