ObjectARX и работа с объектами Civil 3D

Автор Тема: ObjectARX и работа с объектами Civil 3D  (Прочитано 4446 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DebalanceАвтор темы

  • ADN Club
  • ****
  • Сообщений: 421
  • Карма: 16
    • Advanced software for AutoCAD
  • Skype: Debalance
Подскажите, как добраться до объектов характерных только для Civil 3D используя ObjectARX. Я так понимаю есть Custom Draw API но это, судя по всему, не совсем то. Доступ к объектам похоже реализован только через .NET... или я не прав?

Ранее я в основном работал с AutoCAD Vanilla, этим и вызван вопрос.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: ObjectARX и работа с объектами Civil 3D
« Ответ #1 : 09-12-2016, 14:19:00 »
Увы но публичного API для работы из чистого C++ (по аналогии с ObjectARX) с Civil 3D нет. Впрочем, часть объектов - это объекты Map 3d, а для него есть свой ObjectARX, который значительно "крупнее" обычного ObjectARX: http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=868220. Часть объектов - это общие с AutoCAD Architecture объекты, и для них есть OMF (доступен только действительным членам ADN: http://adn.autodesk.com/adn/servlet/item?id=5427926&siteID=4814862).
Остальное же или .NET или COM (устаревающее).
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн DebalanceАвтор темы

  • ADN Club
  • ****
  • Сообщений: 421
  • Карма: 16
    • Advanced software for AutoCAD
  • Skype: Debalance
Re: ObjectARX и работа с объектами Civil 3D
« Ответ #2 : 09-12-2016, 15:42:28 »
Увы но публичного API для работы из чистого C++ (по аналогии с ObjectARX) с Civil 3D нет.
Ясно.
Судя, например, по объекту AcDbMPoligon который недоступен (почему-то) в AutoCAD Vanilla, но который присутствует (вполне себе) в ObjectARX складывается впечатление, что пакет создавался как универсальный (для всех вертикальных приложений). Но по прошествии времени эта концепция видимо себя изжила... а "рудиментарные отростки" остались (я имею ввиду объекты, которые недоступны в базовом AutoCAD).

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: ObjectARX и работа с объектами Civil 3D
« Ответ #3 : 09-12-2016, 20:25:11 »
Судя, например, по объекту AcDbMPoligon который недоступен (почему-то) в AutoCAD Vanilla
Очень он даже доступен. Я им пользуюсь в чистом AutoCAD начиная как минимум с AutoCAD 2004. Только он не AcDbMPoligon, а AcDbMPolygon. И не забудь перед использованием класса AcDbMPolygon организовать вызов acrxLoadModule(_T("AcMPolygonObjXX.dbx"),false) (XX зависит от версии AutoCAD).
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн DebalanceАвтор темы

  • ADN Club
  • ****
  • Сообщений: 421
  • Карма: 16
    • Advanced software for AutoCAD
  • Skype: Debalance
Re: ObjectARX и работа с объектами Civil 3D
« Ответ #4 : 09-12-2016, 20:50:35 »
Только он не AcDbMPoligon, а AcDbMPolygon
Это опечатка естественно...
Очень он даже доступен.
Говоря о доступности я имел ввиду доступность на уровне команды и самого Акада. В частности в CIVIL наблюдается команда _MPOLYGON, в то время как в чистом Акаде её не просматривается. Или есть другая команда?
И не забудь перед использованием класса AcDbMPolygon организовать вызов acrxLoadModule(_T("AcMPolygonObjXX.dbx"),false) (XX зависит от версии AutoCAD).
Спасибо, учту.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: ObjectARX и работа с объектами Civil 3D
« Ответ #5 : 09-12-2016, 20:52:27 »
Говоря о доступности я имел ввиду доступность на уровне команды и самого Акада. В частности в CIVIL наблюдается команда _MPOLYGON, в то время как в чистом Акаде её не просматривается. Или есть другая команда?
Команды нет (насколько я помню), хотя используя ObjectARX её можно спокойно создать самому, так как всё что надо есть в ObjectARX.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение