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

31/01/2015

Две недокументированные функции в Vault 2015 R2

Описание интересных функций Vault
Опубликовано 31.01.2015     Читать далее >>>
29/01/2015

Показ модальных и немодальных HTML страниц в AutoCAD

Начиная с AutoCAD 2014 появились два новых API для показа HTML-страниц в AutoCAD за счет небольших дополнений к существующим API:

Опубликовано 29.01.2015     Читать далее >>>
27/01/2015

Отслеживание меток примитивов в команде БЛОКРЕД

Метки примитивов в AutoCAD являются уникальными внутри базы, но AutoCAD может их менять, при этом оставляя их уникальными. Редактирование блока при помощи команды БЛОКРЕД (BEDIT) – это одна из операций, когда можно ожидать что метки примитивов будут меняться. Если ваш код хранит значений меток примитивов внутри BlockTableRecord, вам может быть интересным отследить изменение значений меток примитивов при редактировании блока.

Опубликовано 27.01.2015     Читать далее >>>
26/01/2015

Выбор примитивов для изменения свойств

Чтобы выбрать примитивы и оставить видимыми свойства выбранных примитивов в Панели Свойств необходимо вашей команде установить флаг CommandFlags.Redraw. Это гарантирует то, что AutoCAD оставит выбранные примитивы подсвеченными. После этого вы можете изменить их общие свойства по своему разумению. Далее небольшой фрагмент кода для выбора всех примитивов:
Опубликовано 26.01.2015     Читать далее >>>
26/01/2015

Просмотр нормалей к граням сети

Недавно я получил чертеж от одного из программистов, который содержал сеть (SubDMesh), созданную при помощи кода, использующего информацию о вершинах и гранях. В таких сетях нормали к граням зависят от порядка вершин, определяющих грани, так что нужно было убедиться, что с нормалями всё в порядке.

В этом случае желательно было увидеть нормали к сети. Следующий код показывает как это сделать:

Опубликовано 26.01.2015     Читать далее >>>
25/01/2015

Как получить зеркальный объект после применения метода ElementTransformUtils.MirrorElement

Для получения симметричного объекта в Revit API есть два метода:

  • ElementTransformUtils.MirrorElement
  • ElementTransformUtils.MirrorElements

Проблема в том, что эти методы не возвращают какое-либо значение. А это значит, что на прямую мы не можем получить результат, т.е. объект, полученный в результате зеркального отображение исходного объекта.

Опубликовано 25.01.2015     Читать далее >>>
24/01/2015

Скрыть все элементы кроме элементов заданной системыАвтор: Виктор Чекалин

Скрыть все элементы, кроме элементов заданной системы

На форуме, у пользователя goblya, возник интересный вопрос. Так как решение его проблемы оказалось не таким-то уж и простым, и пришлось повозиться с окончательным решением, то решил создать статью с решением.

Итак, задача. Необходимо скрыть все элементы на виде, кроме элементов системы, к которой принадлежит выбранный элемент.

У пользователя это почти получилось. Действовал он в правильном направлении, однако, некоторые элементы все же не скрывались.

Опубликовано 24.01.2015     Читать далее >>>
23/01/2015

Как получить все доступные параметры экземпляра для категорииАвтор: Виктор Чекалин

Получить все параметры заданной категории можно двумя способами.

Первый заключается в том, что нужно получить объект в модели заданной категории и взять его коллекцию параметров.

Опубликовано 23.01.2015     Читать далее >>>
22/01/2015

Порядок создания мультивыноски (MLEADER) в AutoCAD

Подняли тут тему на dwg.ru о порядке создания мультивыноски в AutoCAD. Результаты собственных изысканий представляю на суд общественности.
Опубликовано 22.01.2015     Читать далее >>>
15/01/2015

Прозрачность в AutoCAD средствами lisp

Понадобилось тут "поиграться" с прозрачностью примитивов и слоев в AutoCAD. Это оказалось очень интересно и очень познавательно.
Опубликовано 15.01.2015     Читать далее >>>
14/01/2015

Установка прозрачности слоя в .NET

Слою можно назначить (начиная с версии AutoCAD 2011) прозрачность при помощи диалога команды слой.

Это пример того, как можно достигнуть такого же результата при помощи AutoCAD .Net API.

