|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
09.12.2004, 14:17 | #1 | |
Хитрый блок
Engineer
New-York
Регистрация: 05.09.2003
Сообщений: 10,288
|
||
Просмотров: 94286
|
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Очень интересно, особенно если есть возможность такое делать допустим с перекрывающимися блоками, чтобы одно было пункирным а другое типа сверху. Так что если чем могу помочь, то я к вашим услугам.
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Сообщений: n/a
|
Припоминаю, что было решение подобной задачи с ипользованием в блоках сполшной (возможно участками) заливки и печатью чертежа через цветозависимый стиль в котором характеристика Screening для цвета заливки равнялась 0. Перед распечаткой блоки выводились на передний план командой draworder. Однако утверждалось, что порядок следования примитивов в блоке может вероломно изменяться вызывая определенные трудности.
|
|||
|
||||
Машиностроение, Проектирование Регистрация: 15.09.2003
Москва
Сообщений: 1,113
|
Интересен и мне это "хитрый блок"
Согласен поучаствовать по мере сил. |
|||
|
||||
AutoCAD/AutoLISP Регистрация: 27.08.2003
Seattle/USA
Сообщений: 1,133
|
Поглядите на моей страничке там под номером 52. Contour Labeling програмка которая прикрывает контурную линию "хитрым блоком" в котором сочетание аттрибутов и wipeout. Програмка конечно берет значение Z для контура и подставляет его в атрибуту. И в ocновном "хитрый блок" по ппринципу который vova/kos описали.
http://home.pacifier.com/~nemi |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Ну конечно, наши"продвинутые" догадались правильно. В блок должен входить Wipeout. Но этот объект в сочетании со случайным положением Draworder (порядка в котором объекты лежат друг на друге) может или залечь на дно, и не сработать, или всплыть на поверхность и все закрыть. Так что дело в технологии создания блока и правильной работе, когда блоки в чертеже. Прога от Startrek это почти то, что нам надо. Советую иметь ее в своей коллекции. Она внедряет текст (атрибут) в линию, не разрывая ее. По предлагаемой ниже технологии у меня все работает нормально.
1. Создать специальный слой, условное имя SB (от Shy block-Хитрый блок). Задать ему редкий цвет, пусть №21. 2. Нарисовать в этом слое все детали будущего блока, включая атрибуты, если надо. Придать элементам нужные цвета. (цвета не будут впоследствии менятся, так как наши блоки всегда будут расположены в слое SB). Таково ПОКА условие. Можно ли его изменить, покажет эксперимент. ВНИМАНИЕ! Наружный конрур блока не должен содержать криволинейных элементов. При необходимисти заменяйте их на короткие но максимально длинные отрезки. 3. Создайте Wipeout (одноименная команда в 2004. В 2002 в Express) используя наружный контур блока. На вопрос, убирать ли полилинию ответьте NO. Все ранее нарисованные детали блока закроются. 4. Командой CDORDER (express) опустите цвет № 21 вниз, при этом включите опцию Handles. 5. Теперь детали блока проявятся. Создайте из всего этого блок. 6. Работайте с блоком при работе могут быть 2 варианта. А) Сначала сделана линия, на нее опужен блок. Б) Наоборот. Тогда командой Draworder (RD) опустите линию вниз. Если вы работаете с этой линией, например, удлиняете, она выйдет наверх. Сделайте Regen (RE) и (если было Draworder) все встанет на место. Если зайти в пространство бумаги и там открыть Viewport и в нем сделать Regen, и затем, закрыв экран , засейвать, то, как я заметил, несмотря даже на неправильное положение в модели, на принт должно выйти все правильно. Первое задание-проверить, всегда ли так происходит. После того, как мы обобщим наш коллективный опыт, сделаем кнопку, которая всегда будет поднимать все, что лежит в слое SB наверх. Сделайте пока всего один пробный блок на 1 чертеж и поиграйтесь с ним. Первое время я балдел от результата. Niko, попробуй все это повторить, используя вместо Wipeout -пустой растр. Ну и все плохое, что заметили, сюда, в эту ветку. И хорошее тоже. |
|||
|
||||
LISP-программист Регистрация: 25.08.2003
Тутэйшы
Сообщений: 238
|
Цитата:
Код:
Поэтому логично предположить, что wipeout и пустой растр будут вести себя одинаково. Я так думаю! [sm2001] (с) Мимино.
__________________
Там все есть для счастья - меня там только нет. Так это значит, что я там - буду! |
|||
|
||||
Машиностроение, Проектирование Регистрация: 15.09.2003
Москва
Сообщений: 1,113
|
Сделал все по инструкции.
Все получилось, отклонений и сбоев не было (АКАД 2005) Факультативно разбил блок, видоизменил, собрал, все осталось также как и должно с учетом видоизмененений блока. При повторной вставке блока, последний всатвленный блок также скрывает все под собой. |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Все в общем получилось... теперь частности:
-очень часто при работе с этим блоком вылетал КАД (плохая версия одна из причин, но тут он просто вылетал с завидной регулярностью); -при попытке сделать цвет примитива ByBlock примитив скрывался за контуром, при переопределении цвета на другой- примитив виден, потом перевожу в цвет ByBlock и если не выхывать cdorder, то он виден и работает так как надо... Странно. - можно ли как то сделать, чтобы не видно было контура блока? Просто я попробовал использовать для арматуры и контур как то мешает... Я конечно понимаю, что можно выключить печать данного цвета, но это не очень хороший вариант. А так очень хорошо... кстати, а как с пожиранием ресурсов этой вещью? Будет время проведу эксперимент из сотни одинаковых блоков и сотни блоков разных видов(порядка 10)... мне почему то кажется, что ресурсоемкая технология...
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Машиностроение, Проектирование Регистрация: 15.09.2003
Москва
Сообщений: 1,113
|
Цитата:
По-размеру файла. Вставлено 2 простеньких блока и еще чуток нарисовано размер 66Кб. Беру квадрат и штрихую, запоминаюсь, размер- 45Кб. Вставляю еще (третий) блок, р-р 66Кб, Еще раз рисую квадрат и штрихую его - р-р 50Кб В чем дело, сам не знаю. |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Цитата:
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Машиностроение, Проектирование Регистрация: 15.09.2003
Москва
Сообщений: 1,113
|
Тогда остается сделать границу непечатаемую и цвет подогнать под фон., чтоб глаза не мозолил
А текст в рамке (да еще если фамилия)...... могут побить |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Цитата:
wipeout;f;off; тогда граница не показывается... а вот по поводу растянуть границу под длину текста... интересная вещь была бы)
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Насчет рамки. Как вычислил Mikhail надо рамку Off, так у Startrek. Но почему я об этом не сказал сразу? Потому что есть команда Tframes, которая показывает рамку для, например, текста, если ему сделать Mask. То же для имеджей. Так же рамка вылезет и у Startrek. А у нас рамка совпадает с контуром блока и ничего не испортится, если включить/выключить Tframes.
Ухожу скоро на работу, смогу читать или отвечать, но коротко. Рабочее, знаете-ли, время. Так что вы пробуйте... |
|||
|
||||
Машиностроение, Проектирование Регистрация: 15.09.2003
Москва
Сообщений: 1,113
|
Цитата:
(Блок, контур которого можно использовать как рамка wipeout'а, придется дополнительно обводить) |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Цитата:
Ждем-с.
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Инженер по системам безопасности Регистрация: 23.11.2003
Рига
Сообщений: 1,099
|
Цитата:
>Vova Вещь конечно замечательная, однако скорей всего применяться может внутри одной канторы. Пересылать чертежи с такими блоками нежелательно... А вообще огромное спасибо! Меня всегда поражала ваша возможность из ничего сделать все. |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Fantomas> Видимо, имеются в виду макросы? Ну они не совсем уж "Ничего". В конце этого постинга будет один макрос, помогающий Хитрым блокам. То, что такие блоки скорее индивидуального пользования, чем коллективного, так, видимо, оно и есть. Но, ведь в автокаде есть команда Техт Маsк, и после ее применения разве вы не замечали, что вдруг текст пропадал? Там такой-же Wipeout вдруг вылезает наверх и все скрывает. Наш блок хотя-бы не оставляет белых пятен, потому что внутри блока wipeout как будто стабилен. В худшем случае наверх вылезет линия, на которую блок поставлен, и надо делать регенерацию.
Здесь нет отзывов от еще "непродвинутых" Не так просто понять, как все это работает, попробую объяснить популярно. Берем лист бумаги и рисуем шариком красную линию. Она легла в уровне листа. Меняем ручку на синюю и проводим линию поперек. В месте пересечения синие молекулы перекрывают красные, но все пересечение, если не смотреть в микроскоп, лежит в уровне листа бумаги.В автокаде также, но там есть возможность поменять линии местами-команда Draworder. Далее. из другой бумаги вырезаем заплатку и наклеиваем ее на одну из линий. Опять же, не учитывая толщины листа, весь пакет лежит в одном уровне-бумаги. В автокаде это Wipeout. Wipe - протирать. Оut- .. Ну это известное слово, например, в футболе когда мяч выкатился из поля, его в поле нет. И в Автокаде это означает, что нет там, под Wipeout-ом ничего (видимого). А вообще-то - все осталось, но оно скрыто. Далее рисуем по нашей заплатке картиночку нашего блока и все это блоком и делаем. В качестве элемента картиночки может быть и пунктирная линия, и она ляжет вдоль сплошной, на которрую поставлен блок и перекроет ее. Работая с чертежом, часто приходится делать регенерацию. Здесь кнопка, которая одновременно поднимает наши блоки (то есть все, что лежит в слое объекта) наверх ^C^C_Getsel;\;_draworder;p;;f Надо кликнуть на любой блок, и все. Ведь, как мы договорились, они все лежат в одном слое-SB. Программисты, подумайте, можно ли в конце работы с чертежом превратить хитрые блоки в обычные и вырезать все под ними автоматом. |
|||
|
||||
Инженер по системам безопасности Регистрация: 23.11.2003
Рига
Сообщений: 1,099
|
>Vova
Вырезать в принципе можно. Довольно просто добиться хороших результатов если границы блока прямоугольные и параллельны осям. Если же форма более сложная придеться немного помучаться. Где то на autocad.ru обсуждалась подобная тема. На досуге можно заняться. |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Цитата:
|
|||
|
||||
Архитектор Регистрация: 14.10.2003
Израиль
Сообщений: 365
|
Цитата:
По-моему такое поведение объектов в XREFе связано с очерёдностью их создания в присоединяемом файле и уникальными именами примитивов (Handle).
__________________
С уважением, Влад Гринзайд. |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Цитата:
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Машиностроение, Проектирование Регистрация: 15.09.2003
Москва
Сообщений: 1,113
|
Цитата:
Кстати таким же способом можно просто закрыть часть чего то, не делая блок И еще мелочь одна предлагаю изменить имя слоя с SB на SHB, BS, Vova_SB, например , а то больно созвучно СБ (сборочный чертеж) и путать может |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Не пора ли переейти от проб к практической обкатке блока в реальном чертеже? Вчера мы отправили мой очень большой чертеж, первый с 2-мя такими блоками (количество вставок - около 500). Только из практики станет окончательно ясно, насколько его капризность перекрывается его необычными качествами
|
|||
|
||||
Инженер по системам безопасности Регистрация: 23.11.2003
Рига
Сообщений: 1,099
|
Между прочим вот сдесь http://new.cadalyst.com/code/ за лучший Tip месяца выплачивают 1000$. Только статейку написать надо с подробными объяснениями и картинками. А Vova любит у нас писать...
Все хором! Vova!! Vova!!! [sm2506] [sm2506] [sm2506] [sm2506] А за лучший ЛИСП всего по 50$ [sm2304] |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
А вот такая проблемка... делаю файл с wipeout-ом (в блок не превращал) потом вставляю файл как блок. Он все нормально скрыл под собой... а вот потом если по нему что то нарисовать, то это уже не закрывается. хотя при перетаскивании блока эти линии скрываются, но при регенерации появляются.
Может я как то не совсем так блок сделал. Я в нем сами линии блока делал не цветные, а ByBlock. В общем вот так) Или это тот недостаток описанный Grinzaid-ом только в роли блока?
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Michail: надо менять порядок расположения: блок с wipeout - на самый верх. Или слой с ним.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Цитата:
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
MIkhail> 1. Если элементы блока имеют цвет byblock, значит они могут в принципе менять цвет, то есть команда cdorder здесь не будет работать. (C от слова Color, то есть цвет)
2. блоки надо вставлять не в конце, а по ходу работы. То есть, если надо затем поверх блока что-то нарисовать, то сразу-же применяй Draworder, поднимая блок наверх. A дальше простая регенерация все поставит на место. Опиши свой блок и куда он вставляется |
|||
|
||||
инженер-технолог (ГИП) Регистрация: 11.09.2003
Санкт-Петербург
Сообщений: 1,116
|
Цитата:
А блок я арматуру сейчас занимаюсь обвожу, чтобы вставлять в разводку трубопроводов и не trim-ить трубы потом. А ByBlock вроде нормально работает, цвет меняется и на слой переводится. Еще раз спасибо)
__________________
Большая беда науки в том, что при восхитительной теории можно получить отвратительные результаты. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Спасибо товарищу Вове за нашу счастливую старость!
Это не прикол и не издевательство, это действительно так. Попробовал, все зашибись работает (проверено на 2002 и 2002LT). Несколько дополнений: на машине обязательно должны быть установлены Express Tools либо (для лайта) wipeout object enabler (на 2005 лайте не проверял, но, скорее всего, и там такое же). И то, и другое свободно распространяется. Макрос для "поднятия" слоя у меня такой: Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Ingener Регистрация: 05.01.2005
Lithuania
Сообщений: 11
|
И так:
я недолго работаю на АКАДЕ потому тока могу улавить суть дела которыи тут обсуждается. но у меня такаои варос: нелзя ли сделать такои хитрыи блок, которого вставлиая он сам перерывал бы линию и как тут говорилось ставал бы членом тои линий. например: линия означающая + (-) полюс и в неё ставится "хитрый блок" лампочка, или другои предмет и он становится членом линийи означающей этот полюс. это толко вопрос, но мне интересно как ето сделано в АУТОКАД Електик 2005. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Ну насчет электрики я слабО, но тут суть другая (по крайней мере, я так понял): провода (трубопроводы, стены, неважно - главное, линейные объекты) располагаются на своем слое (своих слоях), а дополнительные блоки (типа ламп, розеток, выключателей, сантехарматуры и т.п.) - на своем. В принципе, используя лисп, можно получить слой линии и на нее кидать блок, только при таком варианте у этой технологии имхо мало достаточно преимуществ.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Ingener Регистрация: 05.01.2005
Lithuania
Сообщений: 11
|
И так:
да ето точно так как kpblc описал, етого приемущество в том 1. можно делать прокладку линии (поля +/-) на своём слое(неныжно красит, или как нибудь иначе олочать) 2. легко отследить какому полю принадлежит елемент , так как полеи +/- бывает несколко (например 305+/305-; 306+/306-;...) 3. счас болче непридумал так как неработал ещё так(: спасибо за ответ kpblc дымаю как нить выясню как ето делается, так как для меня ета важно(: |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Sferiukas> Я тоже часто делаю схемы. С точки зрения автокада, это много горизонтальных и вертикальных линий, и на них нанизаны разные блоки-символы. Символ может быть сплошной, например, диод в электронной схеме или прозрачный, триод, или насос в схеме водоснабжения. Как правило, символы надо врезать в линию. Но иногда надо, чтобы линия сохранялась неразрывная, чтобы затем подсчитать ее длину (но это уже не совсем схема). В качестве нестандартных решений есть два предложения. 1. создать блок, который при вставке прорезал бы под собой линию. 2. создать блок, который бы закрывал своим телом часть линии под собой. Описание первого варианта есть в книге AutoCAD Язык макрокоманд и создание кнопок, которая, похоже. у тебя есть. Описание второго в этой теме. Так что дерзай. А зачем тебе такая фантазия-чтобы блок стал частью линии? Это невозможно и не нужно, так как любую схему надо во время работы и в дальнейшем исправлять, перечерчивать и изменять.
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
>>Vova: Я так понял, что имелось в виду сделать блок на слое линии. А за идею огромное спасибо - мои сантехники уже тестируют
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
командой _draworder надо выставить порядок отображения блоков: один - наверх.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
конструктор Регистрация: 01.02.2006
М.О. г.Королёв
Сообщений: 1
|
В моей ситуации превосходно использую "Хитрый блок". Ранее пользовался блоком, созданным при помощи "region", с координатой Z точки вставки -1.Но там есть свои проблеммы.В блоке, созданном при помощи "wipeout" их нет, но возникают другие - не могу воспользоваться командой "copyclip", AutoCAD виснет.Обхожу эту проблемму командой "Insert".
|
|||
|
||||
Проблемы с копирование в буфер растров и wipeout'ов наблюдалась в 2002. В 2004 и далее (тьфу-тьфу) нет. Кроие того при создании блока wipeout поместили на отдельный слой, которй по умолчанию отключен, а включается при печати. При большом количестве wipeout'ов Автокад начинает долго шевелиться.
[ATTACH]1138798533.dwg[/ATTACH] |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Открыл черт. пост №47. Хиртости в блоке не обнаружил. Возникло подозрение, что она утонула в атлантическом океане. Посылаю свой черт. Если при перемещении блока по линии он ее не закроет, сделайте Regen. Если не поможет, взорвите его и через Properties или List посмотрите, есть-ли в нем Wipeout или Raster Image. Если нет, значит хитрость не пролазит в сеть. Хотя по Email передается. Здесь выкопировка из эл. схемы небоскребчика, который будет вторым по величине в Нью-Йорке. А если-бы был жив WTC, то третьим. На вертикальных линиях-трубах есть прямоугольники-ящики для доступа к проводам, и тэги с именем трубы. Цифра в тэге указывает на количество параллельных труб, здесь не показанных. Каждая труба диам 4 инча (10см) под завязку набита медными проводами. Две верт. трассы (частично пюоказана одна) и множество горизонтальных показывают, как много электричества потребляет такое здание.
Пока схема рисуется, сотни раз такие ящики и тэги надо перемещать по трассе, пока все не устаканится. Теперь можно догнать, во сколько раз ускоряется черчение по сравнению с обычными блоками, под которыми надо линии разрывать и сращивать, если блок передвинули. Также видно, что легко отслеживать линию. Здесь-же замена участка сплошной линии на пунктирную, кто-то спрашивал. Это есть непрограмный путь ускорения черчения; Заодно вопрос-загадка: Заметил-ли кто-нить интересненькое, не относящиеся совственно к хитрому блоку? [ATTACH]1138931485.dwg[/ATTACH] |
|||
|
||||
Регистрация: 24.10.2005
Новокузнецк
Сообщений: 1,124
|
нарисовал окно хитрым блоком для разреза... контур стены жирный, а по окну должен быть тонким... решил таким способом... нарисовал wipeout чуть шире стены, а полилинию обрамляющую его сделал типом линии dot толщиной 0 и масштабом 100... образуются только едва заметные точки по контуру wipeoutа...
p.s. может у кого есть другой вариант решения перекрытия толстого контура стены? |
|||
|
||||
>Vova Из поста № 47
Цитата:
>v_alexПоднимаешь wipeout на верх и даешь команду _wipeout _frame _off (как в растрах) и контура нет. |
||||
|
||||
Регистрация: 24.10.2005
Новокузнецк
Сообщений: 1,124
|
Цитата:
p.s. чтото непонял как сделать линию под блоком пунктирной... неполучаица... |
|||
|
||||
>v_alex
Цитата:
[ATTACH]1138952348.dwg[/ATTACH] |
||||
|
||||
Регистрация: 24.10.2005
Новокузнецк
Сообщений: 1,124
|
Цитата:
Цитата:
|
|||
|
||||
Цитата:
>Rytis Поподробнее |
||||
|
||||
Регистрация: 24.10.2005
Новокузнецк
Сообщений: 1,124
|
Цитата:
Цитата:
p.s. у архитекторов возникли вопросы с возможностью испольхования хитрых блоков в трехмерном проектировании... какие соображения? |
|||
|
||||
>Rytis №61
Все равно не понял кто кого должен закрыть и где должен быть радиус >v_alex Цитата:
|
||||
|
||||
Регистрация: 13.01.2005
Сообщений: 18
|
radius dolzen bit u detali, u kotorou odin kontur dolzen byt s radiusom. a sama detal u est block. smotret muo fail. kak zdelat stoby wipoutom narisovana liniya bila s radiusom.
ya dumay sto V_alex uze otvetil.
__________________
God bless you |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Цитата:
VVA> oткрыл слой и убедился, все работает. Товар-то лицом надо показывать, то есть самому открыть слой... |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Цитата:
|
|||
|
||||
- Регистрация: 24.07.2005
Москва
Сообщений: 1,335
|
Цитата:
Да и еще: при создании блока tfames - грани блока были ON. поумолчанию - чертеж весил 30 кб, после того когда я две раза щелкнул трумблер tfames - стал весить 102 кб. Всвязи с этими рамками вайпаута, предлагаю как уже и предлагал рассмотреть вариант с ассоциативной штриховкой, в акаде 2006 вроде бы уже ассоциативность стала нормально работать. Выкладываю пример динамического блока акада 2006, со штриховкой, если есть какие-то причины по которым нельзя использовать hatch, объяните сам пока не вижу. [ATTACH]1139754847.dwg[/ATTACH] |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
> Sleekka : там дело в том, что при программной вставке блока с wipeout (или вставке его через Toolpalettes) могут быть определенные проблемы - в частности, wipeout может вылезти поверх примитивов блока. Многоуважаемый ZZZ посказал решение - при создании таких блоков имеет значение не порядок отображения (_.drawporder) примитивов, а порядок их создания. Т.е. сначала должны быть сделаны примитивы, которые закрываются wipeout'ом, потом собственно wipeout, а затем уже примитивы, которые лежат поверх wipeout. И вот только тогда делать уже собственно блок.
Говорю сразу, что 2006 я не пользуюсь (в силу различных причин), так что динамические блоки проходят мимо...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 10.01.2005
Москва
Сообщений: 89
|
Господа, пользуюсь "хитрыми блоками" давно и давольно успешно.. А тут нужно было отправить такой чертеж в виде wmf - выявилась такая мелкая неприятность - при экспорте в wmf (как средствами самого акада так и внешними програмами) все wipeout разбиваются на кучу растровых картинок - в результате размер файла wmf вместо 100 кб возрастает до 1,5-2/5 Мб. Пробовал конвертировать в pdf, тоже не фонтан - те места где был wipeout заливается черным... Кто нибудь сталкивался с подобным?? Как быть??
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Я не спец по растрам, но на уровне идеи: а почему бы не распечатать в jpg / png и потом конвертнуть? Или это нереал полный получается?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 24.10.2005
Новокузнецк
Сообщений: 1,124
|
Цитата:
|
|||
|
||||
Регистрация: 10.01.2005
Москва
Сообщений: 89
|
Речь идет о сотнях или даже ТЫСЯЧАХ растров.... Я не считал, но акад при экспорте вылетает через раз на третий, а один раз при конверации в папке где был создан wmf файл остались 1,5 тысячи файлов bmp - видимо промежуточный результат экспорта wipeout'ов. Решением, ИМХО, в данном случае является замена wipeout на штриховку белого цвета.
И еще одна идея, в порядке бреда - порядок объектам задается не по слою, а по объектам. Т.е. программно задается конечное количество перекрытий, например 10 (на самом деле используется обычно не более 4-5). Порядок объекта задается пользователем и записывется в его расширенные данные (например). Тогда все примитивы чертежа будут на уровне 0 то что выше +1, +2 и так далее, то что ниже - -1,-2 и т.д. Затем если порядок по каким либо причинам сбился, нажимается кнопка / срабатывает реактор и порядок возвращается на заранее определенный. Если энтузиастов не найдется, попробую написать самостоятельно... |
|||
|
||||
Инженер-механик Регистрация: 01.06.2007
Южно-Сахалинск
Сообщений: 4
|
2 Jurasic
"...Речь идет о сотнях или даже ТЫСЯЧАХ растров.... Я не считал, но акад при экспорте вылетает через раз на третий, а один раз при конверации в папке где был создан wmf файл остались 1,5 тысячи файлов bmp — видимо промежуточный результат экспорта wipeout'ов. Решением, ИМХО, в данном случае является замена wipeout на штриховку белого цвета...""" Не подходит для меня этот вариант. Хоть и заманчив. Для меня самым оптимальным вариантом был бы просто разрыв на заданное расстояние линии проведенной под произвольным углом. Стандартная кнопка — Break. http://www.autocad.ru/cgi-bin/f1/board.cgi?t=35993QI З.Ы. Я лиспом неделю назад стал только заниматься, и то только на работе в свободные минутки. Люди! Человеки! Маги и волшебники от клавиатуры и мыши! Помогите с кодом. С помошью стандартных акадовских функций. Без vla- функций. Я ничё в них не понимаю.
__________________
Критикуйте - может быть поможет. |
|||
|
||||
проектировщик-электрик Регистрация: 20.12.2007
Челябинск
Сообщений: 474
|
Читал и разбирался с этой темой в несколько приемов. Причем читал сначала сначала до конца, потом наоборот, потом вообще выборочно.
Сделал "хитрый блок" с wipeout-ом. До этого я догадывался еще не читая этой темы. Но отсюда пытаюсь вынести для себя полезную кнопку - чтобы все эти блоки поднять "над" чертежом. Но пока не получается Хочу сделать блок, в котором wipeout лежит на отдельном слое "0wipeout" (по совету VVA), чтобы можно было его отключать при работе. То есть, надо "поднять" наверх все объекты этого слоя. 1й макрос от Vova: Код:
2й макрос от Кулик Алексей aka kpblc: Код:
3й вариант: Код:
НО! Команда не работает, если wipeout находится на отдельном слое! Т.к. при замораживании всех слоев на экране ничего не остается. Не знаю пока как решить эту проблему. Посоветуйте, пожалуйста. Выкладываю блок, на котором эксперементировал. |
|||
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Посмотри тему Окна и проемы в стенах.
Там решение решение (багодаря Kpblc'у) уже нашлось. |
|||
|
||||
проектировщик-электрик Регистрация: 20.12.2007
Челябинск
Сообщений: 474
|
Нашел одну проблему в этих "хитрых" блоках. Например, блок прямоугольной формы, wipeout тоже прямоугольной формы по размеру блока. (см. блок из поста 75). И когда этот блок копируешь, то почему-то контуры линий не видны. То есть как бы слегка мерцают, но чем-то перекрываются. Когда не двигаешь, то все нормально. Есть выход, делать wipeout размером на 0.05 маньше, чем контур блока, но это извращение по-моему, да тем более конфигурации могут быть разные и это очень неудобное решение. Ну либо второе решение - отключать слой wipeout'ов и работать. Но тоже тогда сразу не видишь всей картины...
|
|||
|
||||
Volodich, Обычно _regenall помогает
Еще можно сделать такой пирожок: 1. Контур блока (полилиния) 2. Wipeout 3. Контур блока (полилиния) Тогда как бы описание блока не "перевернулось", wipeout будет всегда посередине.
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 09.10.2008
Сообщений: 3
|
Цитата:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
KOVBAN, во-первых, пиши по-русски (translit.ru функционирует нормально). Во-вторых, что там надо увидеть?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Не, понятно, что я сегодня слабо рабочий товарищ. Понятно, что сильно спать хочется. Я-то думал, что в описании блока делают многосточники...
Подход с использованием маскирования многострочного текста обладает слишком большим минусом - "перекрыть" можно только прямоугольную область. И никаких гвоздей.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 09.10.2008
Сообщений: 3
|
Цитата:
|
|||
|
||||
Регистрация: 03.12.2008
Сообщений: 8
|
Добрый вечер коллеги, помогите, я неопытный пользователь акада. Есть динблок дверного проема (вид в плане), при вставке блока в чертеж плана помещения и размещении его на чертеже стены необходимо чтобы линии стены под блоком становились невидимыми. Хочется исключить команду обрезки и чтобы при перемещении проема лишний раз не редактировать линии стены. Скажите пожалуйста возможно ли это сделать как нибудь?
|
|||
|
||||
проектировщик-электрик Регистрация: 20.12.2007
Челябинск
Сообщений: 474
|
amz, Внимательно перечитай эту тему. Все станет ясно. Сделать это можно, причем не сложно. А если покопаешься по форуму, то найдешь даже примеры таких блоков - дверных проемов. Попробуй поговорить с Ddjo, она по-моему такое делала.
__________________
Неважно, что что-то идет неправильно. Возможно, это хорошо выглядит... |
|||
|
||||
проектировщик-электрик Регистрация: 20.12.2007
Челябинск
Сообщений: 474
|
Цитата:
__________________
Неважно, что что-то идет неправильно. Возможно, это хорошо выглядит... |
|||
|
||||
Инженер Регистрация: 05.05.2008
Москва
Сообщений: 1,074
|
Нет нельзя, идеология программ разная. Если есть АДТ, то дин. блока не надо, Там уже есть объекты Сетка колонн и Дверь.
__________________
Рапик отдай папе кость, Ты ведь не собака. /анекдот АРМЯНСКОГО РАДИО/ Последний раз редактировалось vasilyis, 05.12.2008 в 07:47. |
|||
|
||||
Регистрация: 03.12.2008
Сообщений: 8
|
Всем спасибо за помощь, посмотрел тему окна и проемы, но тот метод меня не очень устраивает, мне кажется он только для личного пользования, у других смежников такого лиспа нет. Вобщем нужен инструмент который задавал бы какую то невидимую область до границ которой примитивы обрезались бы или растягивались. Но это так, фантазия
|
|||
|
||||
Регистрация: 03.12.2008
Сообщений: 8
|
В общем друзья благодаря Вам сделал что надо было, создал два динблока дверного проема, одностворчатого и двустворчатого. Сделал по принципу пирога, линии - wipeout - линии, чтоб со всех сторон видно было. Все работает. Для удобства сделал панельку с кнопками, 1. wipeout 2. wipeout - front (лисп из темы окна и проемы).
Кстати может кто подскажет как сделать кнопку которая бы включала видимость контура и отключала, было бы очень удобно |
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,826
|
Цитата:
Цитата:
Код:
__________________
Делай хорошо, плохо само получится. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
В очередной раз указываю на кнопку [Правка]
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Покупаем (именно покупаем, а не скачиваем) журнал Конструкторское бюро #11-12 за 2008 и читаем здесь статью под названием Блок, который сам режет линию под собой. Автор-ваш покорный слуга. Почему покупаем? А чтобы он не завял, продолжал выпускаться и содержал в себе материалы по автокаду.
|
|||
|
||||
Думал начать новую тему, но так как блок хитрый, то напишу тут.
В редакторе блоков примитивы составляющие блок пропали. Блок также не реагирует на операцию растягивания. Кто с таким сталкивался ? Акад 2009, SP стоят.
__________________
Robot и Хобот |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Цитата:
Подпишитесь на журнал, и будем делать его автокадовскую рубрику вместе |
|||
|
||||
Это понятно, это самый простой способ . Просто во всем чертеже менять не весело - их много и разной длины.
И кстати blockreplace их не видит....
__________________
Robot и Хобот Последний раз редактировалось Romanich, 09.12.2008 в 23:57. |
||||
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Цитата:
Шайтан
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
|
||||
Инженер Регистрация: 11.12.2007
Москва
Сообщений: 295
|
Уф... Прочитал всю тему. Может кнопка и решит мою проблему но не уверен.
Ситуация такая. В динамических блоках наткнулся на интересно сделанный динамический прямоугольных воздуховодов (сейчас помогаю вентеляционьщикам) Блок был "Хитрый". Побился побился и разобрался как и что к чему. Но есть одна заковыка которую преодолеть не сумел при наложении блоков между собой должна быть строгая иерархия объекта над объектом. Хотелось бы что бы "маскировка" учитывалась только внутри блока, а то получаются прямоугольные пятна без планировок. (Я то смогу настроить эти объекты по порядку, а вот те кто ими ользоваться будут не смогут да и не захотят) п.с. Блоки уже сделал без "маскировки". Но вопрос интересует.
__________________
Live as though tomorrow you will die, Study as though you will live eternally. |
|||
|
||||
Цитата:
Сделал такой же блок новый. Вставил в файл с переопределением. Твой блок не изменился...
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
|
||||
проектировщик-электрик Регистрация: 20.12.2007
Челябинск
Сообщений: 474
|
Прочитал статью про "хитрый блок" http://dwg.ru/art/14
Попытался разобраться. Сделал, но возникла проблема - не работает как надо! При расчленении возникают сложности. Попробовал без сложного макроса - просто вставить блок и написать в командной строке _explode; _last;; (; - это я энтер нажимал). Так вот, блок вроде бы выделяется командой _last, но почему-то не расчленяется. Причем с другими блоками все нормально - вставляются и расчленяются как надо. Прикладываю файл блока.
__________________
Неважно, что что-то идет неправильно. Возможно, это хорошо выглядит... |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
А при описании блока была установлена галочка "Explodeable"?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
у меня появилась проблема при распечатке хитрых блоков.
создал блок, в модели и на листе все выглядит прекрасно, вроде вот оно счастье, но на предварительном просмотре и печати эти блоки отказываются работать как надо. (хотя на листе все выглядит отлично). Проявляются все линии которые скрывает хитрый блок. |
||||
|
||||
Инженер Регистрация: 11.12.2007
Москва
Сообщений: 295
|
Файл или кусок файла покажешь?
А до этого печатались они нормально? А если скопировать в другой файл? (новый чисты акад файл) Есть вариант поиграть с порядком прорисовки "физичиски". Вырезать всё кроме "хитрых" блоков а потом вставить в чертёж, "хитрые" блоки станут или выше или ниже по просрисовки. (говорят это помогает с ними)
__________________
Live as though tomorrow you will die, Study as though you will live eternally. |
|||
|
||||
Сообщений: n/a
|
"Физически" стоит играть с примитивами и масками (wipeout'ами) в самом блоке, так как при копировании в другой файл элементы блока "попадают" в него в порядке их описания (т.е. фактического появления) в блоке. Внутри файла и вне Редактора блоков вполне должно хватить изменения Порядка прорисовки
Последний раз редактировалось AlphaGeo, 28.05.2009 в 21:38. |
|||
|
||||
|
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Напоминаю, http://dwg.ru/art/14
|
|||
|
||||
архитектура Регистрация: 05.06.2009
СПБ
Сообщений: 67
|
Коллеги! а не подскажете ли, как в 2009 акаде убрать видимый контур frame xclip-нутого блока? появилась чудесная возожность за ручки менять конфигурацию frame-a и инвертировать область видимости, но как убрать границы? modify/object/image/frame - не помогает, нет реакации на 0/1/2. при любом значении - граница видна...
вы тут такие чудеса описываете, ПОДСКАЖИТЕ ! |
|||
|
||||
архитектура Регистрация: 05.06.2009
СПБ
Сообщений: 67
|
ура!
XCLIPFRAME (0/1) - получилось! извините за беспокойство )) |
|||
|
||||
Одним заказчикам достаточно видимости разрывов линий под динамическими блоками, а другим реальные разрывы подавай. Иногда это менеджеры выясняют слишком поздно...
А разрывать под каждым блоком линии долго, даже с помощью макросов. Можно ли придумать прогу, которая бы пробежалась по всем (-указанным) дин. блокам, и из площадей их wipeout'ов активной видимости вырезала все (-указанное)? Только для активной видимости, т.к. в ряде дин. блоков заложено несколько wipeout'ов для разных вариантов видимости. |
||||
|
||||
|
||||
|
||||
Но блок же при этом уже не блок - взрывается? Да и при вставке еще не знаешь, останется ли этот блок точно на этом месте
Моя идея здесь в максимуме гибкости и скорости: наставил блоков с масками. Если заказчика (да и себя) маски устраивают, то хорошо. А если нужно фактически разрезать линии под дин. блоками, то программкой пройтись разом по всем. Кстати, вдруг пригодится кому-то из чайников вроде меня - мой супер-гипер-мега макрос для ручного вырезания линий из площадей дин. блоков: [FONT=Arial]*^C^C_trim;\;\;[/FONT] Указал границу в блоке-указал линию в его площади. И так до Esc. Плохо только, что нельзя указать в площади сразу все вырезаемые линии. Только по одной. Но число действий в среднем все равно в два раза меньше, чем прямо вызывать Трим. Чем могу... Последний раз редактировалось АлексЮстасу, 04.08.2009 в 15:11. |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
QUOTE=АлексЮстасу;430957]Но блок же при этом уже не блок - взрывается? Да и при вставке еще не знаешь, останется ли этот блок точно на этом месте
[/quote] 1. Остается блоком 2. Поэтому и родился "хитрый" блок 3. Почему Заказчик выставил такое странное требование-иметь разрывы под блоком? Он переделывает ваши файлы? Если так, хитрый блок без умения с ним работать не подходит. Научите, дайте им инструменты, впрочем дайте им ссылку на эту тему. |
|||
|
||||
Цитата:
3. Заказчик ставит свои условия - какие хочет. И переделывать приходится не ему, а мне. Исполнители о желаниях заказчиков узнают как всегда "вовремя". Если уже блоки расставлены с масками, то под ними быстро повырезать все линии без программки шибко непросто... Одно ведь другому не мешает: и блоком сразу можно резать, и программкой потом - почему нет? Больше возможностей - больше гибкости. Программки хороши тем, что ими быстрее и надежнее, чем вручную. |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Интересен мотив, которым руководствуется заказчик.
Если разрабатывать программу, которая-бы вырезала под блоками линию, то, поскольку блоки разные, все равно придется тыкать курсором в каждый блок индивидуально. Программа, очевидно, сможет найти самую внешнюю границу для режущей кромки, но ведь бывает, блок такой, что вырезать надо не внешними границами, или блок касается соседней линии, которую не следует вырезать. То есть программа будет обслуживать частные случаи. Может, программисты и заинтересуются. Но рисовать, скажем. схему будет неудобно. Сначала все блоки сажаются поверх линий, и это продолжается несколько дней, в течение которых чертеж выглядет малочитабельно, а потом, когда все устаканились, одним махом все вырезать. Правда, если блоки хитрые....Кстати, а сколько таких блоков на твоих чертежах? |
|||
|
||||
Цитата:
Поскольку все блоки разные, то нужен однозначный критерий - границы wipeout'ов активного состояния видимости. Т.е., используя это правило, в каждый блок тыкать не нужно - прога находит в дин. блоках wipeout'ы и из их границ вырезает все (указанное). Цитата:
Резать без сомнения всегда нужно то, что должны в блоке закрывать wipeout'ы. И резать нужно, конечно же не вообще все линии, а, например, только находящиеся в видимом состоянии. По-моему, вполне та же степень "частности", что и у большинства программ вообще Цитата:
А вот разом все ненужное вырезать (если только необходимо), быстро, без пропусков - очень технологично, качественно и производительно. Сотни файлов, в каждом до 2-2.5 тысяч дин.блоков с масками. И сроки адские. Согласись - не подарок вручную-то... |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
2.5 тысячь блоков.... О чем чертеж? Что за проект, в котором сотни фйлов и столько грамотных на применение хитрых блоков исполнителей? И все это для одного заказчика?
Напоминаю, хитрые блоки иногда поглощают границу своих масок, особенно если их копировать из файла в файл. Приходится чиниить. Это может сделать не каждая тетка. |
|||
|
||||
Цитата:
Не сильно сложнее транзисторов-резисторов из статьи Просто я постарался заменить все повторяющиеся элементы на дин. блоки. Кстати, сильно потерял в скорости черчения, когда блоков много в одном файле. И постарался во всех дин. блоках, которые исключают другие элементы, предусмотреть маски. Но, например, один из проектов начался уже давно, когда дин. блоков я еще не сделал, и в нем везде под соответствующими объектами линии вырезались. И сдавать его хочешь-не хочешь придется с разрезанными линиями. Но, независимо от конкретного случая, думаю, что вырезать оптом всегда технологичнее, лучше, чем поштучно. Да и иметь в запасе возможность не вырезать до последнего момента - пока все замены, перемещения, исправления не сделаны. Да и вдруг заказчик одумается Последний раз редактировалось АлексЮстасу, 05.08.2009 в 17:54. |
||||
|
||||
Цитата:
Я бы сам написал, если бы умел Но, по-моему, идея нормальная - вырезать в самый последний момент оптом, когда все уже вставлено-исправлено-проверено. |
||||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
АлексЮстасу, ты так и не ответил, что за чертеж такой, который содержит Две с По-ло-виной ТЫ-СЯ-ЧИ блоков. И все эти блоки должны быть врезаны в линии. И в проекте таких чертежей сотни. Назови конкретно, что это, если не секрет. Все-таки, я автор хитрых блоков, и польщен что эта идея работает даже в таких сверхчертежах. В конце концов могу претендовать на поощрения от вашего руководства. Ведь без таких блоков работа двигалась-бы куда медленней
|
|||
|
||||
Цитата:
Увы, я не уверен, что мои блоки по-настоящему хитрые. Мои динамические блоки с масками, и актуален вопрос разрезания линий под ними. Поэтому я влез в эту ветку. Я могу поддерживать здесь пока только эти темы. Если этого мало, то извинюсь искренне, что отвлекал внимание... От руководства же пока одни "бонусы" за торможение работы Автокада и за затруднения вырезания линий под блоками - из площадей замкнутых полилиний вырезать легче... |
||||
|
||||
Цитата:
Вчера ревизовал всевозможные тримы в Express, Tool Pack, MicroStation, полазил по форуму, на Cadusere... В Express, Tool Pack, MicroStation доля ручного труда (укажи каждую границу, укажи каждую линию, которую нужно резать) все равно высока... На форуме есть оч. похожие ветки с выбором, статистикой и даже вырезанием элементов, попадающих в указанные границы... Но все поштучное. Хотя, умеючи лисповать, наверное, можно было бы собрать из фрагментов нужное - похожие задачи фактически уже решены. Последний раз редактировалось АлексЮстасу, 06.08.2009 в 15:59. |
||||
|
||||
Инженер Регистрация: 11.12.2007
Москва
Сообщений: 295
|
С лиспом я не дружу, читал про него и коды пытался смотреть, так что не знаю его. Но понял что самая простая задача быстро разрастается в огромную, со всякими проверками и уточнениями...
Быть может сработает такая схема... Зайти в ваши блоки и по контору "Маскировки" Полилинию (в новом слое) задать или просто заменить Максировку Полилинией. Наложив все дин связи на неё. (видов то блоков не должно быть безумное колличество) ЗАтем вставить получившийся блок с переопределением. (Если будем всё резать порядки прорисовки уже не важны). КвикСелектов выделяем все блоки - взрываем. Находим все полилинии в новом слое. А далее просим сделать лисп которые Принимает выбраные полиллинии за контур обрезки и внутриняю площадь за вырезаемые фрагменты. может быть такое решение возможно? А всё програмно никто здесь делать не возьмётся. (Вон калькулятор что бы цифры отчищал от форматирования - 5 листов кода и 5 листов обсуждения програмеров)
__________________
Live as though tomorrow you will die, Study as though you will live eternally. |
|||
|
||||
Цитата:
Цитата:
Такой лисп нужен по-любому, ведь многие вещи, под которыми нужно что-то вырезать, не всегда можно заменить дин.блоками, и их рисуют обычными полилиниями-линиями. |
||||
|
||||
Инженер Регистрация: 11.12.2007
Москва
Сообщений: 295
|
__________________
Live as though tomorrow you will die, Study as though you will live eternally. |
|||
|
||||
Регистрация: 26.06.2007
Воронеж
Сообщений: 151
|
Хороший метод создания и вставки блоков (с wipeout), кроме одного недостатка: границы wipeout совпадают с границами видимых элементов блока, и при вставке, когда блок висит на курсоре, его границ не видно.
К примеру, так выглядит блок на курсоре: А так - после вставки: |
|||
|
||||
Возьми wipeout в "пирожок" из 2-х полилиний. Тогда как бы он не перевернулся, какая-то из полилиний будет сверху
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 28.12.2010 в 10:44. Причина: орфография |
||||
|
||||
геология, геодезия Регистрация: 29.05.2009
Хабаровск
Сообщений: 184
|
В Геониксе есть такой инструмент - экранирование объектов. Вешч просто суперовая! Экранирует атрибуты в блоках и делает это гибко и быстро (можно задавать значение перекрытия и выбирать экранирование объектов как по одному, так и всех подобных по слою. Точки поверхности экранируются все одним нажатием! Так же можно включать-выключать контуры в один клик. Это лучше чем сразу вшивать маскировку в блок так как никогда не угадаешь длину текста и делаешь маскировку "навырост". Тут же атрибуты маскируются "по факту". Минус в том, что при разноске атрибутов приходится маскировку переопределять, но за счет легкости выполнения процедуры неудобства особо не вызывает. Есть идея сделать подобный инструмент более доступным для широких масс. Возможно скоро так оно и будет...
И еще одно наблюдение: если в атрибутику вставляешь поля, то атрибут автоматически экранируется без всяких wipeout! Минус в том что большие массивы блоков с полями сильно грузят Акад вплоть до фатала. |
|||
|
||||
Регистрация: 24.11.2010
Сообщений: 2
|
День добрый!
Думаю я по теме, у меня файл.dwg, блокированный каким то образом. можно ли разблокировать? Помогите. файл выложу на намбу. http://download.files.namba.kz/files/1549287 пароль: cps |
|||
|
||||
Цитата:
Т.к. тип элемента minsert block, то посмотрите в поиске именно его. |
||||
|
||||
Конструктор Регистрация: 03.01.2011
Бельцы_Молдавия
Сообщений: 884
|
Доброго времени суток фуромчане. Знал об существовании и действии хитрого блока , но не применял в практике.От нехватки работы приходиться делать архитектурные чертежи.Вот тут и пытаюсь применить "хитрый" блок ,сделала динамический блок двери , в модели и на листе закрывает , а на предосмотре печати НЕТ!!!! Сделал прямоугольник из полилинии ,он закрыл и в печати закрыл ,может в динамических блоках маскировка не работает??? Принтер Коника Минолта Бизхаб 162.
Последний раз редактировалось Vintorez, 23.11.2011 в 21:38. Причина: Поправил |
|||
|
||||
HVAC (ОВК) Регистрация: 08.10.2005
Ukraine, L'viv
Сообщений: 822
|
Цитата:
Если в дальнейшем будет видна рамка "Wipeout", отключите ее Command: _wipeout Specify first point or [Frames/Polyline] <Polyline>: frame Enter mode [ON/OFF] <ON>: off Regenerating model.
__________________
Nothing will stop an idea whose time has come |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Сделать двери маскируя стены не очень хорошая затея. Во всяком случае после того как чертеж быдет закончен я бы оттримал все проемы, ибо маскировка это капризная штука. Она может вылезти наверх и закроет нарисованное. Хитрые блоки лучше всего подходят для тех случаев, когда в процессе работы надо выделить длинную линию чтобы ее отследить. Например, в схемах. Здесь-же никто не будет отслеживать стену ибо чертеж не густой и и так все видно. Тем, кто работает с хитрыми блоками я рекомендую иметь кнопочки, выводящие содержимое слоя с хитрыми блоками наверх одним click У двери должен быть дверной косяк с обеих сторон, а стена в месте расположения косяка должна иметь торцовую линию.
|
|||
|
||||
Регистрация: 01.02.2012
Сообщений: 39
|
Пробежался бегло по ветке но похожего не нашел-чтобы блок резал сам себя. маскировки, белые заливки и тексты с сокрытием фона не помогают, один блок все равно поверх другого.игра с лиспом и слоями вариант не очень, хотелось бы, чтоб любой пользователь мог без труда справится. в приложении чепь из порталов, в середине порталы должны перекрывать свое основание (квадрат)Портал 220 кВ.dwg
|
|||
|
||||
автоматизация и организация черчения Регистрация: 17.11.2009
Sterlitamak
Сообщений: 135
|
Доброго времени суток! Решил написать про свой вопрос в этой теме, так как здесь поднимались проблемы связанные с маскировкой.
Проблема у меня такова: создаю дин.блок - лин. параметр - массив. Загоняю в массив маскировку. Но маскировка не хочет должным образом маскировать то, что она закрывает. Прошу корифеев помочь, может кто подскажет пути выхода из ситуации.
__________________
слесарь САПР |
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,826
|
Нужно соблюдать последовательность создания примитивов. Если ты хочешь чтобы маскировка была под линией, то сначала нужно создать маскировку, а потом эту линию, а не наоборот. Можно и draworder использовать, но не советую, он слетает при переносе блока в другой файл.
__________________
Делай хорошо, плохо само получится. |
|||
|
||||
автоматизация и организация черчения Регистрация: 17.11.2009
Sterlitamak
Сообщений: 135
|
Krieger,
к сожалению мне необходимо закрыть маскировкой линию, вроде бы она должна скрыть часть линии, но на деле этого не происходит, следы линии все равно видны при печати (лист ОД). Хочу обкатать этот метод на простом блоке, чтобы применить его уже в более сложных.
__________________
слесарь САПР |
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,826
|
Ну значит я не так понял. У тебя получается, что ширина маскировки меньше веса линии. Сделай маскировку шире. Тут сложность в том, что минимально необходимая ширина маскировки будет зависеть от масштаба видового экрана.
__________________
Делай хорошо, плохо само получится. |
|||
|
||||
автоматизация и организация черчения Регистрация: 17.11.2009
Sterlitamak
Сообщений: 135
|
Это я учел, ширина маскировки 10 мм, толщина линии около 0,25 мм.
При увеличении толщины маскировки положительных резуьтатов нет. Не скрывает маскировка в динблоке то, что должна скрывать. Делал блок аннотативным, тоже самое. Все сервиспаки стоят. Просто одна из недоделок Автокада. Другого объяснения я не вижу.
__________________
слесарь САПР |
|||
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,826
|
Ширина маскировки у тебя не 10. У первого сегмента ширина 8,5909 у второго 3,6296.
Умножим на масштаб видового экрана, который у тебя стоит 0,0024655: Для первого сегмента - 8,5909*0,024655=0,2118 < 0.25 Для второго сегмента - 3,6296*0,024655=0,0895 < 0.25 Вес линий у тебя 0.25, что больше твоей маскировки, вот линии и вылазят. Если мы 0.25 поделим на самый узкий твой сегмент в 3,63, то получим масштаб видового экрана при котором твоих линий не будет видно, т.е. 0,07. Может там мерцать и будут, но при приближении или печати их не будет.
__________________
Делай хорошо, плохо само получится. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
У AutoCAD нет "стандартных деталей". Или ты работаешь не в чистом AutoCAD
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||