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

Вернуться   Форум 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.
Просмотров: 558417
 
Непрочитано 03.07.2014, 13:51
#121
_MUAY_THAI_

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


Александр Ривилис, ок спс, поищу голый автокад
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 14:22
#122
Александр Ривилис

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


А чего ты добиваешься? Уменьшить объем чертежа? У меня получилось уменьшить его на пару десятков килобайт. Овчинка выделки не стоит.
Александр Ривилис вне форума  
 
Непрочитано 03.07.2014, 14:48
#123
_MUAY_THAI_

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


Хочу избавиться от мусора который приходит от смежников (смотри типы линий)
А других чертежах от них чистя от прокси объектов уходят и эти линии, они же и показатель мусора
На других чертежах уменьшение в 10 раз размера
_MUAY_THAI_ вне форума  
 
Непрочитано 03.07.2014, 14:50
#124
Александр Ривилис

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


С этим чертежом можно не мучаться - уменьшения размера практически не будет.
Александр Ривилис вне форума  
 
Непрочитано 03.07.2014, 15:44
#125
Кулик Алексей aka kpblc
Moderator

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


_MUAY_THAI_, свойства ярлыка для вызова AutoCAD, в котором чистишь - это раз. После открытия не стоит вызывать менеджер слоев, свойства объекта и т.п. панели - в некоторых случаях они могут инициировать загрузку дополнительных arx / dbx / dll
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.07.2014, 14:44
#126
_MUAY_THAI_

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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
свойства ярлыка для вызова AutoCAD, в котором чистишь - это раз
"...\AutoCAD Civil 3D 2011\acad.exe" /P AutoCAD..."
такие свойства ярлыка
_MUAY_THAI_ вне форума  
 
Непрочитано 08.07.2014, 13:52
#127
_MUAY_THAI_

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


В итоге:
проверка значений proxyshow=1 и proxynotice=1
плюс у Алексея нашел хорошую команду _aectoacad, для моего случая с Civil'ом самое то. В нескольких случаях помогло

но есть файл который когда есть содержимое не чистится (вижу линии лишние и много) а когда удаляю содержимое тогда аудитом удаляем оч много Неверный слой eWasErased $AUDIT-BAD-LAYER
---
лишние линии оказались не при чем, в чертеже правда они все использовались
---
Цитата:
Сообщение от Александр Ривилис Посмотреть сообщение
С этим чертежом можно не мучаться - уменьшения размера практически не будет.
Александр Ривилис, как оказалось все проблемы размеры файла в одной линии с 180к вершинами, прокси не при чем.
Алексей и Александр спасибо за помощь

Последний раз редактировалось _MUAY_THAI_, 08.07.2014 в 15:58.
_MUAY_THAI_ вне форума  
 
Непрочитано 23.09.2014, 15:52
#128
Denis Ch

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


Здравствуйте уважаемые форумчане.
Вчера получил от архитекторов измененные планировки. Начал готовить подоснову для наложения инженерных сетей и обнаружил следующуую проблему - при переключении чертежа в изометрический вид пропадают всё что в нем начерчено, т.е. на виде сверху все видно, а при переключении в изометрию всё пропадает. Инженерка начерчена в MagiCad, архитектуру подключаю внешней ссылкой, но при переключении в 3D вид так же пропадают и все сети начерченные в MagiCad. Помогите решить проблему. Использовал команды EXPLODEALLPROXY и REMOVEALLPROXY, но ничего не помогло. Первый раз с таким сталкиваюсь.
Denis Ch вне форума  
 
Непрочитано 23.09.2014, 15:58
1 | #129
Кулик Алексей aka kpblc
Moderator

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


А файл из разряда "совсем секретно"?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 23.09.2014, 19:10
#130
Denis Ch

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


Да,объект в принципе секретный. В общий доступ не хочу выкладывать ссылку на проект. Я напишу вам в лс сообщение со ссылкой. Попрошу вас помочь решить проблему с файлом.
Благодарю.
Denis Ch вне форума  
 
Непрочитано 25.09.2014, 08:16
1 | #131
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Denis Ch, Не обязательно выкладывать весь файл. Выложи фрагмент, где проявляется данный баг.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 17.10.2014, 12:35
#132
Denis Ch

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


Здравствуйте уважаемые форумчане.Хочу ещё раз поблагодарить всех откликнувшихся на мою просьбу.
Хочу ещё раз обратиться за помощью. Периодически сталкиваюсь с проблемой, что файл не сохраняется и выдаёт следующую ошибку.
Причина как я понял в одном из динамических блоков, так как расчленив его чертёж спокойно сохраняется. А искать этот блок приходится в ручную поочерёдно перебирая все. И это занимает очень много времени.
Блоки которые не сохраняются крайне желательно сохранить динамическими. Пробовал сохранять в другие форматы, сохраняет только в 2004 и ниже, но тогда все блоки расчленяются.Пробовал команду _AUDIT не помогает.
Работаю а в AutoCad Architekture 2014. Операционная система WIndows 7 x64.
Вопрос в следующем, можно ли программно определить какие объекты не дают сохранить файл и выделить их? Есть ли способы решения этой проблемы без расчленения всех динамических блоков?
Чертёж прикрепляю.
Вложения
Тип файла: dwg
DWG 2004
ИД_ПДЗ_Ахо на отм. 0.000_.dwg (2.73 Мб, 3433 просмотров)
Denis Ch вне форума  
 
