Создание копии (клона) динамического блока

Автор Тема: Создание копии (клона) динамического блока  (Прочитано 7444 раз)

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

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 738
Понадобилось мне получить зеркальное отображение нескольких объектов в чертеже. Нашёл пример кода: https://www.keanw.com/2008/10/mirroring-autoc.html. Всё очевидно и просто - создаётся копия-клон (методом Clone), к ней применяется матрица преобразования. Но, как оказалось, с динамическими блоками этот механизм работает с полной потерей динамики! Вместо ожидаемого, получается вставка анонимного блока. Как выяснилось, так работает метод Clone на динамических блоках - он получает "снимок" текущего состояния динамического блока в виде анонимного блока и создаёт его копию! Возможно, для динамических блоков есть какой-то свой собственный способ копироваться? Бегло погуглил - ничего пока не нашёл толкового...

Отмечено как Решение Дмитрий Загорулькин 02-11-2020, 20:20:53

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

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

Оффлайн Дмитрий ЗагорулькинАвтор темы

  • ADN
  • *
  • Сообщений: 2531
  • Карма: 738
Охохо... Ну ладно, в моём случае это не критично, т.к. я мало того, что исходные объекты (которые зеркалятся) программно создаю, так и зеркалить мне надо вертикально - слева-направо. Т.е. я просто программно создам ещё один такой блок в симметричной точке и задам ему Scale.X = -1. Но в общем случае эта задача ох как непроста! Если зеркалить относительно произвольной линии, заранее неизвестный блок с динамическими параметрами различного типа, да с атрибутами...