Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Використання програм мовою Автолисп при роботі в системі AutoCAD




Для використання Автоліспа в сеансі роботи з графічним редактором ACAD необхідні наступні умови.

1. Використовувана версія AutoCAD повинна мати модуль ADE-3.

2. При настроюванні системи AutoCAD Автолісп повинний бути підключений. При виконанні цих умов можна звертатися до Автоліспу, тобто виконувати функції Автоліспу в будь-який момент, коли редактор видає підказку COMMAND: (КОМАНДА:).

Можливі п'ять способів використання програм на Автоліспе в залежності від того, куди поміщена розроблена програма і яке ім'я дане основній (тобто останній) функції програми.

1. Безпосереднє введення програми з клавіатури. У відповідь на запрошення COMMAND: можна ввести першу функцію програми (набрати її текст на клавіатурі), і вона буде виконана, у відповідь на наступне запрошення - наступну функцію і тд. Зображення буде будуватися поступово, як при роботі з редактором ACAD. Значення, яке повертається кожною функцією буде видаватися на екран (у нижній рядок).

Отже, будь-який текст, що починається із символу "(", редактор ACAD сприймає як функцію Автоліспу і передає інтерпретаторові Автоліспа. Очевидно, що він незручний, тому що при кожнім повторному виконанні програму потрібно знову цілком набирати.

2. Введення програми, оформленої як опис функції. Програма, набрана на клавіатурі в сеансі роботи з ACAD, може бути використана повторно, якщо вона оформлена як опис функції або кілька описів функцій, тобто починається з DEFUN. Повторний виклик такої програми реалізується як звертання до описаної функції в будь-який момент до завершення поточного сеансу роботи з ACAD. Після виходу, із графічного редактора програма "губиться".

3. Запис програми у вигляді файлу і виклик у вигляді функції Автоліспа. Програму можна створити як текстовий файл за допомогою будь-якого редактора текстів. Такий файл можна записати в доступний каталог, давши йому ім'я з розширенням LSP.

Далі дану програму потрібно завантажити в ОЗУ за допомогою функції Автоліспа LOAD. Функція має вигляд:

(LOAD < ім'я файлу >)

Ім'я файлу, у якому зберігається дана програма, варто задавати в текстовому виді без розширення, але при необхідності з префіксом.

В ACAD 2004 і вищої версії завантаження програми в оперативну память виконується також безпосередньо з редактора VisualLISP (File/Load File... <ім’я файлу >) або меню AutoCAD

(Tools/Load Application <ім’я файлу> або Tools/AutoLISP/Load Application <ім’я файлу>).

Тепер у відповідь на підказку COMMAND: у будь-який момент можна ввести рядок з ім'ям будь-якої функції програми, визначеної в програмі за допомогою DEFUN, уклавши це ім'я в дужки. Якщо потрібно, то після імені функції вказуються її аргументи. Наприклад, текст Програми

; Програма 1

(defun COLO(R1)

(setq P1 (getpoint "Введіть центр кола:"))

(setq R1 100)

(command "CIRCLE" P1 "D" R1 "")

(command "CIRCLE" P1 R1 "")

)

 

можна набрати в текстовому редакторі і записати на диск під ім'ям KOLO1.LSP. У сеансі роботи з ACAD у відповідь на COMMAND: увести рядок:

(LOAD “KOLO1”)

На екрані з'явиться ім'я завантаженої функції - COLO.

Після цього на будь-який запит COMMAND: можна набрати відповідь:

(COLO 100) або (COLO 200) і т.д.

У результаті цього Програма 1 буде виконана (з аргументами 100, 200 таін.).

 

Оформлення програми як готової команди ACAD. Програму можна оформити так, щоб після завантаження файлу з цією програмою, її можна було викликати по імені точно так само, як викликаються команди ACAD (тобто без дужок).

Для цього ім'я головної функції в програмі (останньої, котра описана через DEFUN) потрібно почати із символів "С:". Наприклад, у Програмі 1 запис C:COLO дозволяє створити нову команду AutoCAD з назвою COLO. Таким чином, можна оформляти тільки функції, що не мають аргументів.

(defun C:COLO()

(setq P1 (getpoint "Введіть центр кола:"))

(setq R1 100)

(command "CIRCLE" P1 "D" R1 "")

(command "CIRCLE" P1 R1 "")

)

 

 

Автоматичне завантаження програм. Може виникнути бажання обійтися без команди LOAD і завантажувати програму автоматично. Це можна зробити, якщо додати текст програми у файл ACAD.LSP. Такий файл буде завантажений в ОЗУ при виклику редактора ACAD.

Зрозуміло, що цілях економії оперативної пам'яті, у файл ACAD.LSP варто включати тільки найбільше часто використовувані програми.

Автоматичний запуск програми. Можна оформити програму таким чином, щоб вона не тільки завантажувалася, але й автоматично виконувалася після виклику редактора ACAD. Для цього її потрібно включити у файл ACAD.LSP під ім'ям S: STARTUP.

Таку програму доцільно застосовувати для настроювання середовища ACAD і створення зручних для користувача початкових умов.

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...