Как удалить прокси объекты в автокаде 2021
Перейти к содержимому

Как удалить прокси объекты в автокаде 2021

  • автор:

О пользовательских объектах и прокси-объектах

Использование сторонних объектов открывает дополнительные возможности применения программы и родственных продуктов. Если приложение, в котором был создан сторонний объект, не загружено, то используется прокси-объект.

Сторонний объект – это тип объектов, созданных в приложении ObjectARX ® (AutoCAD Run-Time Extension), обладающий обычно более специализированными функциями по сравнению со стандартными объектами AutoCAD и AutoCAD LT. К сторонним объектам относятся параметрические тела (AutoCAD ® Mechanical), интерактивные (с интеллектуальными функциями) обозначения дверей (AutoCAD ® Architecture), объекты-полигоны (AutoCAD ® Map 3D) и объекты — ассоциативные размеры (AutoCAD и AutoCAD LT).

Кроме Autodesk, существуют производители программного обеспечения, использующие ObjectARX для создания приложений, с помощью которых можно строить графические и неграфические сторонние объекты. Эти объекты можно использовать в приложениях AutoCAD.

Прокси-объекты

Прокси-объекты используются в AutoCAD, AutoCAD LT и других приложениях вместо сторонних объектов, созданных с помощью приложения ObjectARX, если последнее недоступно. В дальнейшем, когда приложение становится доступным, прокси-объект заменяется сторонним объектом.

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

Открывая чертеж, следует обратить внимание на диалоговое окно «Информация о прокси». В этом окне выводится общее количество прокси-объектов (как графических, так и неграфических), имя приложения, необходимого для нормального вывода замещенных объектов, а также дополнительная информация о типе и способе отображения прокси-объектов. С помощью данного диалогового окна можно управлять отображением прокси-объектов на чертеже.

Адаптеры объектов

Адаптер объектов — это средство доступа для специального просмотра и стандартного редактирования сторонних объектов в других приложениях, использующееся, если приложение, в котором был создан сторонний объект, в системе не установлено.

Использование адаптеров объектов обеспечивает большую гибкость работы со сторонними объектами, чем непосредственное использование прокси-объектов. Адаптеры объектов также обеспечивают возможность коллективной работы с другими продуктами Autodesk.

Если приложение ObjectARX не установлено в системе, можно выполнить поиск доступных адаптеров объектов в Интернете. Например, при получении чертежа с объектами, созданными с помощью программы Autodesk Architectural Desktop, которая не установлена в системе, выполняется загрузка адаптера объектов AEC для просмотра чертежа в исходном виде.

Чтобы найти доступные адаптеры объектов, перейдите на страницу https://www.autodesk.com/enablers.

Классификация объектов

Если в приложении (например, AutoCAD ® Map 3D) объекту была присвоена классификация элементов (объектов), ее можно просматривать на палитре свойств в поле записи «Имя класса». Если классификация объекта удалена из XML-файла, или удален сам файл классификаций, в группе имен классов выводится восклицательный знак. Сведения об условиях создания классификаций см. в документации по AutoCAD ® Map 3D.

Можно также использовать функцию «Быстрый выбор» для выбора объектов по именам или свойствам классов.

Понятия, связанные с данным
Ссылки, связанные с данной

ZwProxyToBlock

ZwProxyToBlock

Главная

ZwProxyToBlock -бесплатное приложение, предназначенное для преобразования proxy-объектов в блоки, что позволяет их редактировать или удалить. Приложение запускается командой ZWPROXYTOBLOCK в командной строке.

  • для Win 32bit (0,049 МБ)
  • для Win 64bit (0,059 МБ)
  • Описание программы
  • Системные требования
  • Новости программы
  • Дополнительные ресурсы
  • Тип поставки

Proxy-объекты

Proxy-объекты — это объекты, создаваемые сторонними приложениями, которые не могут быть обработаны в САПР-платформах при отсутствии этих сторонних приложений. В этом случае такие объекты невозможно редактировать, но если эти Proxy-объекты не удалять из чертежа, то в последующем их редактирование можно продолжить при открытии в САПР с установленным на ней соответствующим сторонним приложением. С использованием команды СПИСОК можно узнать в какой дополнительной программе были созданы сторонние объекты, которые открылись как Proxy-объекты в ZWCAD.

Преобразование в блоки

Если нет необходимости сохранять совместимость Proxy-объектов со сторонним приложением, в котором они были созданы, то может возникнуть необходимость их редактирования или удаления. Чтобы это стало доступно в ZWCAD, разработчик (компания ZWSOFT) выпустил утилиту ZwProxyToBlock, которая преобразует Proxy-объекты в блоки. После чего, полученные блоки становится возможно «взорвать» для редактирования или сразу удалить.

Утилита ZwProxyToBlock стандартно загружается в ZWCAD с помощью команды ЗАГПРИЛ и, затем, запускается командой ZWPROXYTOBLOCK. После запуска утилита предлагает выбрать Proxy-объекты по одному, что позволяет выполнять преобразование этих объектов выборочно.

ObjectARX. Расчленение и удаление proxy-объектов (Страница 1 из 10)

Команда EXPLODEALLPROXY:
Расчленяет все proxy-примитивы (которые можно расчленить, т.е. программист при их создании не указал флаг нерасчленяемости), во всем чертеже.
Команда REMOVEALLPROXY:
Удаляет все proxy-объекты и proxy-примитивы (в том числе и те, которые имеют флаг неудаляемости). Ее удобно выполнять после EXPLODEALLPROXY — тогда она удалит все то, что не удалось расчленить.
=====================================================
Для вызова из VisualLisp:
(ExplodeProxyEntity ent)
ent — имя примитива вида . Расчленяет только этот
примитив, даже если он входит в блок.
Например: (explodeproxyentity (car (nentsel)))
(ExplodeAllProxyInBlock «имя блока»)
Этой функции можно передавать не только имя блока, но и имя примитива внутри блока.
Например: (explodeallproxyinblock (car (nentsel)))
расчленит все прокси в блоке, на который указали.
Функции возвращают следующие значения:

0 success - успешное завершение -1 parmerr - ошибка передачи параметра -2 openerr - ошибка открытия proxy-объекта -3 explerr - ошибка разбития proxy -4 appenderr - ошибка добавления "состава" proxy в файл dwg. -5 eraseerr - ошибка удаления исходного объекта.

CADmaster

Журнал Горячая история техподдержки, или Почему AutoCAD удаляет прокси-объекты?

Горячая история техподдержки, или Почему AutoCAD удаляет прокси-объекты?

При работе с пользовательским обращением в службу техподдержки выяснилось неприятное обстоятельство: AutoCAD с установленным приложением SPDS Extension удаляет из *.dwg-файлов все прокси-объекты. Как это происходит, что получается в результате и, главное, как защититься от последствий ошибки в приложении к AutoCAD?

Скачать статью в формате PDF — 2.25 Мбайт

Главная » CADmaster №2(88) 2018 » Платформы САПР Горячая история техподдержки, или Почему AutoCAD удаляет прокси-объекты?

Дисклеймер

Целью этой статьи не является дискредитация программного обеспечения. Статья носит исключительно информационный характер и предназначена для защиты конечного пользователя, который может при определенных обстоятельствах потерять свои данные, работая в AutoCAD.

Предисловие

SPDS Extension или модуль СПДС — дополнение к продуктам семейства AutoCAD, разрабатываемым компанией Autodesk.

СПДС GraphiCS — кроссплатформенное приложение, предназначенное для подготовки проектно-технической документации. Разработчик — компания CSoft Development.

nanoCAD СПДС — тот же самый СПДС GraphiCS, но на платформе nanoCAD Plus от компании «Нанософт».

История

Разгребая утреннюю почту, наткнулся на обращение пользователя в техническую поддержку. Тема письма в принципе объясняла суть проблемы: «Объекты nanoCAD СПДС не отображаются в AutoCAD». К письму, как и полагается, были приложены файлы, скриншоты и подробное описание действий пользователя. Если говорить кратко, то суть обращения сводилась к следующему: пользователь создал проект в nanoCAD СПДС и передал его подрядчикам. Подрядчики, открывая этот файл в AutoCAD, не видят объектов СПДС.

Опытные пользователи сразу скажут, что скорее всего подрядчики просто не включили отображение прокси-объектов, поэтому и не видят данные, которые были созданы в специализированном приложении. Но, как оказалось, всё не так просто…

Исследование проблемы

Первым делом открываем файл в nanoCAD СПДС и проверяем состояние переменных proxyshow и proxygraphics. Всё в порядке, оба значения равны единице и файл отображается корректно.

proxyshow — переменная, которая управляет отображением прокси-объектов в чертеже;

proxygraphics — переменная, которая управляет сохранением прокси-объектов в чертеже.

