Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Топ:
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Цель лекции: приобрести навыки работы с процедурами AutoLISP и lsp-файлами.
Переменные
Переменные - это символьные имена, которыми можно оперировать в программе. Переменным можно присваивать значения непосредственно в командной строке:
· (setq pt 7) переменной pt присвоено значение 7;
· (setq color "Red") строковой переменной color присвоено значение "Red".
При использовании переменной в параметрах команды перед ней нужно поставить восклицательный знак (!pt).
Задание 4.1
Создать переменные pt1, pt2 координат двух точек и с их помощью построить отрезок. Создать строковую переменную color с обозначением цвета "Red" и закрасить отрезок.
Приведем протокол операций выполнения этого задания.
Command: (setq pt1 "2,2")↵ "2,2"Command: (setq pt2 "12,2")↵ "12,2"Command: (setq color "Red")↵ "Red"Command: _line Specify first point:!pt1↵ "2,2"Specify next point or [Undo]:!pt2↵ "12,2"Specify next point or [Undo]: ↵*Cancel*Command: chprop↵Select objects: 1 foundSelect objects: ↵Enter property to change [Color/LAyer/LType/ltScale/LWeight/Thickness/Material]: c↵New color [Truecolor/COlorbook] <BYLAYER>:!color↵"Red"По применимости в процедурах переменные разделяются на два типа: локальные и глобальные. Локальные объявляются после косой черты. Они могут принимать определенные значения только во время выполнения той процедуры, в которой они объявлены. После завершения процедуры ячейки памяти, занимаемые этими переменными, освобождаются.
Глобальные переменные доступны всем функциям AutoLISP, которые загружены в чертеж. Их значения доступны в проекте и после завершения той программы, в которой они объявлены. Любая переменная, которая специально не объявлена локальной, является глобальной. В глобальной переменной можно хранить константы, промежуточные значения вычислений, результирующие данные. Однако трудно уследить, какое значение ей присвоено в данной функции и не изменено ли оно другой функцией. Поэтому следует избегать введения глобальных переменных. Рекомендуется имена глобальных переменных отмечать справа и слева звездочками: *Global1* и документировать их.
Задание 4.2
Создать и протестировать локальные и глобальные переменные.
1. Откройте новый чертеж. Закройте все другие чертежи. Откройте редактор Visual LISP.
2. В окне CONSOLE введите строку кода (defun local-var (/ var1). Завершите ее нажатием клавиш CTRL+ENTER. Это даст возможность ввести вторую строку: (setq var1 "I am a local var"))↵.Таким образом вы определили функцию local-var. В теле этой функции объявлена локальная переменная var1 и ей присвоено значение текстового литерала.
3. Для тестирования, т.е. проверки присвоенных значений переменным и функциям, нужно просто набрать их имя в строке окна консоли. В ответ получим текущие значения этих величин. Наберите var1↵. В окне появится ответ nil - текущее значение переменной недоступно. Наберите local-var↵. В окне появится ответ "I am a local var". В функции local-var текущее значение переменной var1 определено.
4. Определите var1 как глобальную переменную. Для этого ее надо объявить не внутри функции, а вне ее. Поэтому просто наберите код (setq var1 "I am a global var").
5. Проверьте текущее значение переменной величины var1. Наберите в окне консоли var1. В ответ получите "I am a global var". Значение глобальной переменной сохраняется. А теперь снова наберите (local-var) ↵. И снова получите ответ "I am a local var". Как видите, хотя имена у локальной var1 и глобальной var1 одинаковые, но это разные переменные.
Переменные характеризуются временем жизни и областью видимости. Локальные переменные определяются внутри функции путем задания слеша с пробелом перед ними. Время жизни локальной переменной совпадает с временем выполнения процедуры. Область видимости локальной переменной ограничена только процедурой (функцией), в которой она задана. Вне этой процедуры текущие значения локальной переменной недоступны.
При объявлении глобальных переменных слеш не ставится. Время жизни глобальной переменной совпадает с временем открытия чертежа. Областью ее видимости является весь проект.
|
|
|
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!