Инвертировать видимость

Плагин AVC_Invert к AutoCAD и BricsCAD.

Изоляция выбранных объектов и одновременно переключение видимости у всех остальных объектов.

Команды изоляции/скрытия очень помогают работать с большими моделями, огромными чертежами. Маленький набор изолированных объектов гораздо легче покрутить и не мешают лишние привязки. Однако разработчики CAD-программ упустили необходимость редактирования списка видимых объектов. Только включать все, выбирать заново и опять изолировать. Именно эту проблему изящно решает плагин Invert.

Когда вы работаете в большом чертеже изолируя небольшой фрагмент, то вам может очень пригодится команда Invert, которая позволит добавлять объекты к видимым не сбрасывая набор изолированных объектов. Вызов Invert поменяет места видимые и невидимые объекты. Вы увидите все, что было скрыто. Затем вы сможете выбрать новые объекты и снова вызвать Invert. Теперь в вашем наборе изолированных объектов прибавятся, те что были выбраны до вызова команды Invert.

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

Кроме того команда поможет быстро скрыть все аннотации на листе, чтоб видеть чистые чертежи во вьюпортах. И затем быстро вернуть видимоcть аннотаций кликом по той же кнопке Invert.

О загрузке и установке плагина читайте тут.

Вы можете скачать и использовать программу бесплатно. Если программа вам реально помогает, пожалуйста, пожертвуйте небольшую сумму.

Команда Invert входит в сборники Инструменты A>V>C> и A>V>C> Pro.

P.S. Идея команды Invert не моя. Существуют аналогичные скрипты и плагины. Меня просто попросили добавить эту простую функцию к моим сборникам.

Пример использования в AutoCAD: autode.sk/2Rsu0Wh

Команды

Invert - основная команда плагина. Изоляция выбранных объектов и одновременно переключение видимости у всех остальных объектов.

UnhideInverted - вспомогательная команда, которая выведет из сумрака сделает видимыми все объекты чертежа - и те что были скрыты командой Invert, и то что были изолированы или скрыты обычными командами _IsolateObjects и _HideObjects. Команда нужна только если не срабатывает обычная команда _UnIsolateObjects. Кнопки у команды нет, запускайте из командной строки.

Известные проблемы

К сожалению полноценное взаимодействие плагинов и команд скрытия объектов невозможно из-за отсутствия API. У меня, в моих программах, нет доступа к списку объектов, которые скрыты обычными командами _IsolateObjects и _HideObjects. Приходится идти обходными путями и это приводит к некоторым неожиданностям.

    • Команда Invert может включить видимость у объектов скрытых _HideObjects, только если переключить AutoCAD|BricsCAD в режим хранения видимости объектов в dwg-файле. Поэтому команда Invert первым делом переключает системную переменную ObjectIsolationMode в значение 1 (или 3, если в BricsCAD было 2). После этого вы не увидите скрытых объектов, даже перезагрузив чертеж или программу. Видимость теперь хранится в файле. Инженеры на других компьютерах не увидят скрытые объекты, когда откроют ваш файл. Это может быть большим сюрпризом, если вы не предупредите их об использовании команды Invert.

    • Команда Invert не покажет скрытые объекты, если они были скрыты до первого вызова Invert, когда видимость еще не сохранялась в чертеже (ObjectIsolationMode было 0)

    • Обычная команда Показать Объекты ( _UnIsolateObjects ) не может показать скрытые объекты, если их скрыла команда Invert. Для обхода этой проблемы я перехватываю событие вызова команды _UnIsolateObjects и делаю видимыми все объекты. Однако это не сработает, если плагин не установлен. Получается, что никто и никогда не сможет сделать видимыми объекты, которые вы скрыли командой Invert. Это могут сделать только другие пользователи плагинов A>V>C>

    • Вызванная из пространства бумаги команда Invert скроет все объекты, начерченные "по бумаге", включая вьюпорты. Но! Невидимый вьюпорт продолжит нормально отображать модель. Вы не увидите только его рамки. Так что это в общем-то не проблема.

    • Исходя из описанных проблем я настоятельно рекомендую использовать команду Invert только всем инженерным отделом сразу, подробно инструктируя всех инженеров, о возможном присутствии в файлах скрытых объектов.