Перед тем как попробовать этот код не забудьте установить системную переменную TRANSPARENCYDISPLAY в 1.

Опубликовано 14.01.2015     Читать далее >>>
12/01/2015

Прозрачность слоев в ObjectARX

Следующий код показывает процедуру изменения «прозрачности» слоя при помощи ObjectARX. Он устанавливает слою 0 прозрачность 60%. Чтобы на экране отобразились изменения требуется регенерация.

Опубликовано 12.01.2015     Читать далее >>>
12/01/2015

Извлечение информации о материале

Вопрос: Как можно с помощью Revit API извлечь типовые свойства представления материала и файл изображения выдавливания?

Я добрался до некоторых свойств представления материала:

Код - C#: [Выделить]
 foreach (Element elem in collector)

  {

    Material mat = elem as Material;

    AppearanceAssetElement ae = (AppearanceAssetElement)

      m_CurrentDocument.GetElement(mat.AppearanceAssetId);

    Asset set = ae.GetRenderingAsset();

    ......

  }

Но как получить название и путь к файлу?

Опубликовано 12.01.2015     Читать далее >>>
11/01/2015

Запись данных в расширяемую область хранения при импорте IFC

Вопрос: я успешно изменил модуль экспорта в IFC и добавил экспорт данных из расширяемой области хранения.

Сейчас мне нужно изменить модуль импорта IFC файла для записи этих данных обратно в расширяемую область хранения. Как это можно реализовать?

Опубликовано 11.01.2015     Читать далее >>>
10/01/2015

Двумерные координаты конечных точек кривой на 3D-виде

Мне всегда нравились вопросы по геометрии, даже если они достаточно простые. Этот вопрос возможно не такой уж и простой.

Вопрос: Я хочу получить двумерные координаты конечных точек кривой, находясь в 3D-виде.

Опубликовано 10.01.2015     Читать далее >>>
30/12/2014

Ошибка при создании арматурных стержней из кривых

Мы знаем, что создать арматуру можно с помощью нескольких перегруженных методов. Одним из них является метод CreateFromCurves:

Код - C#: [Выделить]
 public static Rebar CreateFromCurves(

    Document doc, RebarStyle style, RebarBarType barType,

    RebarHookType startHook, RebarHookType endHook, Element host,

    XYZ norm, IList<Curve> curves,

    RebarHookOrientation startHookOrient,

    RebarHookOrientation endHookOrient,

    bool useExistingShapeIfPossible, bool createNewShape);

Опубликовано 30.12.2014     Читать далее >>>
29/12/2014

Текстуры для произвольной фигуры

Вопрос: Можно ли задать текстуру (материал) для произвольной фигуры?

Опубликовано 29.12.2014     Читать далее >>>
27/12/2014

Создание зависимостей труб по осевой линии

Заказчик хочет использовать Revit API для создания зависимостей двух труб по центру их осей. Я думаю, это вполне осуществимо, и вот такой у меня родился план действий:

  • Получить осевую линию труб с помощью метода Element.get_Geometry()
  • Создать новую зависимость методом Document.Create.NewAlignment()
Опубликовано 27.12.2014     Читать далее >>>
25/12/2014

Категории для произвольной фигуры

Вопрос: Я хотел бы создать произвольные фигуры (DirectShape) для визуального отображения разлиных типов балок и поместить их в различные категории. Пока что я могу создать их только во встроенной категории, например, вот так:

Код - C#: [Выделить]
  ElementId id = new ElementId(

    BuiltInCategory.OST_StructuralFraming );

 

  DirectShape ds = DirectShape.CreateElement(

    doc, id, "A", "B" );

А могу ли я создать свою категорию и использовать ее при создании фигуры?

Опубликовано 25.12.2014     Читать далее >>>
25/12/2014

Разработка CRX приложений

Мы получили несколько общих вопросов от разработчиков использующих AcCoreConsole. Это два вопроса (и ответы любезно предоставленные членом нашей команды разработчиков AutoCAD) …

Вопрос 1: Какие библиотеки ObjectARX я могу прилинковать к моей DLL для загрузки в AcCoreConsole (или другого AcCore-продукта, который Autodeskможет выпустить в будущем)?

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