Непрочитано 17.10.2014, 13:37
#133
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Denis Ch, В Acad2009 и Acad2015 проблем не возникло. Было предупреждение на прокси объекты от MagiCAD. Почистил здешними утилитами. Думаю проблема была в этом.
У себя попробуй выполнить как минимум п.5 Если не получится с Demandload=2, попробуй с Demandload=0
Вложения
Тип файла: dwg
DWG 2007
problem din block VVA.dwg (1.07 Мб, 3410 просмотров)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 17.10.2014, 15:59
#134
Denis Ch

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


Цитата:
Сообщение от VVA Посмотреть сообщение
Denis Ch, В Acad2009 и Acad2015 проблем не возникло. Было предупреждение на прокси объекты от MagiCAD. Почистил здешними утилитами. Думаю проблема была в этом.
У себя попробуй выполнить как минимум п.5 Если не получится с Demandload=2, попробуй с Demandload=0
Сперва попробовал с Demandload=2, ничего не вышло, файл не сохранился, затем переключил в Demandload=0 нашлось под 2000 разных прокси. После этого всё сохранилось. А можно в кратце объяснить разницу между Demandload=0 и Demandload=2, если не затруднит? Плюс после переключения в режим DEMANLOAD=0 перестала работать команда _APPLOAD, пишет что неизвестная команда. В чем может быть причина?
А как быть с планами, на которых есть объекты MAgiCad, которые нельзя взрывать командой REMOVEALLPROXY?

Последний раз редактировалось Denis Ch, 17.10.2014 в 16:07. Причина: добавил вопрос
Denis Ch вне форума  
 
Непрочитано 17.10.2014, 16:41
#135
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Цитата:
Сообщение от Denis Ch Посмотреть сообщение
А можно в кратце объяснить разницу между Demandload=0 и Demandload=2, если не затруднит?
Я в #133 давал ссылку на описание Demandload

Цитата:
Сообщение от Denis Ch Посмотреть сообщение
в режим DEMANLOAD=0 перестала работать команда _APPLOAD, пишет что неизвестная команда.
Опять же, читай описание
Цитата:
Допустимые значения:
0 : автоматическая загрузка отключена.
Цитата:
Сообщение от Denis Ch Посмотреть сообщение
А как быть с планами, на которых есть объекты MAgiCad, которые нельзя взрывать командой REMOVEALLPROXY?
- экспортировать объекты Magicad в Автокад (такая команда должна быть), затем чистить чертеж
- искать "кривой" динамический блок вручную
- переделать динамический блок, чтобы он не вызывал проблем с MaGiad
- отказаться от динамических блоков
- если уверен в корректности динамического блока связаться с разработчиками Magicad
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 12.03.2015, 23:55
#136
posetitel


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


Скажите, не взорвет ли данная программа созданные мной блоки, при расчленении примитивов СПДС Extention 4.0?
(Или может у СПДС Extention есть штатная расчленялка примитивов)?
posetitel вне форума  
 
Непрочитано 13.03.2015, 00:04
#137
Александр Ривилис

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


Блоки эта программа не трогает. Блоки - это блоки, а не прокси.
Александр Ривилис вне форума  
 
Непрочитано 13.03.2015, 14:46
#138
posetitel


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


скажите, для акада 2014 64 бит какой arx подойдет?
posetitel вне форума  
 
Непрочитано 14.03.2015, 09:20
#139
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


posetitel, По ссылке в архиве есть файл readme.txt. Там все написано русскими буквами

Цитата:
ExplodeProxy2000.arx - для AutoCAD 2000...2002
ExplodeProxy2006.arx - для AutoCAD 2004...2006
ExplodeProxy2007.arx - для AutoCAD 2007...2008
ExplodeProxy2009x32.arx - для AutoCAD 2009 (x86 - 32-разрядный)
ExplodeProxy2009x64.arx - для AutoCAD 2009 (x64 - 64-разрядный)
ExplodeProxy2010x32.arx - для AutoCAD 2010...2012 (x86 - 32-разрядный)
ExplodeProxy2010x64.arx - для AutoCAD 2010...2012 (x64 - 64-разрядный)
ExplodeProxy2013x32.arx - для AutoCAD 2013...2014 (x86 - 32-разрядный)
ExplodeProxy2013x64.arx - для AutoCAD 2013...2014 (x64 - 64-разрядный)
ExplodeProxy2015x32.arx - для AutoCAD 2015...201X (x86 - 32-разрядный)
ExplodeProxy2015x64.arx - для AutoCAD 2015...201X (x64 - 64-разрядный)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 14.03.2015, 10:57
#140
posetitel


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


спасибо, не заметил
posetitel вне форума  
Ответ
Вернуться   Форум 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