Работа с Панелью свойств в .NET (OPMNetExt) для AutoCAD

Автор Тема: Работа с Панелью свойств в .NET (OPMNetExt) для AutoCAD  (Прочитано 122236 раз)

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

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Все, ребят, завелось из-под VB.NET! :)
Всем откликнувшимся спасибо, здоровья и ++++

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
предварительно сделав метод Public
З.ы. Public не причем, сорри)

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Еще проблемка возникла: как можно реализовать сохранение значения свойства для каждого экземпляра объекта ?

Оффлайн Александр РивилисАвтор темы

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Еще проблемка возникла: как можно реализовать сохранение значения свойства для каждого экземпляра объекта ?
В методе SetCurrentValueData сохраняешь значение. Где и как - это твоё дело.
P.S.: Внимательно прочитай у меня в подписи как следует форматировать код для форума и соблюдай это правило.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Александр Ривилис, спасибо.
А нет ли примера сохранения кастомных свойств в базу данных чертежа?
З.ы.: по форматированию кода исправлюсь)

Оффлайн Александр РивилисАвтор темы

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
А нет ли примера сохранения кастомных свойств в базу данных чертежа?
Как минимум нужно понимать куда и что ты собираешься сохранять.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Александр Ривилис, моя цель проста.
Мне нужно реализовать объединение нескольких произвольно указанных пользователем примитивов (различных классов) в одну группу.
Это похоже на образование блока, но только виртуального - без реального объединения примитивов в блок.
Т.е. выделенным пользователем примитивам в кастомное свойство присваиваю значение ObjectId какого-либо одного примитива из этой выделенной группы - это будет так сказать базовый (опорный) примитив.
А затем по произвольному выделенному на чертеже примитву через сохраненное значение кастомного свойства осуществляю выделение (включение в SelectionSet) остальных примитивов-членов, входящих в группу.
Т.о. как-то нужно произвести запись значений кастомного свойства каждого примитива в БД чертежа.

Оффлайн Александр РивилисАвтор темы

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
bars4@inbox.ru
Так почему не воспользоваться именно группой (Group)? Там вроде бы всё что тебе нужно есть.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Далее по бизнес-логике будет производиться экспорт данных чертежа через DataExtraction в Excel, где будет производиться анализ созданных группировок примитивов, а именно от каждого входящего члена группы будут извлечены значения имени блока, слоя, типа линии, цвет и т.п. (в зависимости что попадет в группу) для интерпретации и отчетов, а так же каждому из этих входящих примитивов потребуется раздать (присвоить, назначить) координату (адрес) опорного примитива данной виртуальной группы, который тоже пойдет в отчеты в виде отдельного поля.
Можно ли будет достичь этого же результата посредством Group как таковых ?

Оффлайн Александр РивилисАвтор темы

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Можно ли будет достичь этого же результата посредством групп как таковых ?
Я думаю тебе нужно начать с изучения AutoCAD. А точнее выяснить что такое группа в AutoCAD и как это реализовано, где она хранится, как в неё добавить примитивы, как извлечь информацию о примитивах в группе.
К данной теме это не имеет никакого отношения.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн bars4@inbox.ru

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Александр Ривилис, согласен, это уже другая тема. Спасибо)

Оффлайн Александр РивилисАвтор темы

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Портировал OPMNetExt для AutoCAD 2021:  https://adn-cis.org/opmnetext-dlya-autocad-2021.html
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение