КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Функции пользователя
В AutoLISP нет программ – есть функции. Программа состоит из функций и сама является функцией. Пользователь может создавать свои функции и применять их параллельно со встроенными. Не рекомендуется в качестве имен своих функций брать зарезервированные имена, т. к. это приведет к некорректной работе отдельных команд системы AutoCAD. Для того чтобы получить полный перечень зарезервированных символов AutoLISP, можно воспользоваться функцией atoms-family, имеющей следующий синтаксис: (atoms-family <форма> [<список>]) Если аргумент <список>, который содержит строковые имена символов, проверяемых на резервирование, задан, то функция возвращает имена тех символов, которые отнесены в данной версии системы AutoCAD к резервированным; если аргумент <список> не задан, то функция возвращает полный список зарезервированных символов (основу этого списка составляют имена функций); аргумент <форма> может принимать значения 0 или 1, он влияет на форму возвращаемого списка (при 0 в список помещаются символы, при 1 - строки). Пример: (acad_strisort (atoms-family l)) - возвратит список зарезервированных символов, который будет тут же с помощью функции acad_strlsort отсортирован по алфавиту. Для создания функций пользователя предназначена специальная функция defun: (defun <имя> ([<аргументы>] [/ <переменные>]) <выражения>) ≈ описывает тело функции, ее аргументы и локальные переменные (т. е. переменные, которые не являются глобальными и имеют действие только в теле самой функции; вне тела функции эти символы не определены); возвращаемым значением функции является результат последнего вычисленного выражения ее тела. Пример: (defun oursum (al а2 а3 / s) (setq s (+ a1 а2)) (- s a3) ); конец тела функции Здесь определена функция с именем oursum. У функции три аргумента: a1, а2 и аЗ ≈ вместо них AutoLISP подставит значения, с которыми эта функция будет вызвана. Переменная s используется для временного хранения результата операции суммирования. В теле функции всего два выражения: первое вычисляет сумму a1 и а2 и сохраняет ее в переменной s, а второе вычисляет разность между s и а3. Вычисленная разность является значением последнего выражения в теле функции, поэтому является и возвращаемым значением функции oursum. Как аргументы al, а2 и а3, так и переменная s являются локальными переменными, т. е. их значения не доступны вне тела функции. Для того чтобы функцией oursum можно было воспользоваться в текущем рисунке AutoCAD, ее необходимо предварительно сохранить в текстовом файле с расширением lsp (например, ourfunctions.lsp) и затем загрузить этот файл с помощью функции load: (load "ourfunctions.lsp") Имя загружаемого файла с расширением lsp может содержать и путь. При отсутствии такого пути AutoCAD ищет файл в путях доступа к файлам поддержки, заданных в настройке. После того, как файл, содержащий тело функции oursum, загружен, можно обратиться к функции в любом месте программы, задав значения ее трех аргументов, например: (setq newvall (oursum 55.02 0.933 -2.64)) Разумеется, при обращении к функции oursum в качестве аргументов могут быть использованы любые выражения, результатами вычисления которых будут значения необходимого типа (в данном примере – это три вещественных числа).
СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ 1 Романычева, Э.Т. Инженерная и компьютерная графика / Романычева Э.Т., Соколова Т.Ю., Шандурина Г.Ф.. – 2-е изд., перераб. – М.: ДМК Пресс, 2001. – 592 с.: ил. – ISBN 5-94074-051-0. 2 Ткачев Д. AutoCAD 2002: Самоучитель.- СПб: Питер, К.: БХВ, 2003. – 416 с.: ил. – ISBN 5-318-00788-0. 3 Ткачев Д.А. AutoCAD 2004: Самоучитель. - СПб: Питер, 2005. – 432 с.: ил. 4 Хрящев В. Моделирование и создание чертежей в системе AutoCAD / В. Хрящев, Г. Шипова.: СПб. БХВ – Питербург, 2004. – 224 с.
Навчальне видання
Комп'ютерна графіка
Конспект лекцій для студентів спеціальності 6.050101 очної і заочної форм навчання
Укладачі САВИЦЬКИЙ Василь Васильович
Редактор
Підп. до друку. Формат 60х80 1/16. Папір офсетний. Ум. друк. арк.. Обл.-вид. арк. Тираж 50 прим. Зам №
Видавець і виготівник «Донбаська державна машинобудівна академія» 84313, м. Краматорськ, вул. Шкадінова, 72. Свідоцтво про внесення суб’єкта видавничої справи до Державного реєстру серія ДК № 1633 від 24.12.2003 р.
Дата добавления: 2014-01-07; Просмотров: 295; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |