![]() |
Translate to: |
||||||
| Обратная связь | Новости САПР | Программы | Документация | Полезные советы | Обзорные статьи | ||
| Заказ и разработка | Каталог САПР | САПР-конференция | Библиотека ГОСТов | Наши соавторы | Коммерческое ПО | ||
Перевод и редакция
Евгения Калашникова
tb5@ugm.zsmk.ru
Здесь представлены примеры процедур и функций, написанных на VBA и предназначенных для работы в AutoCAD. Большинство примеров любезно предоставили:
| Marie Rath | rwrath75@worldnet.att.net | |
| Randall Rath | rwrath73@worldnet.att.net | |
| Ralph J Llama | rwrath74@worldnet.att.net | |
| Jessica Rath | rwrath76@worldnet.att.net |
их сайт VBDESIGN,
посвященный программированию для
AutoCAD расположен по адресу
http://www.vbdesign.net
Все размещенные здесь примеры
опробованы на практике в AutoCAD 2000, в некоторых
исправлены замеченные незначительные
ошибки и добавлены краткие пояснения.
Если я что упустил или не заметил, если кто-нибудь заметит какие либо
ошибки просьба сообщить мне на E-Mail tb5@ugm.zsmk.ru
Пример функции, выполняющей над заданным объектом любую команду AutoCAD
Определение и отмена текущей команды AutoCAD
Запуск процедуры VBA из командной строки AutoCAD
Прямоугольный массив копий группы объектов
Набор функций для разрыва отрезка по двум заданным точкам
Пример перемещения текстовых объектов
Копирование и поворот выбранных объектов
Эквидистантная копия на заданный слой
Удаление из базы данных чертежа неиспользуемых блоков
Удаление из базы данных чертежа неиспользуемых типов линий
Удаление из базы данных чертежа неиспользуемых слоев
Удаление из базы данных чертежа неиспользуемых слоев, блоков или типов линий по выбору
Удаление из базы данных чертежа неиспользуемых групп объектов
Удаление из базы данных чертежа всех неиспользуемых объектов с помощью диалогового окна
Масштабирование изображения по габаритам заданного примитива
Масштабирование изображения по блоку, выбранному с помощью диалогового окна
Пример процедуры, добавляющей к AutoCAD новое меню
Создание кнопки меню с закрепленной процедурой VBA
Создание панели инструментов для заморозки слоя по выбранному объекту и разморозки всех слоев
Скрытие и отображение всех панелей инструментов
Сохранение и
восстановление состояния слоев
(информация
о состоянии слоев сохраняется в текстовом
файле)
Создание базы данных с информацией о слоях
Создание массива с данными о всех слоях чертежа
Проверка наличия в чертеже слоя с заданным именем
Заморозка слоя по выбранному объекту
Удаление всех объектов с заданного слоя
Сортировка примитивов чертежа по типам лини на разные слои
Пример диалогового окна с информацией о слоях
Процедура для заполнения списка наименованиями слоев
Заморозка всех слоев чертежа кроме последнего
Защита от изменений всех слоев вставленных в чертеж внешних ссылок
Проверка наличия в чертеже типа линии с заданным именем
Создание текстовых стилей на основании текстового файла
Определение значения системной переменной
Задание значения системной переменной
Копирование координат точки в буфер обмена
Перевод координат из WCS в UCS
Определение текущего пространства
Создание копии пространства листа (Layouts)
Определение текущего пространства (II способ)
Пример создания класса для работы с примитивами AutoCAD
Процедура сохранения всех объектов заданного слоя в отдельном чертеже
Работа с SelectionSet (Набор объектов)
Проверка, есть ли в заданной точке текстовый объект
Получение набора объектов, пересекающихся с выбранной линией
Определение габаритов группы выбранных объектов
Использование фильтра для выбора объектов
Обеспечение фильтра выбора объектов
Использование меток объектов для создания набора
Отслеживание выбора пользователем примитивов
Изменение цвета объектов с помощью диалогового окна, вызываемого из файла ACAD.EXE
Определение длины выбранного отрезка
Определение координат середины выбранного отрезка
Отрисовка двойной ломанной линии заданной ширины через указываемые точки
Отрисовка дуги по трем точкам с отображением резиновой линии
Определение точки центра дуги, проходящей через три заданные точки
Отрисовка полилинии с вставкой заданного блока в ее вершинах
Определение выбранного пользователем сегмента полилинии
Определение свойств сегмента полилинии, выбранного пользователем
Определение длины полилинии с помощью метода Explode
Определение длины полилинии расчетным путем
Реверс точек полилинии (изменеие направления)
Связь площади полилинии с текстовым объектом
Сохранение координат полилинии в текстовом файле
Импорт точек полилинии виз AutoCAD в Excel и экспорт точек из Excel в AutoCAD
Выделение объектов, находящихся на заданном расстоянии от полилинии
Создание объекта DText (Динамический текст)
Создание текстового объекта с заданным выравниванием
Изменение угла наклона всех текстовых объектов чертежа
Объединение нескольких многострочных текстовых объектов в один
Перевод всех символов выбранного текста в верхний регистр
Поиск и замена текста во вставленных блоках
Добавление текстового объекта в блок
Создание связи между двумя текстовыми объектами
Связь площади полилинии с текстовым объектом
Функции для операций над аттрибутами и текстом
Замена значения размера его текстовым выражением
Простановка вертикального или горизонтального линейного размера
Группировка примитивов по слоям
Проверка наличия в чертеже групппы с заданным именем
Поиск и замена текста во вставленных блоках
Добавление текстового объекта в блок
Создание блока из выбранных объектов
Диалоговое окно для вставки блока
Вставка блока в масштабе, равном масштабу текущего размерного стиля
Вставка блоков в точки, совпадающие с вершинами выбранной полилинии
Расчленение блока и перенос всех элементов блока на заданный слой
"Выдергивание" примитива из блока
Нахождение в чертеже всех вставленных блоков с заданным именем
Создание в таблице Excel списка всех вставленных в чертеж блоков и их количества
Изменение всех длинных имен блоков на короткие
Определение масштабных коэффициентов блока по осям
Изменение слоя всех вставленных блоков
Замена существующего блока на блок из заданного файла
Вставка блока с аттрибутами и запрос их значений
Задание значений атрибутов на основании данных из базы данных
Экспорт значений аттрибутов блока в текстовые объекты
Вставка блока с изменением масштаба отображения аттрибутов
Выравнивание аттрибутов в повернутом блоке
Отображение нивидимых аттрибутов выбранного блока
Проверка значения аттрибута перед закрытием файла
Функции для операций над аттрибутами и текстом
Защита от изменений всех слоев вставленных в чертеж внешних ссылок
Поиск всех внешних ссылок и конвертирование их в блоки
Создание класса для доступа к свойствам внешних ссылок
Диалоговое окно для вставки в чертеж внешних ссылок
Отслеживание команды вставки внешней ссылки
Создание новых свойств объектов c использованием расширенных данных
Сохранение строки текста в области расширенных данных
Сохранение в области расширенных данных имени пользователя, даты и примечаний
Нахождение всех примитивов, содержащих в области расширенных данных заданное значение
Маркировка центров окружностей и дуг
Создание выносной полки для указанного Мультитекста
Функция GetLenght, определяющая расстояние между двумя точками (disstance)
Определение габаритов нескольких выбранных объектов
Перевод угла, заданного в радианах, в градусы
Перевод угла, заданного в градусах, в радианы
Определение точки центра дуги, проходящей через три заданные точки
Точка для построения перпендикуляра (Perpendicular)
Запрос у пользователя ключевых слов
Отслеживанеи нажатия клавиши ESC
Запрос точки с отображением "резиновой" линии
Запрос у пользователя примитива чертежа
Запрос у пользователя нескольких примитивов чертежа
Запрос у пользователя параметра со значением по умолчанию
Открытие и сохранение файлов с помощью API
Выбор папки в диалоговом окне с помощью API
Создание ярлыка для заданного объекта
Определение текущего пространства
Определение текущего пространства (II способ)
Определение текущего масштаба отрисовки
Определение полного пути к приложению
Определение значения системной переменной
Выбор цвета в диалоговом окне с помощью функции API
Перевод стандартных цветов AutoCAD в формат RGB
Перевод цветов AutoCAD в формат RGB (учтены все 256 цветов)
Эквидистантная копия на заданный слой с примером диалогового окна для выбора слоев
Масштабирование изображения по блоку, выбранному с помощью диалогового окна
Создание текстовых стилей на основании текстового файла
Удаление из базы данных чертежа всех неиспользуемых объектов с помощью диалогового окна
Пример диалогового окна с информацией о слоях
Диалоговое окно для вставки блока
Диалоговое окно для вставки в чертеж внешних ссылок
Сохранение строки текста в области расширенных данных
Сохранение в области расширенных данных имени пользователя, даты и примечаний
Выбор цвета в диалоговом окне с помощью функции API
Перевод стандартных цветов AutoCAD в формат RGB
Перевод цветов AutoCAD в формат RGB (учтены все 256 цветов)
Открытие и сохранение файлов с помощью API
Выбор папки в диалоговом окне с помощью API
Форма с окном просмотра выбранных на чертеже примитивов
Copyright © Сайт поддержки пользователей САПР