- •История и перспективы
- •Принципы построения сапр
- •Подходы к конструированию
- •Организация графических данных
- •Автоматизация разработки и выполнения конструкторской документации в среде AutoCad
- •Формирование чертежей с использованием вариантного метода
- •Графический редактор AutoCad
- •Команды упрвления экраном
- •Команды редактирования
- •Язык Auto lisp Язык Auto lisp был создан в 1962 году Дж. Маккарти.
- •Для представления объектов в языке lisp используются символы.
- •Функции
- •Универсальные функции
- •Управляющие структуры
- •Использование Auto lisp в среде Auto cad
- •Доступ из Auto lisp к командам Auto cad
- •Пространственное полигональное (поверхностное) моделирование
- •Правило правой руки
- •Выбор точки зрения и плана
- •Расширение Auto cad по объемному конструированию
- •Составные твердотельные объекты
- •Функции AutoLisp для создания составных объектов и их редактирования.
- •Изображение твердотельных объектов: виды, разрезы, сечения
- •Организация проектирования изделий с применением сапр
Язык Auto lisp Язык Auto lisp был создан в 1962 году Дж. Маккарти.
Название LISP является сокращением от List processing – обработка списков. Буквально LISP переводится как пеленать, шепелявить, сюсюкать. Для названия языка программирования искусственного интеллекта это метко, поскольку именно с помощью LISP ЭВМ «научилась» в некотором смысле «лепетать на человеческом языке». В настоящее время наибольшее предпочтение отдается версии языка LISP, которая получила название COMMON LISP.
Первоначально LISP был задуман как теоретическое средство для рекурсивных построений, а в настоящее время он превратился в мощное средство, обеспечивающее программиста разнообразной поддержкой, позволяющей ему быстро строить прототипы весьма серьезных систем.
В LISP формы представления программ и обрабатываемых данных одинаковы. И то, и другое представляется списочной структурой, имеющей одинаковую форму. Программы могут обрабатывать и преобразовывать другие программы и даже самих себя! Это позволяет создавать программы. Которые могут изменяться в процессе работы, т.е. создавать самообучающиеся системы.
LISP – важнейший язык, используемый в символьной обработке и в исследованиях по искусственному интеллекту. Символьная обработка хорошо подходит для обработки рисунков, чертежей, применяемой в машинном проектировании. Чертеж – сложная структура данных. На языке LISP написано математическое обеспечение системы Auto CAD. LISP обеспечивает один из возможных путей решения задачи автоматической параметритизации. Которая возникает при разработке сложных параметрически заданных чертежей.
Язык Auto LIPS – это один из диалектов языка LISP, он наиболее близок по синтаксису и соглашениям к COMMON LISP, но является его небольшой частью и имеет много дополнительных функций, отражающих специфику Auto CAD.
Основные понятия и определения
Для представления объектов в языке lisp используются символы.
Символ – это имя, состоящее из букв, цифр и специальных знаков, которое обозначает какой-нибудь предмет, объект, вещь, действие. Символ состоит из алфавитно-цифровых символов и специальных знаков. Кроме ( ) . ,’« ; .
В Auto LIPS используются три виза констант: числовые, строковые и логические. Они не могут представлять иные объекты LIPS, кроме самих себя или своего собственного значения.
Числовые константы могут быть различного типа:
746 – целое число
–3.14 - десятичное число
3.055Е8 - число. Представленное мантиссой и порядком.
Целые
числа в AutoLISP
представляются 32 двоичными разрядами
со знаком, и их значения могут находиться
в пределах
2147483648,
хотя между AutoLISP
и AutoCAD
передаются только 16 – разрядные числа
(
32768).
Если же используются значения, входящие
за эти пределы, необходимо воспользоваться
функцией FLOAT
для преобразования целого в вещественное:
вещественные числа передаются как
значения с 32 двоичными разделами.
Вещественные числа, представляются как числа с плавающей точкой с двойной точностью, при этом обеспечивается не менее 14 знаков точности, хотя в командной строке AutoCAD можно увидеть только 6 десятичных знаков. Числа между 1 и – 1 должны явно содержать нулевую целую часть. Точно также надо писать 5.0, а не 5. Вещественные числа можно задавать в научном формате, т.е как вещественное число, за которым могут следовать символ е или Е и показатель степени числа 10.
Строковые константы – последовательность знаков, заключенная в кавычки. Внутри взятых в кавычки строковых констант можно использовать управляющие символы:
\n – переход на новую строку;
\r – возврат каретки;
\t – табуляция;
\\ - знак \;
\” – знак «;
\е – символ escape последовательности;
\nnn – знак, восьмеричный код которого nnn;
Строковые константы могут быть переменной длины: память для них распределяется динамически. Хотя максимальная длина строковых констант ограничена 100 символами, можно создавать строки неограниченной длины путем их сложения с помощью функции STRCAT.
Логические константы – Т – истина и N/L – ложь.
Константы и символы записываются при помощи ограниченной пробелами последовательности знаков. Числа, строки и логические значения Т и N/L являются константами, символы переменными, которые используются для обозначения других объектов AutoLISP. Существуют специальные глобальные переменные, имеющиеся изменяемые встроенные значения, например символ PI.
Атомы – простейшие объекты LISP, из которых строятся остальные структуры, представляют собой символы либо константы.
Упорядоченная последовательность, элементами которой являются атомы, называются списком (list). Списки заключаются в крупные скобки, элементы разделяются пределами.
Пример (a d (c d) e).
Список – многоуровневая или иерархическая структура данных, в которой открывающиеся и закрывающиеся скобки находятся в строгом соответствии.
Атомы и списки – основные типы данных языка LISP, они называются символьными выражениями.
Списки могут интерпритироваться как данные и как программы (функции).
В LISP имена символов, переменных, списков, функций и других объектов не закреплены предварительно за какими – нибудь типами данных.
Для того чтобы воспользоваться языком AutoLISP, достаточно в ответ на подсказку Command: редактора AutoСAD ввести какую – либо конструкцию языка AutoLISP. Желательно предварительно перевести экран в текстовый режим с помощью с помощью функциональной клавиши AutoLISP (после нажатия клавиши <Enter>) немедленно осуществляется ее выполнение и выдается результат.
Пример:
Command: (+2 3) <Enter>
5
Command:
Формальным признаком конструкции языка AutoLISP является то, что вводится конструкция, заключенная в скобки, в нашем примере это (+2 3). Результатом выполнения этой конструкции будет 5, а затем опять выдается приглашение Command.