Затем проверяем этот же файл в AutoCAD. При запуске файла появляется всплывающее сообщение, которое спрашивает, что нужно делать с проксями.

Выбираем опцию Показывать прокси-графику и нажимаем ОК. Всё в порядке, на моей машине AutoCAD корректно отображает все объекты nanoCAD СПДС.

С полной уверенностью, что я знаю причину проблемы, закрываю файл и пишу пользователю, что у подрядчиков скорее всего скрыты прокси-объекты в AutoCAD. Даю рекомендацию проверить значение переменной proxyshow (оно должно быть равным единице) прямо из командной строки AutoCAD.

Неожиданные открытия

Утром следующего дня получаю от пользователя ответ: значение переменной равно единице, но объекты по-прежнему не отображаются. К слову, чертеж у подрядчика выглядел вот так (вместо плана отображались лишь размеры и несколько отрезков):

Начинаю разбираться, почему один и тот же файл с одинаковыми значениями переменных может по-разному отображаться в AutoCAD. Дело в операционной системе? В версии AutoCAD? Может, у пользователя стоят какие-то дополнительные приложения? В общем, чтобы понять разницу в конфигурациях, запросил у пользователя больше данных.

Еще раз внимательно просмотрев материалы пользователя, замечаю на одном из скриншотов одну маленькую, но важную деталь. На скриншоте подрядчика в AutoCAD был установлен модуль СПДС или, как его еще называют, SPDS Extension.

В моей конфигурации был чистый AutoCAD без всяких надстроек — и, по сути, это оказалось единственной зацепкой. Не дождавшись от пользователя дополнительных данных, начинаю копать дальше.

Загрузив с официального сайта Autodesk модуль СПДС, устанавливаю его на свою версию AutoCAD 2018. Далее запускаю файл пользователя и вижу привычное сообщение. При этом объекты nanoCAD СПДС отображаются в AutoCAD еще до закрытия окна информации о прокси-объектах.

С мыслью «Мое расследование заходит в тупик» нажимаю кнопку ОК и готовлюсь к дальнейшим действиям. Через мгновение все прокси-объекты исчезают и я получаю тот же результат, что и подрядчики из обращения пользователя.

Перезагружаю AutoCAD и снова открываю этот файл — картина повторяется. Прокси-объекты исчезают из файла, хотя значение переменной proxyshow равно единице. И это очень странно.

Сохранив открытый в AutoCAD файл рядом с файлом, полученным от пользователя, и дописав в название файла _proxy, сравниваю их размеры.

Размер файла, сохраненного в AutoCAD, уменьшился в 10 раз, но я решаю открыть его в исходном приложении — nanoCAD СПДС.

Теперь и в nanoCAD СПДС наблюдаю ту же картинку, что при открытии файла в AutoCAD с модулем СПДС. Выходит, что после сохранения в AutoCAD файл пользователя потерял все прокси-объекты.

Удалять чужие прокси очень некрасиво. Решаю проверить данный баг, используя прокси от собственных приложений Autodesk. Нахожу в сети несколько файлов, созданных в приложениях Civil 3D и Advance Steel, и повторяю вышеупомянутый эксперимент, открывая чертежи с прокси-объектами. Во всех случаях после запуска этих файлов прокси-графика удалялась. Получается, что с модулем SPDS Extension многоуважаемый AutoCAD удаляет любые прокси.

Решаю откатиться к своей старой конфигурации AutoCAD и удаляю модуль СПДС от Autodesk, чтобы снова проверить работу файлов с прокси-объектами. Как ни странно, они снова стали нормально сохраняться. Из всего увиденного делаю окончательный вывод:

AutoCAD с установленным модулем СПДС удаляет все прокси-объекты из *.dwg-файлов.

Решение

Можно только предполагать, сколько пользователей потеряли свои данные из-за ошибки приложения SPDS Extension, но всё же цель этой статьи не только предупредить пользователей. Главное — спасти их проекты. Поэтому хочу поделиться решениями этой проблемы.

    Полное удаление приложения SDPS Extension через панель управления.

Советы

Я призываю пользователей быть острожными и всегда хранить несколько копий своих проектов. nanoCAD, например, при открытии *.dwg-файла сразу делает средствами операционной системы его копию с расширением dwg. original; поэтому у вас всегда будет резервная копия исходного файла.

Если же вы пользуетесь другими САПР, то просто не поленитесь и вручную сделайте несколько копий своих проектов — на всякий случай.

Берегите свои *.dwg-файлы и удачного проектирования!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *