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

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

  • автор:

Расчленение и\или удаление прокси-объектов

Для AutoCAD существует ARX расширение, написанное Александром Наумовичем Ривилисом, которое позволяет расчленять все ProxyEntity, а так же удалять все ProxyEntity и ProxyObjects из текущей базы данных чертежа. Опубликовываю свою версию .NET реализации данных операций, которая может быть успешно скомпилирована для AutoCAD, nanoCAD, BricsCAD, а так же для автономных приложений, использующих в своей работе платформу Teigha.

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

Конструктивные замечания по исходному коду приветствуются.

Comments

Приветствую

Интересный образец и хорошая тенденция

Попробую проверить
This discussion has been closed.

Howdy, Stranger!

It looks like you’re new here. Click one of the buttons on the top bar to get involved!

Удаление прокси из файла CAD

Вопрос: Как очистить файл от этой гадости?
Через пурген не чистится.

Просмотров: 49858
Регистрация: 27.08.2003
Seattle/USA
Сообщений: 1,133

Обьекты прокси — результат работы НЕАВТОКАДА, т. е. они созданы программой,чаще всего геодезистами (SURVEJORS») AutoCAD эти объекты распознает и показывает в чертеже. С этими объектами очень нелегко работать, обычно они часть плана-карты итд и их лучше не трогать 🙂

Регистрация: 17.11.2004
Сообщений: 328

Я знаю что не АКАДовские это объекты (HYPER STEEL). но найти их не могу.

Их бы найти и удалить, но как не знаю.

Регистрация: 21.08.2003
Сообщений: 943
А что говорит QSELECT ?
Регистрация: 26.08.2003
Сообщений: 1,022
Сообщение от tokhot

Я знаю что не АКАДовские это объекты (HYPER STEEL). но найти их не могу.

Их бы найти и удалить, но как не знаю.

Скорей всего потребуется прога, которая их туда понапихала. Можно и ручками непосредственно в тексте DXF — ну это для любителей мозахизма 🙄

Регистрация: 11.10.2004
Сообщений: 755
Сообщение от vk

Скорей всего потребуется прога, которая их туда понапихала. Можно и ручками непосредственно в тексте DXF — ну это для любителей мозахизма 🙄

Может пройти такой способ (написано для другой проги):

(defun proxy-explod (doc / zombie sel actl) (vla-clear (setq sel (vla-get-activeselectionset doc))) (ent-obj-select sel "ACAD_PROXY_ENTITY") (vlax-for j sel (setq zombie (cons j zombie)) ) ;_ end of foreach (setq zombie (sublist-by-prop zombie "OwnerID") actl (vla-get-activelayout doc) ) ;_ end of setq (foreach l zombie (vla-put-activelayout doc (vla-get-layout (vla-objectidtoobject doc (vla-get-ownerid (car l))))) (foreach i l (vl-cmdf "_.explode" (vlax-vla-object->ename i)) ) ;_ end of foreach ) ;_ end of foreach (if (/= (vla-get-activelayout doc) actl) (vla-put-activelayout doc actl) ) ;_ end of if (vla-clear sel) ) ;_ end of defun

В качестве аргумента хочет документ, в котором работать. Весь комплект функций, которые нужны для работы, можно найти в ESConvert (которая — Программа предназначена для защиты .dwg файла от редактирования, версия: 0.8.1 (бета)), на странице:
http://www.uniip.ru/#content=http://. /download.html

Пожарная Безопасность, ГИП

Регистрация: 07.04.2007
Сообщений: 186

ситуация такая, сегодня открываю файлы с которыми работал последние недели три, и не вижу не номеров помещений, ни текста экспликации. Причем эти слои никуда не делись и включены. НО при открытии файла в командной строке идет запись: «неописанная форма 56» число указал как пример, там этих чисел и строчек не одна сотня. Что случилось с кадом или чертежом, вчера вечером все сохранил как обычно? Акад Меп 2011 рус.

программист, рыцарь ObjectARX

Регистрация: 09.05.2005
Сообщений: 2,406

Вообще-то сообщения типа «неописанная форма XX» абсолютно(. ) никакого отношения к прокси не имеет. Это сообщение относится к shx-файлам (это или файл шрифта, или файл формы — возможно связано с типом линии). В данном случае я вижу пару причин, которые могли привести к такому сообщению.
1) Используется не тот shx-файл (возможно по путям доступа находится одноименный, но другой файл)
2) Возможно изменились региональные установки.

Александр Ривилис
Посмотреть профиль
Посетить домашнюю страницу Александр Ривилис
Найти ещё сообщения от Александр Ривилис

Пожарная Безопасность, ГИП

Регистрация: 07.04.2007
Сообщений: 186

Александр Ривилис спасибо за ответ. Да действительно это все были шрифты, но ничего не менялось, вчера вечером выключил комп, сегодня утром включил и начал работу с тем же файлом (правда включил комп только после обеда, а до этого к нему вообще не подходил). вылечилось просто, перезагрузил сам автокад, думаю при первом запуске он не подцепил файл формы.

Регистрация: 24.06.2010
Сообщений: 33
Прокси-объекты удалить просто.
http://www.caduser.ru/forum/index.ph. D=44&TID=31852
Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121

Проставлял номера пикетов при помощи мультивыносок. На одном из слоёв при попытке отредактировать, содержимое мультивыноски пропадало, а в командной строке появлялось:

Команда: ** Неописанная форма 1055 ** Неописанная форма 1050 ** Неописанная форма 32 ** Неописанная форма 50 ** Неописанная форма 50 ** Неописанная форма 50 ** Неописанная форма 43 ** Неописанная форма 48 ** Неописанная форма 48

Удаление прокси объектов ни к чему не привело. Лечением оказалась смена типа линии мультивыноски с «по слою» на «Continuous» (тип линии «по слою» стоял «ограждение» —о—-о—-).

Последний раз редактировалось Агент СмиТ, 22.09.2011 в 17:34 .

Агент СмиТ
Посмотреть профиль
Найти ещё сообщения от Агент СмиТ

программист, рыцарь ObjectARX

Регистрация: 09.05.2005
Сообщений: 2,406
Сообщение от Агент СмиТ
Удаление прокси объектов ни к чему не привело.
Читаем внимательно #8

Александр Ривилис
Посмотреть профиль
Посетить домашнюю страницу Александр Ривилис
Найти ещё сообщения от Александр Ривилис

Проектирование, конструирование, расчёты в строительстве

Регистрация: 05.03.2012
Великий Новгород
Сообщений: 2

Все шрифты и размеры пропали, переустановка автокада не помогла что делать? Что скачать и куда вставить? или что удалить? Изображение не могу скинуть, опишу так: откр автокад внизу в полосе прокручивается список «** Неописанная форма» много много и текста и размеров всех чисел нету

Регистрация: 18.02.2013
Сообщений: 7
Сообщение от Александр Ривилис

Вообще-то сообщения типа «неописанная форма XX» абсолютно(. ) никакого отношения к прокси не имеет. Это сообщение относится к shx-файлам (это или файл шрифта, или файл формы — возможно связано с типом линии). В данном случае я вижу пару причин, которые могли привести к такому сообщению.
1) Используется не тот shx-файл (возможно по путям доступа находится одноименный, но другой файл)
2) Возможно изменились региональные установки.

Полностью согласен с Александром: сообщение «неописанная форма ХХ» относится к shx-файлам.
Но. Если прокси включает в себя форму ХХ, которую автокад не может найти, то и возникает такое сообщение.
У меня попался такой «чужой» файл. Я в нем удалил всё, почистил пургеном. В итоге осталось несколько объектов ACAD_PROXY_ENTITY. При загрузке такой пустой файл грузился минуту, и выпадало такое сообщение.
Самый простой способ как с этим бороться:
Выделить всё (Ctrl «A») и скопировать всё в буфер (Ctrl «C»), при этом прокси объекты не выделяются и не копируются. Затем создать пустой файл и всё туда вставить.

Кустомальный CАПР

Сборка личных настроек, инструментов, заметок по автоматизации проектной работы

Удаление прокси объектов из файла

