Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Определение новых команд





Создадим простую и полезную функцию, которая бы объединяла команду Zoom с опцией Window.

 

В этом примере, специальное ключевое слово AutoLISP pause ис-

пользуется как аргумент для функции COMMAND. Pause останавливает оценку выражения и позволяет пользователю ответить на текущее приглашение в командной строке.

Наберите этот код в новом текстовом файле, назвав его ZW.LSP, а затем загрузите файл в AutoCAD.

 

(Defun ZW()

(command "ZOOM" "Window" pause pause)

)

 

Command: (appload "ZW")

ZW

 

Command: (zw)

First corner: <pick>

Other corner: <pick>

nil

 

Недостаток этой функции - некоторое неудобство при вызове ее как формы, то-есть надо набрать ее имя в круглых скобках и вызывать ее как функцию AutoLISP. Это требование означает дополнительный набор на клавиатуре конечным пользователем, и потребность помнить, какие команды заключены в круглые скобки и какие нет.

AutoLISP позволяет создавать определяемые пользователем функции, которые могут вызываться из командной строки без того, чтобы пе-редавать их как формы, то-есть без того, чтобы включать имя функции в круглые скобки. Перед именем функции должен быть префикс C:, как иллюстрируется ниже.

Добавьте этот код к новому текстовому файлу назвав его ZW.LSP.

Загрузите файл.

 

(defun C:ZW ()

(command "ZOOM" "Window" pause pause)

)

Command: (appload "zw")

C:ZW

Command: ZW

or

Command: (C:ZW)

 

Ниже пример новой команды AutoCAD названной CD. CD чертит окружности по центральной точке и диаметру.

 

Добавьте этот код к новому текстовому файлу названному CD.LSP.

Загрузите файл.

 

(defun C:CD ()

(command "CIRCLE" pause "Diameter" pause)

)

 

Command: (appload "cd")

C:CD

 

Command: CD

или

Command: (C:CD)

 

 

Вопросы:

 

1. Что такое подпрограммы в AutoLISP?

2. Что такое форма в AutoLISP?

3. Каково различие между формой и списком (или сложным выражением), что должно обрабатываться строго как данные?

4. Какой вид атома должен всегда быть первым элементом в любой

форме?

5. Какая подпрограмма AutoLISP позволяет пользователю создавать

его собственные функции?

6. Каковы два требуемых параметра функции, обсуждаемой в пункте 5?

7. Каковы необязательные параметры функции обсуждаемой в пункте 5?

8. Какое значение возвращается определяемой пользователем фун-

кцией?

9. Как Вы можете использовать внешний файл, который содержит код

AutoLISP в AutoCAD?

10. Какое ключевое слово позволяет пользователю отвечать на зап-

росы, сгенерированные командами AutoCAD, вызываемыми функцией

COMMAND AutoLISP?

11. Как можно устранить необходимость для пользователя вызывать

функцию включая ее имя в круглых скобках?

12. Какая функция будет возвращать пустую строку если она включе-

на как последнее выражение в определении функции?

13. Как может пользователь определить, требуется ли функции пара-

метр?

14. Где используются значения требуемых параметров внутри выраже-

ний, которые включают команды обработки определенной пользовате-

лем функции?

 

 


Date: 2015-12-12; view: 316; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию