Слои
В 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>
.