| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > ObjectARX. Расчленение и удаление proxy-объектов

ObjectARX. Расчленение и удаление proxy-объектов

Ответ
Поиск в этой теме
Непрочитано 25.10.2007, 12:08 5 |
ObjectARX. Расчленение и удаление proxy-объектов
Profan
 
Москва
Регистрация: 25.12.2005
Сообщений: 13,627

Оригинал темы находится на форуме caduser.ru.

Автор программы Александр Ривилис.

Команда EXPLODEALLPROXY:
Разбивает вообще все proxy-объекты, неважно, где они лежат.
Команда REMOVEALLPROXY:
Удаляет все proxy-объекты и proxy-примитивы. Ее удобно выполнять
после EXPLODEALLPROXY — тогда она удалит все то, что не удалось расчленить.
================================================================================
Для вызова из VisualLisp:
(ExplodeProxyEntity ent)
ent — имя примитива вида <entity name: 321456465465465>. Расчленяет только этот
примитив, даже если он входит в блок.
Например: (explodeproxyentity (car (nentsel)))
(ExplodeAllProxyInBlock "имя блока")
Этой функции можно передавать не только имя блока, но и имя примитива внутри блока.
Например: (explodeallproxyinblock (car (nentsel)))
расчленит все прокси в блоке, на который указали.
Функции возвращают следующие значения:
0 success — успешное завершение
-1 parmerr — ошибка передачи параметра
-2 openerr — ошибка открытия proxy-объекта
-3 explerr — ошибка разбития proxy
-4 appenderr — ошибка добавления "состава" proxy в файл dwg.
-5 eraseerr — ошибка удаления исходного объекта.
Во всех случаях, кроме success и appenderr, требуется провести _AUDIT для файла.
arx-файлы для AutoCAD 2004...2021 находятся здесь: https://adn-cis.org/assets/files
Важно! Перед применением обязательно читайте README.TXT - он существует не просто так и несет в себе необходимую информацию!

Последний раз редактировалось Кулик Алексей aka kpblc, 20.11.2020 в 19:42.
Просмотров: 558415
 
Непрочитано 29.05.2014, 15:02
#101
andrewsta12


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


Все выделенные прокси не отображаются на чертеже

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
66 зарегистрированных приложений...
что имеется ввиду?
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок.PNG
Просмотров: 1132
Размер:	41.0 Кб
ID:	129395  

Последний раз редактировалось andrewsta12, 29.05.2014 в 15:12.
andrewsta12 вне форума  
 
Непрочитано 29.05.2014, 15:31
#102
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от andrewsta12 Посмотреть сообщение
2. Explodeallproxy не находит ни одного proxy
Не понял.
Цитата:
Command: explodeallproxy

Удалено Proxy: 3842 Новых объектов: 0
Command: RemoveAllProxy

Первая метка объекта: <1>, последняя метка объекта: <F5E05>
Всего найдено proxy-объектов: 9. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>:

Всего удалено proxy-объектов: 9. Из них proxy-примитивов: 0.
Для проверки ошибок выполните команду _AUDIT
Что не так?
Александр Ривилис вне форума  
 
Непрочитано 29.05.2014, 15:47
#103
andrewsta12


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


хм, у меня

Команда: explodeallproxy
Удалено Proxy: 0 Новых объектов: 0

Команда: RemoveAllProxy
Первая метка объекта: <1>, последняя метка объекта: <F63EC>
Всего найдено proxy-объектов: 3851. Из них proxy-примитивов: 3842.
Всего удалено proxy-объектов: 3851. Из них proxy-примитивов: 3842.
Для проверки ошибок выполните команду _AUDIT
andrewsta12 вне форума  
 
Непрочитано 29.05.2014, 15:56
#104
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


Какая версия AutoCAD и какой ExplodeProxyXXX.arx загружен?
Александр Ривилис вне форума  
 
Непрочитано 29.05.2014, 15:57
#105
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772


У меня при открытии AutoCAD 2014 сказал только о ISM и Wipeout.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.05.2014, 16:01
#106
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


Александр Ривилис вне форума  
 
Непрочитано 29.05.2014, 22:11
#107
andrewsta12


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


Цитата:
Сообщение от Александр Ривилис Посмотреть сообщение
Какая версия AutoCAD и какой ExplodeProxyXXX.arx загружен?
Autocad 2011, а *.arx подгружал по очереди все
Качаю magicad, надеюсь он подхватит все свои объекты. Спасибо !

upd
в Magicad все открылось, еще раз спасибо! не знал про существование этой надстройки

Последний раз редактировалось andrewsta12, 29.05.2014 в 23:19.
andrewsta12 вне форума  
 
Непрочитано 16.06.2014, 10:44
1 | #108
Denis Ch

Сопровождение проектов, внутренний технадзор
 
Регистрация: 05.06.2012
Санкт-Петербург
Сообщений: 46


