- •Методические указания
- •Введение
- •Лабораторная работа № 1
- •Vba (Visual basic for Applications) как средство разработки программных приложений пользователя в среде AutoCad 2002
- •1. Цель работы
- •2. Комментарии по выполнению работы
- •Первое окно еще называют окном проводника проектов. Меню
- •Панели инструментов
- •Проекты и их элементы
- •Макросы
- •Модули и процедуры
- •Область действия
- •Константы
- •Отображение диалогового окна
- •Модуль программного кода
- •Листинг 1. Объявление глобальных переменных
- •Листинг 2. Текст головной программы
- •Листинг 3. Текст подпрограммы DrawCircles
- •Добавление программного кода работы с формой
- •Листинг 4. Программный код работы с формой
- •3. Содержание и порядок выполнения работы
- •Задания.
- •2. Комментарии по выполнению работы
- •3. Содержание и порядок выполнения работы
- •Варианты заданий.
- •1. Цель работы
- •2. Комментарии по выполнению работы
- •3. Содержание и порядок выполнения работы
- •Задания.
- •Лабораторная работа №4 Анализ графической базы данных чертежа AutoCad. Работа с примитивом типа блок. Использование расширенных данных
- •1. Цель работы
- •2. Комментарии по выполнению работы
- •3. Содержание и порядок выполнения работы
- •Задания
- •Библиографический список
- •Содержание
- •394026 Воронеж, Московский просп., 14
- •Составители: а.М.Нужный н.И. Гребенникова
1. Цель работы
Изучение средств VBA, позволяющих анализировать графическую базу данных чертежа AutoCAD и вывод данных в файл.
2. Комментарии по выполнению работы
Работа с примитивами графической базы данных чертежа (ГБД)
Информация обо всех графических примитивах (AcadEntity) чертежа (ThisDrawing) AutoCAD сохраняется в ГБД чертежа.
Доступ к элементам ГБД чертежа средствами VBA может быть осуществлен посредством использования свойства объекта Object.ModelSpace.
Общее количество объектов в ГБД определяется как Object.ModelSpace.count.
Доступ к объектам ГБД может быть осуществлен при использовании свойства Object.ModelSpace.Item(index), где index – переменная, принимающая значения от 0 до Object.ModelSpace.count-1.
Пример кода для перебора всех графических примитивов чертежа:
‘ Определение количество элементов в ГБ чертежа:
Rcount = ThisDrawing.ModelSpace.count
‘ Цикл для перебора графических примитивов
For index = 0 To Rcount – 1
Set ThisEntity = ThisDrawing.ModelSpace.Item(index)
Next
Для определения типа примитива можно использовать свойство ObjectName. Так, для примитивов типа «отрезок» свойство ObjectName принимает значение «AcDbLine», для примитивов типа «окружность» - «AcDbCircle». Поскольку тип этого свойства – строка, регистр при написании имеет значение.
Для вывода значений свойства ObjectName на экран можно использовать команду MsgBox:
For Index = 0 To Rcount – 1
Set ThisEntity = ThisDrawing.ModelSpace.Item(Index)
MsgBox (ThisEntity.ObjectName)
Next
Слои
При создании сложных чертежей часто возникает необходимость присвоения имен отдельным объектам или группам объектов. Для данной цели в AutoCAD служит свойство примитивов- слой (Layer).
Команда LAYER (СЛОЙ) открывает диалоговое окно Layer Properties Manager (Диспетчер свойств слоев).
В VBA доступ к слоям чертежа может быть организован через так называемую «коллекцию слоев».
Пример получения коллекции слоев и добавления нового слоя:
Dim layerColl As AcadLayers
Dim testlayer As AcadLayer
Set layerColl = ThisDrawing.Layers ’чтение коллекции слоев
Set testlayer = layerColl.Add("TEST") ’добавление нового слоя «test»
Так как слои являются свойствами примитивов, для доступа к их характеристикам может использоваться следующая конструкция:
ThisDrawing.ModelSpace.Item(index).Layer
Пример проверки имени слоя:
If ThisDrawing.ModelSpace.Item(index).Layer = "TEST" Then
…
EndIf
Работа с файлами
Открытие файла для записи осуществляется командой Open "имя файла" For Output As #номер.
Вывод в файл может быть осуществлен командой Write #номер, "Текст сообщения".
По окончании вывода данных в файл, файл должен быть закрыт командой Close #номер.
Запуск исполняемого файла осуществляется командой Shell.
3. Содержание и порядок выполнения работы
Создать приложение в среде разработки VBA согласно полученному заданию:
создать текст головной программы и подпрограмм, используемых в программе;
отладить приложение, получить требуемый результат.
Осуществить возможность просмотра полученного файла средствами «notepad.EXE».
Оформить отчет.