Слои
В K3 возможна работа со слоями. Работа со слоями в K3 представляет собой набор инструментов, практически идентичных работе со слоями в других системах автоматизированного проектирования (САПР).
В общем случае слои в K3 можно представить как набор прозрачных "пленок", наложенных одна на другую. Каждый слой в K3 может иметь свое имя, цвет, толщину линии и другие характеристики. Слой может быть включен или выключен, на слое может быть разрешено или не разрешено редактирование объектов.
В интерактивном режиме практически вся работа со слоями осуществляется при помощи диалоговых окон, представленных на рисунках.
Команды и функции работы со слоями повторяют опции данных диалоговых окон.
В данном разделе собрано описание команд и функций, позволяющих осуществлять операции по работе со слоями.
Работа со слоями[править | править код]
layers [<Params> done]
Команда layers осуществляет работу со слоями, согласно параметрам <Params>
, представленным в следующих разделах. Если параметры <Params>
отсутствуют, работа осуществляется при помощи диалогового окна, представленного на рисунке выше.
Если в команде опустить параметр с именем слоя, с которым нужно произвести те или иные действия (<Name>
), то выбор слоя осуществляется при помощи диалогового окна, представленного на рисунке выше. Для выбора слоя в данном случае его нужно указать в первой колонке диалогового окна.
![]() |
Слой с именем "0" не может быть ни удален, ни переименован. |
Создание нового слоя[править | править код]
layers new <Name>
Команда создает новый слой в списке слоев с именем <Name>
. Текущим при этом остается слой, который был до создания нового. Максимальное число созданных слоев - 255.
layers make <Name>
Команда создает новый слой в списке слоев с именем <Name>
и делает его текущим.
![]() |
Если слой с именем <Name> удален, то команда layers make снимает пометку на удаление.
|
layers rename <OldName> <NewName>
Команда переименовывает слой в списке слоев с именем <OldName>
и устанавливает у него имя <NewName>
.
Смена текущего слоя[править | править код]
layers set <Name>
Команда делает текущим слой именем <Name>
. Слой с данным именем уже должен существовать.
![]() |
Если слой с именем <Name> удален, то команда layers set снимает пометку на удаление.
|
Включение/выключение слоя[править | править код]
layers {on | off} {<Name> | all}
Команда включает (on
) или выключает (off
) слой с именем <Name>
. Если указан ключ all
, то команда включает (или выключает) все слои. Объекты, расположенные на выключенном слое не отображаются.
![]() |
Действие этой (и некоторых других) команд работы со слоями распространяется только на слои, непомеченные к удалению (см. рисунок выше, второй столбец справа). Подробнее об удалении слоев см. раздел "Удаление слоя" |
Блокировка слоя[править | править код]
layers {lock | unlock} {<Name> | all}
Команда блокирует (lock
) или разблокирует (unlock
) слой с именем <Name>
. Если указан ключ all
, то команда блокирует (или разблокирует) все слои. Объекты, расположенные на заблокированном слое нельзя ни отредактировать, ни удалить. Добавление новых объектов допускается.
![]() |
Действие этой (и некоторых других) команд работы со слоями распространяется только на слои, непомеченные к удалению (см. рисунок выше, второй столбец справа). Подробнее об удалении слоев см раздел "Удаление слоя" |
Цвет объектов слоя[править | править код]
layers color <Name> <Color>
Команда устанавливает цвет <Color>
объектов слоя с именем <Name>
.
Применить цвет к объектам слоя[править | править код]
доступно с 2.03.2020
layers applycolor <Name> {Yes|No}
Команда включает/выключает режим Применить цвет к объектам слоя для слоя с именем <Name>
.
Если режим выключен, то при смене цвета слоя объекты, лежащие на этом слое, будут отображаться своим цветом. Если режим включен, объекты слоя будут отображаться цветом слоя. Аналогично при переносе с одного слоя на другой объекты отображаются цветом слоя-адресата только в том случае, если режим включен.
Тип линии объектов слоя[править | править код]
layers ltype <Name> <LineType>
Команда устанавливает тип линии <LineType>
объектов слоя с именем <Name>
.
Толщина линии объектов слоя[править | править код]
layers lwidth <Name> <LineWidth>
Команда устанавливает толщину линии <LineWidth>
объектов слоя с именем <Name>
.
Графический коэффициент объектов слоя[править | править код]
layers grfcoeff <Name> [{absolute | relative}] <GrfCoeff>
Команда устанавливает графический коэффициент (ключ absolute
— по-умолчанию) или относительное изменение графического коэффициента относительно текущего (ключ relative
) <GrfCoeff>
объектов слоя с именем <Name>
.
Удаление слоя[править | править код]
layers delete <Name>
layers delete all
Команда помечает к удалению слой в списке слоев с именем <Name>
или все слои, кроме слоя с именем "0", если выбран ключ all
. Текущий слой и слой с именем "0" удалить нельзя.
Список слоев[править | править код]
layers list
Команда выводит в командное окно список существующих слоев с их характеристиками (см. рисунок).
Функции работы со слоями[править | править код]
CountLayers[править | править код]
INT CountLayers()
Функция возвращает количество существующих, не удаленных слоев.
NameLayers[править | править код]
INT NameLayers(varname ARRAY <Arr>[, varname ARRAY <Off>])
Функция заносит в массив <Arr>
имена существующих, не удаленных слоёв и возвращает количество заполненных элементов в массиве <Arr>
, в массив <Off>
состояние включен (0) или выключен(1) соответствующего слоя. Если число слоёв больше размерности массива <Arr>, то массив заполняется до конца, игнорируя не уместившиеся названия слоёв.
ExistsLayer[править | править код]
logical ExistsLayer(STRING <NameLayer>[, varname INT <Off>[, varname INT <Lock>]])
Функция определяет существование слоя по его имени. <NameLayer>
— строка с названием слоя (регистр букв не важен). Дополнительные параметры определяют: <Off>
- выключен (1) или включен (0) слой с именам <NameLayer>
.; <Lock>
— заблокирован (1) или разблокирован(0) слой с именем <NameLayer>
.
Функция возвращает:
- 1 — слой с таким именем существует,
- 0 — слоя с таким именем не существует;
- -1 — слой с таким именем удален.
GetLayer[править | править код]
String GetLayer(Object <Obj>)
Функция возвращает имя слоя, которому принадлежит объект <Obj>
.