|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Маскировка
Регистрация: 29.07.2006
Сообщений: 38
|
||
Просмотров: 55949
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Поскольку вопрос в разделе "AutoCAD", то ответом, наверное, будет такое: никак. Назначить показ/скрытие можно, а определить - только визуально
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер-электрик Регистрация: 16.01.2007
Москва
Сообщений: 19
|
А может кто подсказать. Есть динамический блок с маскировкой. Блок этот вставлен в инструментальную палитру. Если этот блок вытащить в какой-нибудь рисунок с инструментальной палитры, то маскировка всегда выходит на передний план( соответственно скрывает весь блок). Исправляю только редактированием блока, в редакторе задаю порядок следования. Причем если этот же блок вставить в рисунок через копирование, то все нормально... как бы избавиться от этого?
|
|||
![]() |
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837
|
Переделай сам блок в том файле где он собсно и храниться. Причем переделать надо не при помощи draworder. Необходимо соблюдать последовательность построения. Wipeout должен быть нарисован самым первым, чтоб он оказался внизу. Т.е. можно выделить все в блоке кроме Wipeout, скопировать (не переместить) в строну, удалить старое и поставить на место копию. Копия будет создана позже, а значит будет сверху. Такая фишка будет сохранятся при вставке блока.
|
|||
![]() |
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
|
|||
![]() |
|
||||
Интересно, а так можно? Если считать, что до первого <Откл>, - она всегда <Вкл>.
Команда: МАСКИРОВКА Первая точка или [Контуры/Полилиния] <Полилиния>: К Выберите режим [Вкл/Откл] <Откл>:
__________________
*...И Случай, бог изобретатель. * Последний раз редактировалось skif58, 16.01.2008 в 06:04. |
||||
![]() |
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Если кому интересно, макрос на кнопку получился такой:
Цитата:
|
|||
![]() |
|
||||
Я заметил такой момент. В какой бы последовательности не создавалось бы WIPEOUT в блоке - почему-то при изменении атрибута он всеравно помещается наверх закрывая тем самым весь блок. Ну и как с этим бороться?
__________________
Поезд который устал от ржавого здравомыслия рельсов... |
||||
![]() |
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Попутно возникла такая идея. Хорошо бы, чтобы состояние wipeout'ов отображалось в строке режимов. Здесь уже макросом не обойтись:
Код:
Код:
|
|||
![]() |
|
||||
Уважаемые Гуру, вы как-то не заметили мой вопрос выше и я теперь весь в сомнениях, - может быть я раньше много чего неправильно понимал и делал...
![]() Я только о том, что в первых двух постах этой темы. Дальше для меня темный лес..., - от того сомнений еще больше... Мне часто попадают чертежи, где что-то закрыто маскировкой, - горизонтали в вырезках...и.т.п. Чтобы понять есть ли маскировка, - я так и делал: - Маскировка - (_WIPEOUT), правой из контекста - Контуры - и смотрел в комстроке или ДИНе, - что там пишет... Если стоит <Откл>: значит есть (или была) маскировка и ее контуры отключены. Вопрос: всегда ли это действительно ТАК? В комстроке всегда отображается текущее состояние? Поскольку этой методой пользуюсь и в др.случаях... с той же THICKNESS и.т.п... ![]() Проверил на _WIPEOUT строчкой от Krieger: (cdr (assoc 70 (dictsearch (namedobjdict) "ACAD_WIPEOUT_VARS"))) , - вроде все совпадает. ??? ![]() Ну а визуально, чтобы быстро увидеть что замаскировано, - всегда жму любой др. визуальный стиль или 3DOrbit. Чтобы выделить, увидеть, двигать или удалять контуры маскировки, - Быстрый выбор Растра и правой...
__________________
*...И Случай, бог изобретатель. * |
||||
![]() |
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837
|
skif58,
Я думал, что это ты ответил на первый пост. А так думаю что и так можно определять, вроде бы там всегда текущее значение записывается. Т.е. Крыс во втором постинге был не прав. Код из поста #13 включает и выключает границы wipeout при этом записывает результат в статусную строку. |
|||
![]() |
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
К посту 13 от Krieger.
Ещё раз спасибо. У меня просто с какой-то тормоз с MODEMACRO случился в мозгах. Был у меня такой стереотип, что определение MODEMACRO должно быть в acaddoc.lsp (или запускаться из acaddoc.lsp) и что в значении переменной должны присутствовать выражения DIESEL для динамического отслеживания и вывода значения в строку режимов. Но в принципе ничто не мешает переопределять значение в процессе работы (с оставлением в нём DIESEL-выражений). Вообще-то в acaddoc.lsp у меня было прописано просто: Код:
Код:
Только убрал в ней определение локальной переменной temp и сделал wipeout_frame_key и pr локальными. Ну и такое же значение MODEMACRO как определено в acaddoc.lsp. Только вот сомневаюсь так ли нужно (vl-cmdf "_regen"). Это я так понял введено из-за того, что если находишься на листе, то при изменении видимости границ маскировки не во всех ВЭ это отображается корректно. Спасает как раз _.regen или лучше _.regenall. Так то всё правильно, но тормозит. В общем я эту строку убрал. PS Ещё понравилось вкл/выкл маскировки через (entmod). Класс! |
|||
![]() |
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837
|
Цитата:
При (vl-cmdf "_.WIPEOUT" "_Frames" "_on"), кстати, регенерация тоже выполняется. А через (entmod) не выполняется, т.е. если ты смотришь на границу wipeout и выключаешь её через entmod, то она никуда не исчезает, пока не сделаешь регенерацию. Так что нужна она или нет решать пользователю. Последний раз редактировалось Krieger, 18.01.2008 в 12:21. |
|||
![]() |
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 30.05.2006
Сообщений: 91
![]() |
Странная вещь происходит при печати динамического блока с вложенной туда маскировкой, при изменении изображения (например поворот тела с маскировкой) все происходит как надо, отправляешь на печать то что скрыто не печатает, но!!! стоит у нас плоттер Xerox 510dp так вот он не хочет печатать как надо, а скрывает при распечатке тока то место куда первоначально была вставлена маскировка, до поворота к примеру, как такое вылечить?
|
|||
![]() |
|
||||
Сообщений: n/a
|
Цитата:
На счет "болезни" ничего не подскажу... Может, стоит драйвер принтера и автокадовский файл принтера *.pc3 переустановить. |
|||
|
||||
Регистрация: 30.05.2006
Сообщений: 91
![]() |
Цитата:
|
|||
![]() |
|
||||
Регистрация: 30.05.2006
Сообщений: 91
![]() |
Цитата:
(тем более есть некие глюки с Vist ой, так как добиться от нее прав на учетку в качестве админа не удается, поэтому она не сохраняет толком рс файлы, а если запустить через правый клик мыши акад как админ, то тогда почемуто не пускает на сервер... косяки вообщем...) блин, из Autocad Design Review вообще на печать не хочет отправлять... во засада то... |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Ну, pc3-файлы никто не заставляет хранить там, где предлагается по умолчанию
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 12.03.2013
Сообщений: 611
|
У меня на чертеже два объекта с маскировкой. Мне бы хотелось чтоб на одном объекте контур маскировки был включен, а на другом объекте выключен. Как это можно сделать, ведь контур маскировки зависит от переменной и режим вкл/откл контура применяется для всего чертежа, т.е. контуры всех маскировок на чертеже либо включены либо отключены.
|
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Согласен, что было бы логичнее отображение контура сделать свойством каждого конкретного wipeout'а.
Хмурый, если слой с маскировкой заморозить, она вообще пропадает, переставая скрывать под собой объекты. Какой тогда в ней смысл? Добавлено: другой вариант, если ее поместить на непечатаемый слой, тогда она будет видна на чертеже, а на бумаге - нет. Последний раз редактировалось skkkk, 27.03.2013 в 13:34. |
|||
![]() |
|
||||
Регистрация: 17.10.2009
Сообщений: 1,108
|
Цитата:
а) можно контур выкинуть на другой слой б) можно сдублировать маскировку и разнести по слоям. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Цитата:
Не понял, что имеется в виду. |
|||
![]() |
|
||||
Регистрация: 17.10.2009
Сообщений: 1,108
|
|
|||
![]() |
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 824
|
Обнаружил неприятность. Перестал работать лисп предложенный Кригером в посте 13 http://forum.dwg.ru/showpost.php?p=200705&postcount=13
В Акаде 2013 не работает. В 2011 работал нормально.
__________________
AutoCad 2011 -> AutoCad 2013 -> AutoCad 2016 -> AutoCad 2011 -> AutoCad 2022 |
|||
![]() |
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 824
|
Krieger, Да в том то и дело что никаких ошибок не выдает.
В командной строки одинаково что в 2011 что в 2013 Команда: _wipeout_on-off _regen Выполняется регенерация модели. Только в 2011 маскировка гасится/отображается, а в 2013 не реагирует.
__________________
AutoCad 2011 -> AutoCad 2013 -> AutoCad 2016 -> AutoCad 2011 -> AutoCad 2022 |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
marina_kish, а файл показать?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 17.10.2009
Сообщений: 1,108
|
|
|||
![]() |
|
||||
добрый человек Регистрация: 23.02.2004
Глушь
Сообщений: 971
|
У Вас контур маскировки включен.
З.Ы. Лично мне очень нравится включать/выключать контур маскировки с помощью кнопочки Toogle Frames c панели ET: Standart
__________________
Правильно сформулированный вопрос содержит 90% ответа. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
whipeoutframe ?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 04.03.2011
Сообщений: 33
|
Цитата:
Вот фотка с листа напечатаного, плохо, но там видно,что часть дверей нормально, а часть- с тонкой линией. wipeoutframe - значение 0
__________________
ну очень молодой специалист Последний раз редактировалось marina_kish, 08.10.2013 в 09:43. |
|||
![]() |
|
||||
Регистрация: 25.03.2008
Зелик
Сообщений: 1,600
|
Это не контур маскировки. Это линии/полилинии лежащие под ней. Сделайте заступ маски более значительным, не знаю, как на печати, а на экране эффект проявляется на удалении, когда вес линий (а они у Вас 0,3) превышает величину перекрытия маскировки.
__________________
* Буква "ё" не используется в тексте исключительно в связи с требованиями ЕСКД. |
|||
![]() |
|
||||
Регистрация: 04.03.2011
Сообщений: 33
|
да, я об этом тоже думала, но вот толщину линии не взяла во внимание.
__________________
ну очень молодой специалист |
|||
![]() |
|
||||
Регистрация: 28.01.2013
Минск
Сообщений: 375
|
Можно зайти в редактор блоков, и создать параметр видимости(если такого нет). Создать новое состояние видимости в котором сделать маскировку невидимой. И тогда можно будет "отключить маскировку в этом чертеже только на определенных копиях этого блока".
|
|||
![]() |
|
||||
Проектировщик Регистрация: 11.08.2010
РБ, г. Витебск
Сообщений: 15
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 28.01.2013
Минск
Сообщений: 375
|
|
|||
![]() |
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837
|
Вот таким макросом можно:
Код:
__________________
Делай хорошо, плохо само получится. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
frame
wipeoutframe зависит от версии AutoCAD
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 27.08.2013
AuoCAD 2014 MAC
Сообщений: 54
|
Спасибо! А что, никак нельзя заливать формы с кривыми сегментами? Это же столько времени тратится... неужели автокад до сих пор это не придумал?(
|
|||
![]() |
|
||||
Регистрация: 03.03.2014
Сообщений: 19
|
Как это сделать быстро? Я знаю только один способ, но очень медленный: все криволинейные элементы заменить на полилинии из прямых отрезков с очень мелким шагом. Но если в фигуре много дуг, то на это уходит очень много времени
|
|||
![]() |
|
||||
Скачайте команды работы с полилиниями VVA.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Чему равна demandload и выполнялась ли команда wipeout?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 824
|
Цитата:
Кригер, сказал что на тот момент у него не было 2013 када, првоерить не мог. Приходится до сих пор вкл/выкл по старинке через ком. строку. 2 Алексей. У меня demandload=2, сама по себе команда маскировка работает.
__________________
AutoCad 2011 -> AutoCad 2013 -> AutoCad 2016 -> AutoCad 2011 -> AutoCad 2022 |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
А чем системная переменная wipeoutframe (ну или на крайний случай frame) не устраивает?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 824
|
Цитата:
Переключение переменных можно повесить на кнопку? Я так понимаю можно повесить команду wipeoutframe, а потом вручную вводить для не значение. Это дольше. ![]()
__________________
AutoCad 2011 -> AutoCad 2013 -> AutoCad 2016 -> AutoCad 2011 -> AutoCad 2022 |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
^C^Cwipeoutframe;0
^C^Cwipeoutframe;1 ^C^Cwipeoutframe;2
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Да, три кнопки
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 824
|
KPSP, Это косяк, начиная с 2012 акада. Я писал по поводу этого в техподдержку Автодеска. Эти *вырезано цензурой* сказали что исправят в следующем релизе (2014). Естественно не исправили.
Выход - иметь еще одну версию када, младше 2012. Или увы.
__________________
AutoCad 2011 -> AutoCad 2013 -> AutoCad 2016 -> AutoCad 2011 -> AutoCad 2022 |
|||
![]() |
|
||||
Регистрация: 22.09.2014
Сообщений: 1
|
Добавлю свои пять копеек.
Были созданы блоки с использованием маскировки. При печати полезли артефакты. После того, как компромисс для растровых/раскрашенных изображений был выставлен в сторону максимального качества, печать стала идеальной. |
|||
![]() |
|
||||
Регистрация: 20.05.2009
Сообщений: 89
|
WIPEOUTFRAME
----- добавлено через ~5 мин. ----- Цитата:
|
|||
![]() |