Autocad vba code examples допоміжні функції

Точка для побудови перпендикуляра (Perpendicular)

Функція повертає точку, що лежить на заданому відрізку, через яку проходить перпендикуляр, опущений на цей відрізок з заданої точки.
Крім основної функції тут узгоджено приклади таких допоміжних фунуція:
PI () - повертає число p
Degrees (Radians As Double) - перетворює кут, заданий в радіанах, в градуси
Radians (Degrees As Double) - перетворює кут, заданий в градусах, в радіани

Робота з файлами і папками

Приклади з інших розділів:

Створення ярлика для заданого об'єкта

Відкриття всіх файлів dwg із заданої папки і
виконання над усіма примітивами креслень цих файлів
однакових перетворень.

Після запуску процедури OpenAndProcessAllDrawings у користувача буде запрошена папка. Після завдання папки всі файли dwg з цієї папки будуть відкриті і всі примітиви креслень цих файлів будуть переміщені на шар 0

Взаємодія з користувачем

Функції та процедури, що знаходяться в інших розділах:

Запит параметра зі значенням за замовчуванням

Інші допоміжні процедури і функції

Функції та процедури, що знаходяться в інших розділах:

Процедура SetDatabaseClean очищає журнал зроблених користувачем в кресленні змін, що унеможливлює застосування команди Undo.

Визначення повного шляху до додатка

Визначення поточного простору листа

Майже у всіх наведених в цьому довіднику процедурах використовуються операції по створенню будь-яких примітивів креслення. Оніобично виглядають приблизно так:

У будь-якому випадку в цих командах має бути вказано поточний простір (Моделі або Ліста). Як правило, якщо процедура сама не ставить в якому просторі виробляти отрисовку, за раніше невідомо де користувач захоче скористатися цією процедурою - в просторі Моделі або в просторі листа. Тому в таких випадках необхідно передбачити автоматичне визначення поточного простору. У всіх прикладах, отриманих мною з для визначення поточного простору використовується наступний принцип:

Я пропоную свій метод. Це функція, яка визначає поточний простір в будь-яких випадках. Помістіть код в стандартний модуль і спробуйте запустити процедуру TEST_GetSpase. перебуваючи в різних просторах креслення.

Визначення поточного масштабу відтворення