Здравствуйте, гость ( Вход | Регистрация )
|
- Стандарт НП «АВОК» 7.11-2024 «Рекомендации по проектированию инженерных систем дошкольных образовательных организаций» |
АВОК в соц. сетях
|
|
ИНН: 7714824045 | erid: 2VtzqwzKQiU |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() |
| Гость_ss.23_* |
1.10.2005, 20:15
Сообщение
#1
|
|
Guest Forum |
Господа, подскажите, если это возможно изложить кратко в рамках форума.
Речь идёт об операциях в AutoCAD. Я получил чужой файл с планами помещений. Я хочу удалить в нём ненужные слои. Некоторые слои не удаляются, программа выдаёт сообщение, представленное на рисунке. Для справки: - удаляемый слой не является текущим; - удаляемый слой не является нулевым; - удаляемый слой не является слоем defpoints; - все существующие блоки взорваны и план скопирован в новый совершенно чистый файл так, что при вызове команды вставки блока - предлагается пустой список. Пробовал применить команду Purge. Но её возможности не выше обычной команды удаления в менеджере свойств слоёв. Кто-нибудь может подсказать, что ещё надо сделать, чтобы программа разрешила удалить ненужные слои? Существует ли в AutoCAD команда безусловного, безоговорочного удаления ненужных слоёв?
Прикрепленные файлы
|
|
|
|
1.10.2005, 21:20
Сообщение
#2
|
|
|
Группа: Участники форума Сообщений: 53 Регистрация: 15.8.2005 Из: Москва Пользователь №: 1075 |
Поробуйте с помощью команды "Найти" определить обьекты принадлежащие этому слою, перевести их в другой слой и тогда слой престанет содержать обьекты и его можно будет удалить.
|
|
|
|
1.10.2005, 21:39
Сообщение
#3
|
|
|
Группа: Участники форума Сообщений: 274 Регистрация: 25.3.2005 Из: Хохляндия Пользователь №: 593 |
Цитата Поробуйте с помощью команды "Найти" определить обьекты принадлежащие этому слою, перевести их в другой слой и тогда слой престанет содержать обьекты и его можно будет удалить. А мона по-медленее и по-буквам???... С этим дивным траблом живу уже год...свыкся... |
|
|
|
1.10.2005, 21:46
Сообщение
#4
|
|
|
Группа: Участники форума Сообщений: 53 Регистрация: 15.8.2005 Из: Москва Пользователь №: 1075 |
Дело в том что такие проблеммы возникают при импорте файлов из ArchiCAD или других архитекторских программ, и бортся с этим я привык именно так может у вас есть другой способ предложите выслушую с большим интересом.
С Уважением. |
|
|
|
| Гость_ss.23_* |
1.10.2005, 21:56
Сообщение
#5
|
|
Guest Forum |
Да, насчёт "помедленнее" - весьма актуально, т.к здесь вариант, как из сказки - иди туда, не знаю - куда, ищи то, не знаю - что.
А относительно ArchiCAD - в самую точку. Как раз такой случай. Переделал из ArchiCAD, и полезли всякие бяки. :wacko: |
|
|
|
1.10.2005, 22:58
Сообщение
#6
|
|
|
Группа: Участники форума Сообщений: 53 Регистрация: 15.8.2005 Из: Москва Пользователь №: 1075 |
Кликаете правой кнопкой на рабочем поле выбираете команду "Быстрый выбор" в меню свойства выбираете Слой и указываете необходимый для выбора слой. Асаd выберет указанный слой и вы сможете произвести все необходимые вам манипуляции. Или же вы можете сделать еще проще, отклучив ненужные вам слои в ArchiCAD при наличии его.
|
|
|
|
| Гость_OVKT_* |
2.10.2005, 8:55
Сообщение
#7
|
|
Guest Forum |
Судя по исходной картинке, перевод из архикада сделан верно.
Удалять ненужные слои (штриховку, например) нужно так: 1) Панель свойств CTRL+1 - пригодится. 2) Нажимаем на объект, который массово мешает - он выделяется и выдаёт инфу о себе в столбик, там же про слой; 3) Кнопка "сделать слой текущим", соотв. сообщ.; 4) "Слои" - окно слоёв как на рисунке; 5) Меню - выбрать "Select all КРОМЕ текущего"; 6) Выключить (или заморозить) кроме 1 слоя. 7) ОК - видим всё в чисто единственном слое; 8) Массово удаляем; 9) Purge пока реагирует; 10) Все счастливы. |
|
|
|
| Гость_ss.23_* |
2.10.2005, 10:40
Сообщение
#8
|
|
Guest Forum |
Понятно. Всё перечисленное и предложенное Airmen и OVKT я проделал. Но результат неизменный - удаление некоторых слоёв не возможно.
Похоже, это что-то внутреннее, программное, связанное именно с переводом файла из ArchiCAD в AutoCAD. Вероятно, разные этажи делали разные исполнители. Потому что на одних планах этажей операция по очистке после перевода в формат *. dwg прошла успешно, а на других - нет. Это что-то типа глюка, от которого избавиться не возможно. Ладно. В конце концов, эти файлы можно использовать только на данном объекте, и испорченные слои не пойдут путешествовать дальше. Страсть, как не люблю мусор в файле. Спасибо за советы. |
|
|
|
2.10.2005, 14:10
Сообщение
#9
|
|
|
Группа: Участники форума Сообщений: 274 Регистрация: 25.3.2005 Из: Хохляндия Пользователь №: 593 |
Цитата Всё перечисленное и предложенное Airmen и OVKT я проделал. Но результат неизменный - удаление некоторых слоёв не возможно Аналогично... Цитата Ладно. В конце концов, эти файлы можно использовать только на данном объекте, и испорченные слои не пойдут путешествовать дальше Дык, у меня трабл появился в файле в котором я елементы чертежей держу... Копируются в другие проекты... И кроме того имею привычку чертить не в новом файле а используя старый проект как шпаргалку... Соответственно "паразитные" слои путешествуют по всем проектам... :wacko: |
|
|
|
| Гость_ss.23_* |
2.10.2005, 14:59
Сообщение
#10
|
|
Guest Forum |
Я также делал до последнего времени. Но файл имеет неприятную особенность пухнуть в размерах (даже когда практически пуст). В последний раз объём чертежа с планами нескольких этажей перевалил за 12 Мб. Мне это совсем не нравится. А элементы систем, линий, стилей текста, размерных стилей и блоки можно хранить в некотором файле, который можно использовать, как исходный, начиная новый проект.
Кстати, сейчас попробовал скинуть некоторые элементы нового чертежа (с неудаляемыми слоями), которые начертил уже сам, в другой файл. Неудаляемые слои не копируются. И это радует. |
|
|
|
5.10.2005, 8:30
Сообщение
#11
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
день добрый
сталкивался с подобным, проблема часто решается так: слои не удаляются, т.к. при переводе в dwg из архикада остаются блочные ссылки, которые невозможно удалить я выбираю нужный слой через быстрый выбор (quick select), потом взрываю всё, что не надо удаляю, что надо, перевожу в другой слой повторяю к применительно к другим слоям затем через файл\утилиты\очистить выбираю тот самый purge all удаляются не только ненужные слои, но и прочий мусор - типы линий, стили текста и пр. вес сокращается капитально - в несколько раз, ну и проще читать чертёж, когда в нём лишь твои, "родные" атрибуты с уваж, буду рад, если поможет |
|
|
|
5.10.2005, 8:55
Сообщение
#12
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
кстати, забыл сказать, что часто бывает ссылка в ссылке, тогда взрывать (расчленять) приходится несколько раз
|
|
|
|
5.10.2005, 9:11
Сообщение
#13
|
|
|
проектировщикъ Группа: Участники форума Сообщений: 1119 Регистрация: 30.6.2004 Из: Москва Пользователь №: 6 |
а по моему проще
1 взорвать 2 поместить все в один слой например 0 3 создать новый файл 4 скопировать в него 5 сохранить этот файл под именем например "plan" и всегда будет очищенный файл с планами |
|
|
|
5.10.2005, 9:43
Сообщение
#14
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
согласен, но сам с этим столкнулся, когда всё почти начертил и не по одному проекту
как говорится, знал бы заранее, подстелил соломки |
|
|
|
5.10.2005, 10:16
Сообщение
#15
|
|
|
проектировщикъ Группа: Участники форума Сообщений: 1119 Регистрация: 30.6.2004 Из: Москва Пользователь №: 6 |
но я обычно, если планы могут измениться
использую команду xref |
|
|
|
| Гость_Guest_* |
9.10.2005, 12:01
Сообщение
#16
|
|
Guest Forum |
В Express Tools есть команда удаления слоя ,даже если на нём находятся объекты)...
|
|
|
|
| Гость_ss.23_* |
9.10.2005, 13:15
Сообщение
#17
|
|
Guest Forum |
Что-то я такой опции (Express Tools) не обнаружил. У меня AutoCAD 2005.
Похоже, речь идёт о версии 2006 ? |
|
|
|
9.10.2005, 13:28
Сообщение
#18
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
[Что-то я такой опции (Express Tools) не обнаружил]
это дополнительная панель инструментов, устанавливается отдельно можно поискать в и-нете, я в своё время нашёл |
|
|
|
| Гость_ss.23_* |
9.10.2005, 13:59
Сообщение
#19
|
|
Guest Forum |
Да. Действительно. Открыл файл в AutoCAD 2006, там в меню есть раздел Express, а в нём - подраздел СЛОИ. В открывающемся подменю, внизу есть команда Delit. Чтобы уничтожить слой, надо указать на любой объект из слоя, подлежащего уничтожению. У меня объектов явных в этом слое (в данном конкретном случае - это слой "Lines") не было. Специально прочертил в нем прямую. Вызвал команду и указал на эту прямую. Запросы о подтверждении своих действий, предупреждения - всё, как положено. Но в конце AutoCAD расписался в своём бессилии(см. рис.). Мол, так и так, извините, но не возможно удалить, т.к. в указанном слое есть ссылки на некоторые объекты из рисунка. Вообщем, воз и ныне там...
Прикрепленные файлы
|
|
|
|
9.10.2005, 14:36
Сообщение
#20
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
Цитата(ss.23 @ Oct 9 2005, 14:59 ) но не возможно удалить, т.к. в указанном слое есть ссылки на некоторые объекты из рисунка остаётся только взрывать, как я писал выше, мне всегда такой вариант помогал |
|
|
|
| Гость_ss.23_* |
9.10.2005, 15:20
Сообщение
#21
|
|
Guest Forum |
Знать бы чего ещё взрывать, если изначально взорвал всё, что только можно.
|
|
|
|
10.10.2005, 9:59
Сообщение
#22
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
попытался восстановить цепь событий
взял пару планов, переведённых из архикада в акад там были слои, у которых не было (якобы) никаких объектов, т.е. их никак не изобличить и не удалить через быстрый выбор задал поисх всех блочных ссылок (block reference/select all) - нашлась не одна тысяча взорвал, сразу стали доступны несколько слоёв, которые либо перевёл в нужный мне, либо совсем удалил повторил поиск - нашлось уже поменьше ссылок и т.д. раз пять единственное что в итоге вес одного плана уменьшился в 3 раза, а у другого вырос в полтора в этом втором плане были ссылки, которые не взрывались и вообще никак не проявлялись, тогда я их втупую удалил и всё стало нормально а ненужные слои (и много другого мусора через purge all) все удалились |
|
|
|
| Гость_ss.23_* |
10.10.2005, 17:54
Сообщение
#23
|
|
Guest Forum |
Я запускал поиск аналогично, взрывал, повторял, пока выбор перестал предлагать блоки. Результат Вам известен.
Да, хр...н с ним, с этим файлом. Сделал проект и забыл. Брать его за основу для других проектов не буду. Ещё раз обращаю внимание, что интересные объекты (собственные) из этого файла можно копировать без проблем. При этом неудаляемые слои не копируются. И это радует. |
|
|
|
| Гость_Guest_* |
12.11.2005, 3:02
Сообщение
#24
|
|
Guest Forum |
У меня, с помощью экспресстулз, всё прекрасно удаляется:
Цитата Command: laydel Слой 00 удалён.
Select object on layer to delete or [Type-it/Undo]: Selected layers: 00 Select object on layer to delete or [Type-it/Undo] <done>: ******** WARNING ******** You are about to permanently delete layer 00 from this drawing. Do you wish to continue? [Yes/No] <No>:y Deleting layer "00". 1 layer deleted. |
|
|
|
| Гость_Denido_* |
25.11.2005, 5:00
Сообщение
#25
|
|
Guest Forum |
tgv Oct 5 2005, 09:12 предлагал:
>а по моему проще >1 взорвать >2 поместить все в один слой например 0 >3 создать новый файл >4 скопировать в него >5 сохранить этот файл под именем например "plan" >и всегда будет очищенный файл с планами Я поступаю немного по другому: 1 Создать пустой файл, у которого будет только слой 0 2 В новом окне открыть файл, который хочешь обработать 3 Показать все (zoom all) -> рамкой выделить все -> вырезать (cut) -> убедиться, что все исчезло с экрана 4 Открыть окно с пустым файлом -> вставить -> purge -> сохранить (save). Иногда это помогает. Не могу объяснить принцип действия, возможно при копировании через буфер обмена не передается какая-то служебная информация и в новом файле появляется возможность пуржирования. |
|
|
|
| Гость_Гость_Екатерина_* |
2.12.2005, 11:47
Сообщение
#26
|
|
Guest Forum |
Цитата(tgv @ Oct 5 2005, 09:12 ) а по моему проще 1 взорвать 2 поместить все в один слой например 0 3 создать новый файл 4 скопировать в него 5 сохранить этот файл под именем например "plan" и всегда будет очищенный файл с планами Мне очень жаль но вы не правы, часто пытались но ничего не получается все равно каие-то слои перетаскивались. Начали пользоваться perge all - другое дело |
|
|
|
| Гость_OVKT_* |
3.12.2005, 20:09
Сообщение
#27
|
|
Guest Forum |
Пример специально для Гость_Екатерина получится ли Ваша система 500К:
http://www.abok.ru/index.php?act=A...e=post&id=12553 Заевшие слои из-за оставшихся типов засечек размерных стилей. Иногда. |
|
|
|
| Гость_ss.23_* |
2.4.2006, 11:51
Сообщение
#28
|
|
Guest Forum |
Господа, хотел вернуться к вопросу очистки файла... Точнее, понятие "очистка" - не совсем подходит. Требуются какие-то радикальные меры по уменьшению объёма файла.
Проблема следующая... Архитектор даёт для работы dwg-файл, переделанный из ArhiCAD (не знаю, какой версии, но скорей всего - последней). Выглядит файл обычно, как один блок, или как набор блоков. В нем множество сплошной штриховки и сотни две-три мелких блоков, явившихся следствием перехода из одной программы для черчения в другую. Объём пока вполне приемлемый 717 кб. После того, как все блоки (включая один объединяющий) найдены и взорваны, объём файла уже возрастает до 10 Мб. После удаления всех сплошных штриховок и каких бы то ни было блоков, объём файла уменьшается до 6,55 Мб. Это, конечно, не 10 Мб, но тоже - не подарок. Учитывая, что в дальнейшем после прорисовки всех систем добавится 2-5 Мб, файл станет слишком громоздкий. ------------ Просьба, кто знает, подскажите, пожалуйста, как поступить в данной ситуации? Может быть, надо как-то по-другому вести последовательность операций по очистке файла? Может быть, надо перевести информацию в какой-то другой формат, а потом вернуть в AutoCAD, после чего объем "нормализуется"? Просто - не серьёзно: файл с небольшим помещением занимает объём файла с большим многоэтажным зданием и с нанесёнными всеми инж. системами... Если кому любопытно поэкспериментировать, прикладываю исходный файл. ZIP-файл = 623 кб.
Прикрепленные файлы
|
|
|
|
2.4.2006, 12:37
Сообщение
#29
|
|
|
Инженер-проектировщик Группа: Участники форума Сообщений: 2090 Регистрация: 31.10.2005 Из: Москва Пользователь №: 1437 |
Действительно так. Честно говоря сталкиваюсь с таким впервые. думаю это особенности данной версии Архикада.
Всегда делал так как описываете и проблем не было. |
|
|
|
| Гость_ss.23_* |
2.4.2006, 13:01
Сообщение
#30
|
|
Guest Forum |
Именно так. До сих пор всякого рода "взрывания" и удаление приводило только к уменьшению объёма файла. Опасаюсь, что такой сюрприз (по увеличению объёма файла на порядок после попыток его очистки), преподносит нам последняя версия ArhiCAD, и что теперь такое явление станет в порядке вещей... Хотелось бы иметь действенный инструмент борьбы с таким свойством.
|
|
|
|
3.4.2006, 9:12
Сообщение
#31
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
объяснение может такое, что блочная ссылка, будь то диван иль элемент интерьера очень сжата в объёме и отдельные её элементы во взорванном виде весят поболее (в 2-3 раза): можно провести эксперимент с одним блоком, скопировав его в отдельный файл и взорвав
и если все ненужные детали удалить, оставив стены и самое необходимое, то в итоге размер файла уменьшается почти до исходного ещё можно предположить, что новые версии архикада (или библиотек) имеют более насыщенные графикой и при этом сжатые блоки |
|
|
|
3.4.2006, 11:28
Сообщение
#32
|
|
|
Группа: Участники Форума2 Сообщений: 1784 Регистрация: 16.12.2005 Пользователь №: 1721 |
Цитата(e.o.l. @ Apr 3 2006, 10:12 ) объяснение может такое, что блочная ссылка,... очень сжата в объёме и отдельные её элементы во взорванном виде весят поболее (в 2-3 раза) по-моему это от того, что каждый объект в акаде - это отдельная запись в базе данных (файл dwg - это как бы база данных объектов, слоёв, типов линий и т.д.) один объект - одна запись в базе данных (в упрощённом варианте) в файле с нерасчленёнными блоками 918 объектов в полностью расчленённом варианте 208 698 объектов !!! один стульчик состоит из 1323 объектов |
|
|
|
| Гость_ss.23_* |
3.4.2006, 22:09
Сообщение
#33
|
|
Guest Forum |
Да, всё так и есть.
Я как раз в выходные поэкспериментировал... будь не ладны эти архитекторы с их архикадом! На маленький файл убил два дня, чтобы только подготовить его к работе. Это же просто издевательство над простым российским инженером! :wacko: В конечном итоге, пришлось пойти на компромисс. Что после "взрывания" не приводило к значительному возрастанию объёма файла, то взрывал и чистил. Что сильно сказывалось на изменении объёма файла (вычурные стулья, диваны и столы с бахромой и складками скатерти, после взрывания получается контур, состоящий из десятков тысяч мелких прямых отрезков) - оставлял, как есть, или заменял на собственные фигуры, более простые. Но даже в этом варианте в конце вышел файл в 1,08 Мб. Радует, что - не десять мегабайт. Ради интереса полученный файл прилагаю. ZIP-файл =940 кб.
Прикрепленные файлы
|
|
|
|
7.4.2006, 22:44
Сообщение
#34
|
|
|
Группа: Участники форума Сообщений: 69 Регистрация: 18.2.2005 Из: Москва Пользователь №: 473 |
Я эту проблему решаю следующим образом.
1- удаляю все лишние объекты с исходного чертежа (планировки) 2- удаляю все неиспользуемые слои 3- "взрываю" один раз для отделения заливок и штриховок от ограничивающих линий 4- "взрываю" еще один раз для удаления заливок мебели (слой Furniture....) 5- "взрываю" несколько раз до тех пор пока не останется "невзорванных" объектов 6- перевожу все в слой "0" 7- "Purge All" несколько раз. Остаются два слоя - "0" и "Defpoint" 8- удаляю двойные, тройные и т.д. линии конструкции стен и перегородок 9- командой "w" создаю W-Bloc, выделяя нужные объекты. В нем сохраняются только выделенные объекты. Удобно делать блок планировки отдельно и блок экспликации помещений отдельно. 10- при просмотре блоков все объекты будут находиться в единственном нулевом слое. 11- вставляю блоки в свой шаблон чертежа, где он приобретает все свойства шаблона. С уважением! |
|
|
|
| Гость_ss.23_* |
8.4.2006, 14:16
Сообщение
#35
|
|
Guest Forum |
Замечательно. Правда, половина не понятно, но внушает...
W-блок: никогда с таким зверем не встречался. Впрочем, необходимости в этом нет, т.к. нельзя стены, перегородки объединять в блок. Это неудобно при разводке вентсети. Другое дело, взорвать блок мебели, удалить штриховку, и вернуть всё множество чёрточек назад в блок - это я одобряю, это прокатит, создаёт удобство. Шаблон мне также не знаком. Наверное, штука удобная, но не обучен. К сожалению, AutoCADу вообще не обучен. Самоучка. Как и более широко - во всей вентнауке... Спасибо за советы... |
|
|
|
8.4.2006, 15:34
Сообщение
#36
|
|
|
Группа: Участники форума Сообщений: 146 Регистрация: 29.10.2005 Пользователь №: 1427 |
Вот у вас архикадчики навороченные! Мои хотя бы помещения в блоки не заливают. После первого взрыва мой бедный ACAD 2 минуты пытался просто штриховку быстрым выбором поймать. И зависал 2 раза. А вообще, как я погляжу, ничего нового в этом плане никто не придумал. Все делают примерно одно и то же. Меня гораздо больше беспокоят не слои, от которых никак избавиться нельзя (я их под себя приспосабливаю - переименовываю и использую, как свои), а то, что очень часто после взрыва многие объекты получаются многослойными. Например, на одной линии еще линия, и еще, и еще. И не угадаешь, где их 2, а где 3. Поймать из можно только методом тыка, т.к. они, как правило, все свойства имеют одинаковые и быстрым выбором их не отсеишь. Отсюда и размеры файла. Так что - как новый проект, так садишься и 2-3 часа просто чистишь чертеж. И никуда не денешься.
Я, правда, после того, как на 2004й ACAD пересела, все блоки огульно перестала взрывать. Там очень удобный редактор блоков – работаешь с блоком практически не выходя из чертежа и делаешь с ним что нужно, все лишнее удаляешь, упрощаешь, насколько нужно, а когда из редактора выходишь, все блоки с тем-же именем автоматически «приходят в себя». Очень удобно с мебелью и сантехникой. И размер чертежа меньше, чем если бы эти объекты не были сблокированы. Попробуйте, может, понравится. |
|
|
|
| Гость_ss.23_* |
8.4.2006, 16:33
Сообщение
#37
|
|
Guest Forum |
С редактором блоков не работал, кроме редактирования атрибутов (отметка уровня и пр.). Надо будет попробовать.
С "упёртыми" слоями частенько поступал аналогично (переименовывал под себя). Тут главное случайно потом такой чертёж не взять в качестве своего исходного шаблона в дальнейшей работе, а то эта "упёртость" и будет потом мешаться под ногами... А то, что все действуют примерно в одном направлении и одинаковыми методами - это Вы правильно заметили. |
|
|
|
10.4.2006, 12:36
Сообщение
#38
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Если надо снести в каде все штриховки, входящие в блоки, попробуйте использовать такой лиспик (заодно разбивает блоки, состоящие только из одного примитива); штриховки, лежащие напрямую на пространстве рабочем, не трогает. Не отслеживает состояние слоев (замороженности, заблокированности; если надо, сообщите, сделаю):
Код (defun c:mod-purge (/ *kpblc-activedoc* selset sel_item) (vl-load-com) (setq *kpblc-activedoc* (vla-get-activedocument (vlax-get-acad-object)) *error* kpblc-error );_ end of setq (vla-startundomark *kpblc-activedoc*) (repeat 3 (vla-purgeall *kpblc-activedoc*)) (command "_.-purge" "_r" "*" "_n") (vlax-for item (vla-get-blocks *kpblc-activedoc*) (if (not (wcmatch (strcase (vla-get-name item) t) "*_space*")) (progn (vlax-for sub_item (vla-item (vla-get-blocks *kpblc-activedoc*) (vla-get-name item) );_ end of vla-Item (if (= (strcase (vla-get-objectname sub_item) t) "acdbhatch") (vla-erase sub_item) );_ end of if );_ end of vlax-for (if (< (vla-get-count item) 2) (progn (setq selset (ssget "_X" (list (cons 0 "INSERT") (cons 2 (vla-get-name item)) );_ end of list );_ end of ssget );_ end of setq (while (and selset (> (sslength selset) 0) );_ end of and (setq sel_item (ssname selset 0)) (ssdel sel_item selset) (vla-explode (vlax-ename->vla-object sel_item)) );_ end of while );_ end of progn );_ end of if );_ end of progn );_ end of if );_ end of vlax-for (repeat 3 (vla-purgeall *kpblc-activedoc*)) (vla-regen *kpblc-activedoc* acallviewports) (vla-endundomark *kpblc-activedoc*) );_ end of defun для снесения "накладываемых" объектов можно воспользоваться утилитой из Express Tools, вызывается overkill. Кстати, ее же можно вызывать и внутри редактирования блока. Что еще... Еще я б в этом файле сделал бы _pedit _m и дальше по опциям - т.е. объединил бы отдельные отрезки и дуги в полилинии. Всяко поменьше весить будут (особливо внутри блоков). Вот еще, пока тестировал лисп, еще кое-что нашел. Некоторые блоки лежат друг над другом. overkill их вроде как обрабатывает, но объем файла вырос. В результате моих измывательств над ним файл упал до 724 кб (в ZIP-e - 586 кб, RAR подсоединить не удалось)
Прикрепленные файлы
|
|
|
|
| Гость_ss.23_* |
10.4.2006, 13:12
Сообщение
#39
|
|
Guest Forum |
Классно.
Но для меня такая работа в AutoCADe - из области недостижимого высочайшего уровня мастерства. Спасибо за урок. |
|
|
|
10.4.2006, 13:32
Сообщение
#40
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Да, вот еще. Пока ковырял файл, несколько раз понадобилось переименовывать блоки. Отчетливо осознавая неочевидность кода, тем не менее продублирую его здесь (именно переименование блоков)
Код (defun c:mrename (/ adoc ent block new_name) (vl-load-com) (setq adoc (vla-get-activedocument (vlax-get-acad-object))) (vla-startundomark adoc) (while (and (setq ent (entsel "\nУкажите блок <Выход> : ")) (= (cdr (assoc 0 (entget (car ent))))) );_ end of and (setq block (vla-item (vla-get-blocks adoc) (cdr (assoc 2 (entget (car ent))))) );_ end of setq (if (= (setq new_name (getstring (strcat "\nНовое имя <" (vla-get-name block) "> : " );_ end of strcat );_ end of getstring );_ end of setq "" );_ end of = (setq new_name (vla-get-name block)) );_ end of if (vla-put-name block new_name) );_ end of while (vla-endundomark adoc) );_ end of defun P.S. Используя лисп, многое можно сделать быстрее и проще, чем руками (вручную что-нибудь пропустить или забыть слишком легко). P.P.S. С подключением лиспа проблем нет? |
|
|
|
| Гость_ss.23_* |
10.4.2006, 14:07
Сообщение
#41
|
|
Guest Forum |
К сожалению, с программой лисп не знаком. Для меня это нечто из высших материй...
Ещё раз спасибо за урок мастерства. |
|
|
|
10.4.2006, 14:43
Сообщение
#42
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Я имел в виду - сделать кнопку, повесить на нее вызов и прочая - если это вызывает трудности, можно рассказать и здесь, только тематика форума, по-моему, немного другая. В любом случае, ПМ есть
P.S. Доброе слово, знаете ли, оно и кошке приятно, что уж говорить о всяких там крысах |
|
|
|
| Гость_ss.23_* |
10.4.2006, 16:02
Сообщение
#43
|
|
Guest Forum |
Спасибо, огромное.
Я думаю, не стоит занимать время. К сожалению, его, как всегда не хватает... Было очень приятно взглянуть на "высший пилотаж". Это как на экскурсию сходить по изучению прогрессивного опыта. По крайней мере, теперь знаю, что текущие проблемы имеют решение... |
|
|
|
12.4.2006, 16:24
Сообщение
#44
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Выкроил чуток времени, сделал менюшку (см. аттач)
Как подключить. 1. Распаковать в любую папку. 2. В каде сделать так: _options -> закладка Files, самая верхняя ветка, нажать на "+", слева нажать кнопку Add, указать путь к той папке, в которую распаковали меню. 3. Нажимать ОК пока не закроются все окна 4. В каде же _menuload и найти файл abok.mnu (он лежит в Вашей папке). Нажимать ОК. 5. Переместить меню куда удобно и работайте. --- Добавлено: P.S. Поскольку времени действительно мало, сделать нормальный инсталлятор не успеваю. Уж извините.
Прикрепленные файлы
|
|
|
|
13.4.2006, 9:05
Сообщение
#45
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Хм... написал, и - тишина... Хоть бы кто-нибудь что-нибудь сказал, что ли
|
|
|
|
13.4.2006, 10:34
Сообщение
#46
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
попробовал, прописал путь как надо
однако ни меню, ни панели инструментов какой не появилось акад 2005 |
|
|
|
13.4.2006, 10:54
Сообщение
#47
|
|
|
Группа: Участники форума Сообщений: 146 Регистрация: 29.10.2005 Пользователь №: 1427 |
Спасибо Вам большое. Все замечательно работает. Особенно понравилась программка для переименования блоков. Очень удобно. Отдельное спасибо за то, что упомянули Express Tools. К своему стыду я до сих пор как-то не обращала внимания на это приложение. А тут почитала - столько дополнительных возможностей!
|
|
|
|
13.4.2006, 11:51
Сообщение
#48
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Цитата(e.o.l. @ Apr 13 2006, 11:34 ) попробовал, прописал путь как надо однако ни меню, ни панели инструментов какой не появилось акад 2005 Все сделано именно как было описано? Тогда странно. В общем, вот файлик с описанием, как сделать можно: объем - 233 кб. Формат файла - ZIP, внутри - файл MS Word 2000, макросов не делал (но Вы мне не верьте, все равно ставьте защиту по максимуму).
Прикрепленные файлы
|
|
|
|
13.4.2006, 13:44
Сообщение
#49
|
|
|
ИнженерищЕ Группа: Участники форума Сообщений: 1074 Регистрация: 20.5.2005 Из: Астрахань Пользователь №: 795 |
вот теперче получилось, спасибо большое
удобная вещь, что и говорить жаль нет времени лисп освоить хоть азы а сколько времени нужно, чтоб создать подобное? |
|
|
|
13.4.2006, 14:03
Сообщение
#50
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
У меня из учителей была только книга "САПР на базе", так что понадобилось примерно полгода, чтоб вообще въехать в лисп (до этого им не занимался). Был бы хороший учитель - было бы быстрее. Ну и плюс форумы
Научиться можно, это не особая проблема. Просто проектировщикам, как правило, нет времени на эту "роскошь". --- Добавлено: На самом деле литературы больше, начиналось-то все с В.Свет "AutoCAD Язык макрокоманд и создание кнопок" |
|
|
|
| Гость_Pitya_* |
17.4.2006, 17:12
Сообщение
#51
|
|
Guest Forum |
Вот интересная ситуация:
стандартная проблема - чертеж миллионслойный - гибридный перевод из архикада в автокад...так вот: кроме того, что чертеж не только не берет никое "purge", но и в добавок(что меня добило) - его нельзя поворачивать в разных видах...а это мне очень важно!!! Вот и теряюсь в догадках...может оперативки не хватает(у меня Селерон 2ГГц, 512ОЗУ)??? |
|
|
|
18.4.2006, 7:14
Сообщение
#52
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Так а файлик приложить? А то всухую бесполезно гадать... Если в общий доступ нельзя (по каким бы то ни было причинам), можно и в почту - kpblc2000 # gmail.com (что на что заменить - и так, думаю, понятно).
Что значит "поворачивать в разных видах"? Это в каком пространсте - модели или листа? Не срабатывает поворот UCS? Или _3dorbit? Кстати, при просмотре многих файлов, импортированных из ArchiCAD'a, обратил внимание, что блоки там сделаны "не по-автокадовски", т.е. примитивы имеют настройки не "ByBlock". Сделать перевод примитивов в свойства "ByBlock" - работа минуты на 2 (просто код найти и адаптировать). Вполне может оказаться, что дело не в слоях, а в текстовых и размерных стилях, слишком широком применении ttf-шрифтов (уж больно сильно кад тормозит на таких файлах); или в фильтрах слоев; или вообще во внутренних ошибках. Дополнительно: а что _audit (Файл - Утилиты - Проверка или File -> Utilities -> Audit) выводит? Если ничего этого не помогает, можно рискнуть и попробовать сохранить файл в dxf-формате версии "пораньше", а потом открыть и сохранить уже как dwg (риск здесь обусловлен только объемом dxf-файла - разница может быть на порядок). Иногда помогает. --- Добавлено. Если известны настройки текстового и размерного стилей, то их желательно указать - сделать его программно не особо проблема. Также желательно указать, менять ли форматирование для многострочных текстов. Разбивать или нет блоки, имеющие только одно вхождение? Разбивать или нет блоки, у которых в составе только 1 примитив (блоки, имеющие в составе только атрибуты, разбивать не хотелось бы)? Разбивать или нет прокси-объекты? Что делаем со штриховками? Назначать или нет примитивам свойства "По слою" (кроме входящих в блоки - для тех все на слой "0", свойста "По блоку", к примеру)? Вариантов сделать можно массу. |
|
|
|
| Гость_Pitya_* |
21.6.2006, 9:36
Сообщение
#53
|
|
Guest Forum |
2 kpblc:
Спасибо Вам большое за уделяемое внимание данной теме, потому что многое из того, что Вы говорите в книгах не написано... Прилаживаю файл 520кБ - здесь архитектурный чертеж, транспортированный архитетором с Архикада в Автокад... Посмотрите его на досуге, хотелось бы узнать Ваше мнение как можно его "почистить"...к стати этот же чертеж у меня в 3D-видах не поворачивается!
Прикрепленные файлы
|
|
|
|
21.6.2006, 16:15
Сообщение
#54
|
|
|
CAD Developer Группа: Участники форума Сообщений: 409 Регистрация: 6.2.2006 Из: C.-Петербург, Россия Пользователь №: 2062 |
Специально проверил на ADT2005. Последовательность действий:
1. Снять отображение сетки (F7) - Ничего, кроме тормозов, оно не дает. 2. Удалить фильтры слоев (я удаляю в основном лиспом, но можно и руками) - запустить менеджер слоев, и дальше по картинке (из выделенного красным - удалить ненужные). 3. Внутри файла какая-то странная ошибка болтается (ошибка слоя). Я не стал ее искать и пытаться вылечить. Поскольку фильтры слоев не требовались, дал команду _.wblock (в русской версии звучит как пблок), выделил все и сохранил под другим именем (базовая точка - левый нижний угол форматки). Дальнейшие действия уже с этим "переписанным" файлом. 3.1. Выполняем команды flatten (из Express Tools) - для приведения файла в "плоский" вид и overkill - для удаления дубликатов. Работать будет очень долго (минут 20 у меня iP4 1.7GHz его молотил на flatten и еще минут 40 на overkill) 3.2. Команда _purge (Очистка), удаление всех неиспользуемых элементов, и файл весит уже 553 кб. 3.3. Опять же, лиспом (то есть программно) меняю форматирование текстов с ttf-шрифтов на используемый у меня. 3.4. Снимаем ассоциированность размеров (на случай, если надо будет двигать, результат будет отвратительный) - команда _.dimdisassociate (как в локализациях, увы, не знаю). В общем и целом по файлу. Странно используются атрибуты - как отдельные элементы (вместо того, чтоб вставить их внутрь блока). Mirrtext установить и они не будут зеркалиться вслед за блоками (но будут поворачиваться). У блока "1" очень странная точка вставки - по х отнесена от центра машины на 135 133 (135 метров!), а по вертикали - 1 018 422 (больше километра!). Опять же, этот блок состоит из 1106 примитивов - дуг и отрезков. После применения внутри него команды _pedit с соответствующими опциями там стало в 4 раза меньше примитивов. Почему-то не используются блоки для колонн и обозначений осей (хотя они так и просятся туда). Интересно, сколько оно теперь весит? И с какой скоростью будет обрабатываться? Без применения flatten и overkill - около 530 кб. Скорость "ворочания" в режиме 3dorbit - не фонтан. После flatten + overkill - около 510 кб. Скорость обработки принципиально не возрасла. То есть в данном конкретном случае применение этих дополнительных команд ничего не дает, кроме как потерять время. Хотя иногда эти команды результат дают ого-го какой. Это первые приближения. К сожалению, сейчас шансов сделать нормальную менюшку практически нуль - работы навалили мама не горюй. Если делать, то надо ответить на следующие вопросы (это практически ТЗ - настройки текстового и размерного стилей, которые будут назначаться всем текстовым примитивам; - сносить или нет форматирование многострочных текстов; - как обрабатывать "содержимое" блоков (переназначать слой, тип и вес линии или нет); - назначать ли цвет, вес и тип линии объектам "по слою" или нет; - удалять или нет фильтры слоев (если не все, то надо обязательно указать имена "оставляемых в живых" фильтров); - запускать или нет под конец flatten и overkill (без проверки установленнсти Express Tools). - вариант работы через диалоговое окно или по опциям командной строки? Рецепты некоторые по ускорению работы: 1. Блок "1" переделать, снеся там лишнюю детализацию (Audi, конечно, хорошая машина, но правый руль почему - я не очень въехал 2. Колонны и стены сделать одним блоком и вставлять его с разными масштабами по разным осям и поворачивать по надобности. 3. Обозначения осей - в блок. 4. Для полилиний можно попробовать снять "выравнивание", которое в блоке раковины установлено в "бикубическое".
Прикрепленные файлы
|
|
|
|
![]() ![]() |
|
|
|
Текстовая версия | Сейчас: 10.12.2025, 9:35 |
| Политика ООО ИИП «АВОК-ПРЕСС» в отношении обработки персональных данных |