Posted on 2017/12/19 by Ilya Mikhajlov

Если в файле присутствуют прокси объекты — помогут команды:

EXPLODEALLPROXY — разбивает все proxy-примитивы, если это возможно — во всем чертеже.
REMOVEALLPROXY — удаляет все proxy-объекты и proxy-примитивы.

Удаление прокси-объекта в Автокаде

Прокси-объекты — это элементы, которые созданы в сторонних приложениях и импортированы в Autocad, при этом создавшее их приложение недоступно. Они обычно ограничены в возможностях по сравнению с обычными сторонними объектами, с ними не всегда корректно производятся некоторые действия, а часто они и совсем недоступны. Например, не редактируются или занимают много памяти, обладают неправильной структурой, выдают ошибку о невозможности поместить в буфер обмена. Чтобы решить эту проблему, можно либо установить приложение, в котором создавался элемент, либо удалить прокси-объект в Автокаде.

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

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

Использование ExplodeAllProxy

Чтобы легко произвести удаление proxy, скачайте инструмент ExplodeProxy http://www.maestrogroup.com.ua/support/ExplodeProxy.zip. Разархивируйте его в любую папку на компьютере. Далее в Автокаде выполните следующие действия:

Загрузить приложение в Автокаде

  1. Зайдите в «Управление».
  2. Нажмите кнопку «Приложения».
  3. Выберите из скаченной папки файл с названием, соответствующим вашей версии AutoCad и разрядности операционной системы.
  4. Нажмите «Загрузить».
  5. Также вы можете добавить этот инструмента в автозагрузки, нажав соответствующую кнопку в окне. В результате, он будет автоматически запускаться при старте программы.

ВАЖНО. При перемещении папки с ExplodeProxy в другое расположение, он не будет подгружаться в Автокад. Не перемещайте его или придётся заново добавлять в программу.

Далее нужно выполнить следующие действия:

    После успешной загрузки программы нужно выполнить расчленение proxy-объектов. Для этого в командной строке Автокад наберите EXPLODEALLPROXY. Расчленить, или, как ещё по-другому можно сказать, «взорвать» блок, означает, что он будет разгруппирован до первоначальных элементов. Таким образом, вы сможете внести нужные изменения и снова собрать группу. В случае с proxy действие позволит избавиться от нередактируемых и некопируемых элементов.

Команда explodeallproxy в Автокаде

Команда explodeallproxy в Автокаде

Команда removeallproxy в Автокаде

Команда removeallproxy в Автокаде

Рассмотрим, как узнать, из какого именно приложения попали в документ эти proxy:

  1. Правым щелчком мыши в окне документа выберите в меню «Параметры».
  2. Перейдите на вкладку «Открытие сохранения».
  3. Поставьте галочку в пункте «Выводить окно сведений о прокси объектах».
  4. Теперь закройте и заново откройте чертёж.
  5. При открытии документа появится окно «Информация о proxy-объектах».

Информация о proxy-объектах в Автокаде

Информация о proxy-объектах в Автокаде

После выполнения действий по расчленению и удалению неразделённых прокси рекомендуется выполнить команду Purge. Она позволяет очистить документ от ненужной информации, например, неиспользуемых блоков, слоёв, текстовых стилей, типов линий и элементов. Если вы просто удалите элементы, то информация о них в программе останется. Например, в списке слоёв они будут отображаться как не содержащие объектов. Чтобы полностью удалить ненужные элементы чертежа выполните следующее:

  1. Наберите команду PURGE.
  2. Появится окно со списком найденных объектов, нажмите Purge.
  3. Чтобы удалить всё в следующем диалоге нажмите «Purge all items».
  4. Повторите действия последовательно для всех групп блоков до тех пор, пока будет активна кнопка «Purge».

Таким образом, можно удалить ненужные прокси объекты и их остатки в Автокаде. Обычно просто встроенной команде «Разделить» они не поддаются и приходится применять специальную утилиту ExplodeProxy, после чего проводить проверку и чистку документа. В итоге можно будет свободно с ним работать, кроме того, благодаря этим действиям он существенно уменьшится в размере.

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

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