Здравствуйте уважаемые форумчане.
Хочу расчленить конкретный прокси объект. Для этого произвожу следующие действия:
1)Ввожу команду (car (nentsel)) - для определения имени примитива.
Указываю примитив и получаю ответ : Выберите объект: <Имя объекта: 7ffff134cc0>
2)Далее ввожу команду (ExplodeProxyEntity <entity name: 7ffff134cc0>) для расчленения нужного мне примитива;
На что в ответ получаю следующее ; ошибка: no function definition: EXPLODEPROXYENTITY
Я так понимаю автокад не понимает эту команду.
У меня AutocAD Architecture 2014 x64.
Загружал файл : ExplodeProxy2013x64.arx
Операционная система WIndows 7 x64.
Команду EXPLODEALLPROXY использовать для меня не вариант, так как она взрывает все прокси в том числе и нужные мне объекты MagiCad.
Подскажите как быть, нужно взорвать только нужные мне примитивы не трогая остальное?
Denis Ch вне форума  
 
Непрочитано 16.06.2014, 11:45
1 | #109
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772


(ExplodeProxyEntity (car (nentsel)))
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2014, 16:43
#110
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


возникла проблема с очисткой прокси объектов на нескольких файлах (demanload=2, proxyshow=1, proxynotice=1 установлены)
акад 11
обычно в подобной ситуации очищало, а этот упрямый не чистится (очень много типов линий)
Вложения
Тип файла: dwg
DWG 2007
Общий вид.dwg (2.71 Мб, 4133 просмотров)
_MUAY_THAI_ вне форума  
 
Непрочитано 02.07.2014, 20:11
#111
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


1. Запускаем AutoCAD
2. Устанавливаем DEMANDLOAD в 2 (лучше в 0)
3. Загружаем чертеж
4. Запускаем REMOVEALLPROXY:
Код:
[Выделить все]
Command: REMOVEALLPROXY

Первая метка объекта: <1>, последняя метка объекта: <EC27A>
Всего найдено proxy-объектов: 14645. Из них proxy-примитивов: 0.
Всего удалено proxy-объектов: 14645. Из них proxy-примитивов: 0.
Для проверки ошибок выполните команду _AUDIT
5. Запускаем _PURGE и чистим всё что можно - улетят и блоки и типы линий.
Получаем результат (в аттаче).
6. Не забываем вернуть DEMANDLOAD в 3
Вложения
Тип файла: dwg
DWG 2010
Общий вид.dwg (104.1 Кб, 4134 просмотров)
Александр Ривилис вне форума  
 
Непрочитано 03.07.2014, 08:00
#112
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


Александр Ривилис, спс вчера делал тоже самое. Сегодня автозапуск сам все почистил.
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 08:45
#113
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


---
Все почистились кроме одного. если его дробить и частями чистить то чистится, но если будет много чертежей, то не надробишься
При чистке выдает при аудите ошибки, и в файле снова много линий. Все инструкции не помогают. Просто не находит прокси объекты
Вложения
Тип файла: dwg
DWG 2007
_О_вид.dwg (5.44 Мб, 4058 просмотров)
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 09:41
#114
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772


AutoCAD Architecture 2009 Eng x64 as AutoCAD SP3, AutoCAD 2014 Eng x64 SP1, AutoCAD 2015 x64 Eng SP1: все вполне корректно очищается.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.07.2014, 09:51
#115
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


AutoCAD Civil 3D 2011 r.v.2 все файлы чистит а на этом спотыкается. Идеи будут почему так мб? или искать другую версию када?

----- добавлено через ~3 ч. -----
---
попробовал на 13, аналогично не работает. Вот загвоздка
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 12:58
#116
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от _MUAY_THAI_ Посмотреть сообщение
AutoCAD Civil 3D 2011 r.v.2 все файлы чистит а на этом спотыкается. Идеи будут почему так мб? или искать другую версию када?
Спотыкается - это как? Где протокол RemoveAllProxy при DEMANDLOAD равном 0 и (!!!) перезапущенном AutoCAD? Очевидно, что при запуске AutoCAD Civil 3D загружаются (кроме основных из AutoCAD) еще и дополнительные модули, которые могут делать из прокси-объектов не прокси-объекты.
Александр Ривилис вне форума  
 
Непрочитано 03.07.2014, 13:11
#117
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


В автозагрузке висит очищение от прокси объектов, при открытии чертежа всегда чистилось (если нет то смотрим параметр DEMANDLOAD) и повторяем итерации
А этот чертеж не поддается вот лог что происходит

Открываем чертеж
Открывается файл формата AutoCAD 2007/LT 2007.
Выполняется регенерация модели.

