acedSSGet

Автор Тема: acedSSGet  (Прочитано 9992 раз)

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

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

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

  • ADN OPEN
  • **
  • Сообщений: 79
  • Карма: 0
acedSSGet
« : 23-08-2023, 19:00:08 »
подскажите пожалста как получить выбранные элементы командой acedSSGet с параметром _I.
какой параметр использовать?
ранее я регистрировал реактор на выбор элементов, а счас нужно в нужный момент ( введена команда ) проверить а есть ли выделенные объекты ( блоки на чертеже ).

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

спасибо.

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: acedSSGet
« Ответ #1 : 23-08-2023, 19:18:44 »
Код - C++ [Выбрать]
  1. acedSSGet(L"_I", NULL, NULL, rbFilter, ss);
где rbFilter - фильтр выбора (цепочка resbuf).
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • **
  • Сообщений: 79
  • Карма: 0
Re: acedSSGet
« Ответ #2 : 23-08-2023, 19:22:10 »
я пробовал без фильтра. выдает ответ, что не было никакого выделения.
ответ  RTNONE.

а фильтр   я так понимаю чтобы выделить именно блоки ?
можете про него подробнее объяснить ?

Отмечено как Решение Олег 23-08-2023, 19:33:20

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: acedSSGet
« Ответ #3 : 23-08-2023, 19:25:11 »
если не ставить фильтр то выдает что не было никакого выделения.
ответ  RTNONE
А какие флаги у твоей команды? Должен быть как минимум флаг ACRX_CMD_USEPICKSET. А если нужно будет менять набор предварительного выбора, то ACRX_CMD_USEPICKSET | ACRX_CMD_REDRAW. Читай документацию!
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: acedSSGet
« Ответ #4 : 23-08-2023, 19:25:34 »
а фильтр   я так понимаю чтобы выделить именно блоки ?
Да.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • **
  • Сообщений: 79
  • Карма: 0
Re: acedSSGet
« Ответ #5 : 23-08-2023, 19:27:54 »
ACRX_CMD_TRANSPARENT

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

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: acedSSGet
« Ответ #6 : 23-08-2023, 19:30:55 »
ACRX_CMD_TRANSPARENT
Ну значит ты уже понял свою ошибку.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • ADN OPEN
  • **
  • Сообщений: 79
  • Карма: 0
Re: acedSSGet
« Ответ #7 : 23-08-2023, 19:34:05 »
Огромное спасибо за помощь  :)

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

  • ADN OPEN
  • **
  • Сообщений: 79
  • Карма: 0
Re: acedSSGet
« Ответ #8 : 23-08-2023, 19:46:47 »
Должен быть как минимум флаг ACRX_CMD_USEPICKSET. А если нужно будет менять набор предварительного выбора, то ACRX_CMD_USEPICKSET | ACRX_CMD_REDRAW.

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