ADN Open CIS
Сообщество программистов Autodesk в СНГ

10/10/2013

Копирование тела из одного компонента в другой

Вопрос:
Пример “Associative body copy API Sample” из Inventor API Help работает некорректно в случае создания не ассоциативной копии твердого тела, а именно, тело-копия неправильно позиционируется.

Ответ:
Действительно, проблема в том, что преобразование координат, связанное с компонентом в сборке, не учитывается во время копирования объекта SurfaceBodyProxy. Ниже приводится обновленная версия исходного примера, в которой эта проблема учтена.

Действительно, проблема в том, что преобразование координат, связанное с компонентом в сборке, не учитывается во время копирования объекта SurfaceBodyProxy. Ниже приводится обновленная версия исходного примера, в которой эта проблема учтена.

Опубликовано 10.10.2013     Читать далее >>>
09/10/2013

Получение фрагментов текста из примитива MText

Используем метод “ExplodeFragments”, как показано ниже в коде, для разбивки текстовой строки MText на фрагменты. Функция обратного вызова, которая передается методу “ExplodeFragments” вызывается для каждого фрагмента текста примитива MText.

Опубликовано 09.10.2013     Читать далее >>>
27/09/2013

Получение положения мыши (курсора) без события

AutoCAD API реализует интерфейс AcEdInputPointManager.InputPointMonitor который отслеживает любой ввод пользователя, в том числе и перемещение мыши. При помощи API можно отслеживать и сообщения в очереди Windows. Иногда нужно получить текущее положение мыши без наступления какого-либо события. Следующий код демонстрирует как это можно сделать. В действительности достаточно получить текущее положение курсора Windows и преобразовать его в координаты AutoCAD. Следует учитывать также ПСК.
Опубликовано 27.09.2013     Читать далее >>>
27/09/2013

Запуск правил iLogic из внешнего приложения

При работе с объектами iLogic из Inventor AddIn доступ к ним можно реализовать в режиме раннего связывания. Если же требуется получить к ним доступ из внешнего приложения, приходится пользоваться поздним связыванием. Причина кроется в том, что объекты iLogic не являются истинными COM объектами, они в действительности представляют собой обертки для .NET объектов.

Опубликовано 27.09.2013     Читать далее >>>
27/09/2013

Создание перекрытия с отверстиями (продолжение)Автор: Виктор Чекалин

Ранее обсуждался способ создания перекрытия со несколкими границами. В данной статье обсуждается еще один способ, как программно создать такое перекрытие.
Опубликовано 27.09.2013     Читать далее >>>
26/09/2013

Как реагировать на клавиши курсора (без передачи их в AutoCAD) используя ObjectARX?

В ObjectARX вы можете добавить фильтр в функцию обработки окна AutoCAD можно использовать PInvoke для использования этой функциональности в .NET).

Опубликовано 26.09.2013     Читать далее >>>
25/09/2013

Смещение элементовАвтор: Виктор Чекалин

Опубликовано 25.09.2013     Читать далее >>>
24/09/2013

Петля штриховки использующая коллекцию Curve2d

Чтобы создать штриховку информация для создания петли может быть указана как коллекция ObjectId содержащихся в базе примитивов. Тут лучше всего посмотреть эту статью: Создание объектов штриховки с использованием трассировки границ в .NET. Другой путь заключается в работе с одной лишь геометрией без добавления примитивов в базу.
Опубликовано 24.09.2013     Читать далее >>>
23/09/2013

Создание больших сборок средствами Inventor API. Общие рекомендации.

В данной статье собраны некоторые рекомендации общего характера, которые могут оказаться полезными при генерации сборок большой размерности средствами Inventor API. Вопросы настройки компьютерного «железа» не затрагиваются.

Опубликовано 23.09.2013     Читать далее >>>
21/09/2013

Описание метода Database.ResolveXrefs

Если вам интересно, что за параметры используются в методе…

public void Database.ResolveXrefs(bool useThreadEngine, bool doNewOnly)

…тогда взгляните описание эквивалентной функции в ObjectARX Reference Guide

Опубликовано 21.09.2013     Читать далее >>>
20/09/2013

Изменение имени Растрового изображения

В поле «имя» в палитре свойств AutoCAD для Растрового изображения отображается имя из записи словаря, используемого для хранения RasterImageDef в словаре именованных объектов "ACAD_IMAGE_DICT". Чтобы изменить имя Растрового изображения мы создадим новый RasterImageDef и ассоциируем все существующие Растровые изображения с ним. Важно также отключить реакторы растрового изображения перед тем как RasterImageDef будет выгружен и удален.

Опубликовано 20.09.2013     Читать далее >>>
18/09/2013

Зумирование, панорамирование и орбита текущего вида AutoCAD с помощью ObjectARX

Наш коллега Киан написал статью о зумировании, панорамировании и орбите текущего вида при помощи .NET. Я переписал этот код с помощью ObjectARX.
Опубликовано 18.09.2013     Читать далее >>>
16/09/2013

Длина имен ключей в словаре

К именам ключей в словаре применимы те же правила, что и к именам в символьных таблицах: не больше 255 символов, должны быть буквенно-цифровые и могут содержать символы доллара ($), подчеркивания (_) и переноса (-). Можно использовать функцию acdbSNValid() для проверки допустимости имени.

Опубликовано 16.09.2013     Читать далее >>>
13/09/2013

Линия привязки

В статье обсуждается как программно можно изменить линюю привязки стены
Опубликовано 13.09.2013     Читать далее >>>
13/09/2013

Закрытие документов из унаследованного от CAdUiDialog диалога

Вопрос:
Я не могу закрыть документы с использованием closeDocument API из диалога, унаследованного от CAdUiDialog, так как AutoCAD сообщает, что документ занят. Почему это происходит?

Опубликовано 13.09.2013     Читать далее >>>