//тут принудительные параметры для всех, чтобы слабые машины хорошо жили
Утилиты меню AutoCAD загружены._hpquickpreview
Новое значение HPQUICKPREVIEW <Откл>: откл _selectionpreview
Новое значение SELECTIONPREVIEW <1>: 1 _hpmaxlines
Новое значение HPMAXLINES <200000>: 200000 _viewres
Нужно быстрое зумирование? [Да/Нет] <Д>: нет
Точность аппроксимации (1-20000) <500>: 500 _previeweffect
Новое значение PREVIEWEFFECT <0>: 0 _isavepercent
Новое значение ISAVEPERCENT <0>: 0 _rollovertips
Новое значение ROLLOVERTIPS <0>: 0 _vtenable
Новое значение VTENABLE <0>: 0 _annoautoscale
Новое значение ANNOAUTOSCALE <-4>: -4 _dynmode
Новое значение DYNMODE <-3>: -3 _filedia
Новое значение FILEDIA <1>: 1 _cmddia
Новое значение CMDDIA <1>: 1
Утилиты G-TOOLS загружены.

//тут чистка прокси автозагрузки
_explodeallproxy
Удалено Proxy: 0 Новых объектов: 0_removeallproxy
Первая метка объекта: <1>, последняя метка объекта: <1D4D0F>
Всего найдено proxy-объектов: 0. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: да
Всего удалено proxy-объектов: 0. Из них proxy-примитивов: 0.
Для проверки ошибок выполните команду _AUDIT_audit
Исправить все обнаруженные ошибки? [Да/Нет] <Н>: да
Проверка заголовка
Проверка таблиц
Проверка объектов, проход 1
Проход 1: проверено объектов: 211900
Проверка объектов, проход 2
Проход 2: проверено объектов: 211900
Проверка блоков
Проверено блоков: 105
Всего найдено ошибок: 0, исправлено: 0
Стерто 0 объектов

//как видно прокси не найдены

чертеж загрузился

//проверяем демандлоад
Команда: demandload
Новое значение DEMANDLOAD <2>: 0

//повторяем прокси чистку
Команда: (load "clearproxy") _explodeallproxy
Удалено Proxy: 0 Новых объектов: 0
Команда: _removeallproxy
Первая метка объекта: <1>, последняя метка объекта: <1D4EFF>
Всего найдено proxy-объектов: 0. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: да
Всего удалено proxy-объектов: 0. Из них proxy-примитивов: 0.

----- добавлено через ~1 мин. -----
---
теперь demandload=0 сохраняемся перезагружаемся. Пробуем почиститься, не выходит
---

Как-то так, где могу ошибаться? что не так делаю?

----- добавлено через ~3 мин. -----
---
стоит стоковый цивил, только г-тулз и экспресс доустановленны
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 13:16
#118
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от _MUAY_THAI_ Посмотреть сообщение
теперь demandload=0 сохраняемся перезагружаемся. Пробуем почиститься, не выходит
Если DEMANDLOAD равно 0, то нужно вручную загрузить ExplodeProxyXXXX.arx
В этом чертеже моя программа в AutoCAD 2011 (не Civil 3D) нашла 9 прокси-объектов. Объем после удаления практически не изменился.

Последний раз редактировалось Александр Ривилис, 03.07.2014 в 13:26.
Александр Ривилис вне форума  
 
Непрочитано 03.07.2014, 13:19
#119
_MUAY_THAI_

Проектировщик/Расчетчик
 
Регистрация: 07.05.2014
Ростов-на -Дону
Сообщений: 262


У меня при DEMANDLOAD <0> говорит что _appload ExplodeProxy2010x32.arx уже загружено.

Команда: (load "clearproxy") _explodeallproxy
Удалено Proxy: 0 Новых объектов: 0
Команда: _removeallproxy
Первая метка объекта: <1>, последняя метка объекта: <1D54C4>
Всего найдено proxy-объектов: 0. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: да
Всего удалено proxy-объектов: 0. Из них proxy-примитивов: 0.

---
результат все тот же


----- добавлено через ~3 мин. -----
поправил, у меня ExplodeProxyXXXX.arx дважды висело в автозагрузке поэтому при DEMANDLOAD <0> говорило что уже загружено. Сейчас вот так

Команда: _appload ExplodeProxy2010x32.arx успешно загружено.
Команда: (load "clearproxy") _explodeallproxy
Удалено Proxy: 0 Новых объектов: 0
Команда: _removeallproxy
Первая метка объекта: <1>, последняя метка объекта: <1D54B4>
Всего найдено proxy-объектов: 0. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: да
Всего удалено proxy-объектов: 0. Из них proxy-примитивов: 0.
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 13:31
#120
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,405
Отправить сообщение для Александр Ривилис с помощью Skype™


Значит в Civil 3D эти 9 объектов становятся не прокси.
Александр Ривилис вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > ObjectARX. Расчленение и удаление proxy-объектов

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление объектов из пространства листа paradoxvaha Программирование 9 24.08.2007 14:25
Удаление объектов, сделанных недоступным ObjectARX-прил. жертва нашизма AutoCAD 11 25.07.2006 09:37
Удаление дублируюшихся объектов Арлинг AutoCAD 2 25.04.2004 13:56