Цвет внутри блока не меняется!
Здравствуйте.
Подскажите как решить такую проблему:
Был создан блок с определенным цветом линий (скажем, желтый). Дальше при работе нужно чтобы он стал цветом слоя (черный, например). Если я этот блок перевожу на слой, цвет которого черный, то блок своего цвета не меняет. Приходится его расчленять, перекрашивать, а потом снова собирать. Как упростить это дело?
#2 Ответ от Valery Brelovsky 25 ноября 2007г. 09:25:06
- Valery Brelovsky
- Активный участник
- Откуда: Израиль / Север Израиля / Кирь
- На форуме с 3 июня 2005г.
- Сообщений: 2,359
- Спасибо: 19
Re: Цвет внутри блока не меняется!
#3 Ответ от Vova 25 ноября 2007г. 17:37:49
Re: Цвет внутри блока не меняется!
А ведь никто в вышеуказанной теме не выполнил мое задание
Сделайте такой блок, например, круг, чтобы в каком-нибудь крупном масштабе при замене типа линии на Hidden в круге оказалось 5 штрихов. Затем вставьте этот блок в другой фрагмент чертежа, который выйдет в печать в масштабе раза в 3 мельче. Надо чтобы и здесь просматривались штрихи, хотя-бы 3-4.
Владимир,(это к твоему вопросу не относится) тебе надо почитать еще и тему про цвет экрана)
#4 Ответ от Nesla 26 ноября 2007г. 11:20:55
Re: Цвет внутри блока не меняется!
При создании блока следует выбрать цвет «ПоСлою». И тогда при вставке этого блока его цвет станет таким же как и у слоя, на который он вставляется.
#5 Ответ от kpblc 26 ноября 2007г. 11:29:54
Re: Цвет внутри блока не меняется!
> Nesla
А теперь ради приколу взять и поменять цвет блоку, сделав его несовпадающим с цветом слоя.
#6 Ответ от Valery Brelovsky 26 ноября 2007г. 13:39:30
- Valery Brelovsky
- Активный участник
- Откуда: Израиль / Север Израиля / Кирь
- На форуме с 3 июня 2005г.
- Сообщений: 2,359
- Спасибо: 19
Re: Цвет внутри блока не меняется!
> Vova
Значит это ни кому не нужно. Пудрить мозги что бы было пять штрихов. И потом человек задал вопрос не о штрихах а о цвете. И предложенный раздел как я думаю наиболее подходящий к этому вопросу. И может через незначительный промежуток времени Владимир поможет Вам решить эту проблему. А Вам вынь да полож ответ.
#7 Ответ от Vova 26 ноября 2007г. 15:45:31
Re: Цвет внутри блока не меняется!
Я давно знаю ответ. Он наглядно показывает, что ПО-блоку есть более продвинутая опция, чем ПО-Слою. Именно это я хотел доказать данным примером, но никто эту задачу не решил. Без этого вам придется делать несколько блоков пунктирных кружочков, для каждого масштаба, хотя можно обойтись одним
#8 Ответ от Valery Brelovsky 26 ноября 2007г. 17:36:43
- Valery Brelovsky
- Активный участник
- Откуда: Израиль / Север Израиля / Кирь
- На форуме с 3 июня 2005г.
- Сообщений: 2,359
- Спасибо: 19
Re: Цвет внутри блока не меняется!
> Vova
Я всё в блоках выставляю по блоку и не заморичиваюсь. Блок создается не для для чтобы его взрывать. А кто не может нормально работать с блоками пусть будут их проблемы. Это в продолжение Вашей старой темы о блоках.
#9 Ответ от Vova 26 ноября 2007г. 20:46:51
Re: Цвет внутри блока не меняется!
Valery, у меня впечатление, что мы говорим о разных вещах. Про чем здесь расчленение блоков? Непонятна реплика о заморачивании с количеством штрихов. Может, я нечетко выразился. Речь шла о том, как один и тот-же блок (на примере кружочка) употребить так, чтобы он мог выглядеть как сплошной или как пунктирный. Если пунктирный, то в разных масштабах, отличающихся между собой раза в 3-4, чтобы было видно по 4-5 штрихов. Здесь есть один секрет, который я и просил разгадать. Кто сможет так сделать, тот никогда не скажет, дескать, только По-слою надо делать блоки, потому что По-блоку непонятно зачем. И насчет «это никому не нужно» Кружочек это ведь пример. Блоки, представляющие собой оборудование, состоят из таких кружочков и палочек. Пусть блоки это oборудование рисуемое сплощной, а также демонтируемое оборудование которое рисуется пунктиром. Да еще в разных масштабах. Если никому не нужен универсальный блок, то я ничего не смыслю в автокаде
P.S. Весь блок делать из По-блоку (и не заморачиваться) значит работать только с простейшими блоками
#10 Ответ от Valery Brelovsky 26 ноября 2007г. 23:17:53
- Valery Brelovsky
- Активный участник
- Откуда: Израиль / Север Израиля / Кирь
- На форуме с 3 июня 2005г.
- Сообщений: 2,359
- Спасибо: 19
Re: Цвет внутри блока не меняется!
> Vova
Я возможно ещё многого не знаю в Автокаде. Но то что я не знаю оно может и не нужно мне. Я дорожник и то что как говорится у меня на перспективу блоком не определишь. И мои блоки универсальны для моей работы. Так что не раскручивайте меня на обсуждение этого вопроса. В холостую заниматься исследованием свойств Вашего универсального блока. Ну не куда мне его пока применить.
А предпочитаю работать с простейшими блоками если их продумать то они наиболее универсальны.
Чем сложнее блок тем уже возможности его использования. Да сегодня есть динамические блоки есть аннотативность и чего завтра только не на ваяют.
#11 Ответ от Владимир 27 ноября 2007г. 12:24:01
Re: Цвет внутри блока не меняется!
> Valery Brelovsky
По-моему это не совсем то, в той теме вообще абстрактно рассуждают про по-слою и по-блоку. Хотя дальше второй страницы я не успел прочитать ))
> Nesla
Спасибо что хоть кто-то ответил на мой вопрос.
Я проверил, действительно блок меняет свой цвет в соответствии со слоем, если при создании выставлен цвет «по слою».
Но у меня проблема немного другая. Блок уже создан до меня. И я даже не знаю как он создан (по-слою, по-блоку или вообще просто цвет был выставлен вручную). И когда я выделяю этот блок и в меню пытаюсь поставить цвет «по слою», то блок своего цвета не меняет. Даже когда вручную пытаюсь присвоить нужный цвет, блок все равно не меняет свой цвет!
> Vova
А что за тема про цвет экрана? Название помните?
поменять цвет блока
Если все внутри блока сделано по слоям
то если вставить в слой «0» все должно быть «ОК»
Если нет и не смотрится правильно то двойной клик по блоку или BEDIT комманда и выбрать блок. сделать нужные изменения, сохранить и все блоки с таким же именем изменятся соответственно. и настанет «полная гармония» со всеми
последствиями
__________________
Сквозь тернии к звездам. и обратно :yes:
всё что связано с упорядоченным движением заряженных частиц
Регистрация: 27.07.2007
Сообщений: 1,693
кстати через нулевой слой цвет не поменялся, у него несколько другие функции, а вот _.bedit то что надо, буду знать на будущее, спасибо
Последний раз редактировалось Jоhnny, 05.08.2008 в 21:27 .
Регистрация: 11.05.2005
Сообщений: 6,991
JРѕhnny,
Сначала нормализуй блоки
LISP. Нормализация блоков текущего файла.
А потом меняй хоть через слой, хоть явно задавай цвет
__________________
Как использовать код на Лиспе читаем здесь
всё что связано с упорядоченным движением заряженных частиц
Регистрация: 27.07.2007
Сообщений: 1,693
про _.bedit я ещё конечно почитаю, но у меня было сначала так: два клика по блоку, выбираю нужный, и потом грузится панель для работы с динамическими блоками, а сейчас при тех же самых действиях палитра со всеми свойствами блоков :\
Регистрация: 20.03.2008
Сообщений: 2,653
Пока интернет забарахлил, все меня опередили. _BEDIT, конечно, хорошо, но если блоки разные, то #6.
Сообщение от Jоhnny
про _.bedit я ещё конечно почитаю, но у меня было сначала так: два клика по блоку, выбираю нужный, и потом грузится панель для работы с динамическими блоками, а сейчас при тех же самых действиях палитра со всеми свойствами блоков :\
Чтобы вернуть как было, сделай следующее:
1. Набери _CUI в командной строке.
2.В вехнем левом окне выбери пункт «Операции при двукратном нажатии», далее «Блоки», затем «Блоки -Двойное нажатие».
3.В правом окне «Свойства» в строке «Макрос» пропиши следующее:
$M=$(if,$(and,$(>,$(getvar,blockeditlock),0)),^C^C_properties,^C^C_bedit);
4.Не забудь нажать «ОК»
Последний раз редактировалось skkkk, 05.08.2008 в 23:05 .
Регистрация: 14.06.2013
Сообщений: 6
как изменить цвет сразу у нескольких блоков
alex8008_30 |
Посмотреть профиль |
Найти ещё сообщения от alex8008_30 |
Регистрация: 17.10.2009
Сообщений: 1,108
Сообщение от skkkk
$M=$(if,$(and,$(>,$(getvar,blockeditlock),0)),^C^C_properties,^C^C_bedit);
4.Не забудь нажать «ОК»
Следующий вопрос будет — «перестали редактироваться атрибуты что делать??»
2 alex8008_30
Нескольких с одинаковым именем, другие такие же не красить? Нескольких с разным именем? Что?
Регистрация: 14.06.2013
Сообщений: 6
Нет, в том то и загвоздка, что все блоки разные и необходимо заменить определенный цвет во всех блоках на другой. А вот в отношении редактирования атрибутов Вы правильно подметили. Пришлось просто скинуть все настройки акада на первоначальные))
alex8008_30 |
Посмотреть профиль |
Найти ещё сообщения от alex8008_30 |
Регистрация: 17.10.2009
Сообщений: 1,108
Сообщение от alex8008_30
Нет, в том то и загвоздка, что все блоки разные и необходимо заменить определенный цвет во всех блоках на другой. А вот в отношении редактирования атрибутов Вы правильно подметили. Пришлось просто скинуть все настройки акада на первоначальные))
Атрибуты блока так же показываются и редактируются в панели свойств (ctrl+1)
С цветами миллион вариантов в зависимости от того что в чертеже и как нужно чтобы было — поменять цвет в файле ctb, отредактировать все блоки, нормализовать все блоки «по блоку» и выставить нужным цвет.
Регистрация: 20.03.2008
Сообщений: 2,653
Ответ вроде бы в #6
Сообщение от VVA
Сначала нормализуй блоки
LISP. Нормализация блоков текущего файла.
А потом меняй хоть через слой, хоть явно задавай цвет
Регистрация: 14.06.2013
Сообщений: 6
Выкладываю чертеж. На чертеже необходимо во всех знаках (блоки) заменить цвет синий на цвет под номером 174. А таких чертежей куча(((
асад — 2010
DWG 2010 | 1.Тр разв.dwg (2.20 Мб, 6859 просмотров) |
alex8008_30 |
Посмотреть профиль |
Найти ещё сообщения от alex8008_30 |
Регистрация: 17.10.2009
Сообщений: 1,108
Сообщение от alex8008_30
Выкладываю чертеж. На чертеже необходимо во всех знаках (блоки) заменить цвет синий на цвет под номером 174. А таких чертежей куча(((
асад — 2010
Цвет нигде кроме знаков не использован — проще всего выставить в ctb файле печатать синий цветом 174.
Второй вариант — создать файл со всеми знаками (их не так и много) где отредактировать блоки на правильный цвет, а потом через дизайн-центр просто переопределять блоки в чертежах на блоки из образца.
Регистрация: 20.03.2008
Сообщений: 2,653
Взорвать все блоки к такой-то бабушке и быстрым выбором поменять цвет с синего на 174-й. Все равно многие из них сделаны через одно место: точка вставки у них далеко за пределами чертежа. Менять их описание (как блоков) с целью разом изменить все вхождения одного блока на чертеже — тоже смысла нет, — это знаки, и они неизменны, кроме данного случая поменять цвет. Или есть еще какая-то причина, по которой их не хочется (или нельзя) взрывать?
Регистрация: 14.06.2013
Сообщений: 6
В дальнейшем не исключаю что скорее всего придется корректировать эти чертежи. Т.е. какие то знаки удалять, перемещать и т.д. Поэтому не очень бы хотелось их взрывать. Ну а то что они «сделаны через одно место» согласен, в таком виде они мне и достались в корректировку, после замечаний.
alex8008_30 |
Посмотреть профиль |
Найти ещё сообщения от alex8008_30 |
Регистрация: 20.03.2008
Сообщений: 2,653
Попробуй этим лиспом. При написании использовались подсказки kpblc‘а отсюда. Гуру, наверное, поругаются на корявость алгоритма, но тем не менее.
Он покрасит ВСЕ синие (цвет 5) объекты внутри всех блоков в цвет 174. Если внутри блока попадутся другие блоки с синими объектами (а в приложенном чертеже таковые имеются) — покрасит и их. Если же внутри этого блока найдутся блоки следующего уровня вложенности, (какой он там по счету выходит, второй что ль, уровень-то?) — они уже не обработаются (не освоил я еще рекурсию). В прилагаемом файле (1.Тр разв.dwg) все синие знаки стали темнее, кроме одного, который не был блоком.
(defun C:test ( / ss n) (vl-load-com) (defun get-block-entity-list (ent / block_def block_cont res) (setq block_def (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) (vla-get-effectivename ent) ) ;_ end of vla-item ) ;_ end of setq (setq block_cont ((lambda (/ res) (vlax-for sub block_def (setq res (cons sub res)) ) ;_ end of vlax-for (reverse res) ) ;_ end of lambda ) ) ;_ end of setq block_cont ) ;_ end of defun get-block-entity-list (setq ss (ssget "_X" (list (cons 0 "INSERT"))) n 0 ) (repeat (sslength ss) (mapcar (function (lambda (x) (cond ((= (vla-get-color x) 5) (vla-put-color x 174) ) ((= (vla-get-objectname x) "AcDbBlockReference") (mapcar (function (lambda (y) (if (= (vla-get-color y) 5)(vla-put-color y 174)))) (get-block-entity-list x)) ) ) ) ) (get-block-entity-list (vlax-ename->vla-object (ssname ss n))) ) (setq n (1+ n)) ) (vla-regen (vla-get-activedocument (vlax-get-acad-object)) acAllViewports) (princ) )Последний раз редактировалось skkkk, 14.06.2013 в 21:05 .
Все что связано с программными продуктами компании Autodesk
Новости, приемы работы, советы, программирование, типы, трюки, поиск и предложение работы
Цвет блоков
Довольно часто мне присылают чертежи, где двери, например, сделаны как блоки.
Они какого-то цвета, например, красного.
Я хочу изменить цвет слоя с красного на, например, синий.
Я меняю, происходит ничего.Это нужно, например, для того, чтобы при печати печатались синие двери, однако даже при выборе plot style - monochrome.ctb цвет печати не меняется.
Я вынужден разбивать блок на элементы ( explode ) и потом все эти объекты делать какого-то цвета.Может быть есть способ сразу поменять цвет блока?
Comments
modify-in-place Xref and Block edit выделить элементы блока и переместить их на -layer 0. Это получается из-за того, что блок построен неправильно - не на 0 слое.
Posted on Mar. 14th, 2011 06:51 am (UTC) | Link | Thread | Reply
Да, все блоки изначально необходимо создавать в нулевом слое. Тогда они будут адекватно меняться, отображаться и печататься.
Posted on Mar. 14th, 2011 07:01 am (UTC) | Link | Thread | Reply
кроме всего вышесказанного, цвет элементов блока можно сделать "по блоку", тогда они не только будут принимать цвет слоя, но и цвет, который вы зададите
Posted on Mar. 14th, 2011 07:44 am (UTC) | Link | Thread | Reply
Для этого вам нужно выделить блок правой кнопкой мыши в контекстном меню выбрать Block Editor, дальше меняете цвет как обычно, и нажимаете Close Block Editor, он спросит сохранить ли изменения - ok. И все дввери должны изменить цвет.
Как поменять цвет фона в AutoCAD?
По умолчанию, в AutoCAD настроен темно-серый цвет фона, чтобы изменить его, читайте нашу маленькую инструкцию:
1) Щелкните ПКМ (Правой Кнопкой Мыши) в любом свободном месте графической зоны программы и выберите пункт «Параметры» (это самый быстрый способ зайти в глобальные настройки AutoCAD).
2) В открывшемся окне перейдите на вкладку «Экран» (если Вы не видите ее, то используйте стрелки расположенные справа) и нажмите на кнопку «Цвета».
3) Откроется окно «Цветовая гамма окна чертежа», в нем:
слева — выбор пространства для настройки (нас интересует "Пространство 2D-модели),
по центру — элемент интерфейса этого пространства (выбираем «Однородный фон»),
справа — цвет выбранного элемента интерфейса — просто выбираем из списка нужный цвет или нажимаем «Другие цвета», чтобы открылась палитра с большим количеством доступных цветов.4) В окне выбора цвета переходим в на вкладку «Номера цветов» и выбираем любой понравившийся цвет и жмем «Ок».
Тут стоит сделать небольшое отступление.
Всех пользователей программы AutoCAD можно разделить на две большие группы: любители работать на темном фоне и любители работать на светлом фоне. Лично я отношусь ко второй категории. На мой взгляд использование темного или черного фона нисколько не уменьшает нагрузку на Ваши глаза (основной аргумент его сторонников). Скорее наоборот — очень небольшое количество цветов будут контрастны к черному фону, Вам придется использовать «кислотные» фиолетовые, салатовые и бирюзовые линии, чтобы хоть что-то различить на экране. К тому же, все черные линии будут отображаться на экране как белые. Вам будет тяжело представить как будет выглядеть Ваш чертеж при печати (особенно цветной). Я бы сравнил это с ездой по ночному городу — темное окружение и бьющие по глазам яркие пятна от фар встречных машин. Мои глаза устают от такой нагрузки очень быстро. Тем не менее, ставить в качестве фона белый цвет, на мой взгляд, тоже не очень разумно — он очень яркий и длительная работа на таком ярком фоне будет негативно сказываться на Вашем зрении (и мониторе). Лично я выбрал для себя светло-серый цвет фона — цвет номер 254. И за те 10 лет, что я работаю в программе (в среднем, по 5-8 часов в день) мне удалось сохранить прекрасное зрение. К тому же, мне очень нравится возможность использовать в своих чертежах глубокие насыщенные цвета — синий, красный, черный и т.п.5) Если на предыдущем шаге Вы выбрали в качество фонового какой-то светлый цвет, следует так же изменить цвет элементов «Перекрестье» и «Управление видовыми экранами» - лучше всего на какой-то темный (например, темно-синий или черный). После этого можно нажать «Принять» и посмотреть на результат. Если версия Вашей программы ниже 2015, имеет смысл также изменить цвет элемента интерфейса «Динамическая размерная линия» — лучше всего на какой-то яркий (например, оранжевый или синий), т.к. по умолчанию он серый и может сливаться с фоном)
Если вы захотите сделать светлым не только фон, но и основные элементы интерфейса (лента, строка состояния), то выберите «Светлую» цветовую схему:
В AutoCAD 2015 это будет выглядеть вот так:
Но лично мне больше по душе темный вариант ленты и панелей.
Спасибо за внимание. Теперь Вы всегда сможете легко и быстро изменить цвет фона и ленты при необходимости. Советую попробовать поработать как на светлом, так и на темном фоне и выбрать наиболее удобный вариант.