Типовые параметры

Материал из K3-Macro
Макро | Переменные и выражения | Вызов из ZIP | Типовые параметры | Создание геом. объектов | Буфер обмена | Сценарии | Параметрические библиотеки | Геометрические характеристики | Атрибуты | Структурные объекты | Текстовые файлы | Системные параметры | Работа с файлами | Редактирование объектов | Удаление объектов | Размеры | Штриховка | Объект «Текст» | Камера | Работа с видом | Наборы параметров | Запрос информации у пользователя | Фильтры | Слои | Графы | Универсальные плоские объекты | Функции работы с системой | Функции работы с объектами сцены | Работа с динамически подключаемыми библиотеками | Функции работы с массивами | Работа со строками | Математические функции | Работа с файлами DBF dBASE IV | Унифицированная работа с базами данных | Вычисление выражений | Присвоение имени объекту | Откатка и восстановление команд | Изменение режима трассировки макропрограмм | Вызов внешних приложений и задач | Проверка условия | Проверка типа переменной | Установкв статуса вывода сообщений | Выдача системного сообщения | Выбор объектов | Версия системы | Информация о системе | Проверка принадлежности к списку | Помещение строки в буфер команд | Получение метапути | Установка курсора ожидания | Мебельные команды и функции для макропрограммирования‎

Список параметров большинства команд не является фиксированным, каждый следующий параметр зависит от предыдущего. Кроме того, он зависит и от состояния системы, например, от установленных привязок, систем координат, текущего видового окна и т.д..

Многие команды системы имеют однотипные, часто повторяющиеся наборы параметров, которые используются для ряда операций:

  • ввода точки,
  • выбора одного объекта,
  • выбора нескольких объектов.

Для того чтобы подробно не описывать эти параметры при описании формата каждой команды, мы опишем эти параметры заранее и введём условные обозначения этих наборов. В дальнейшем при описании команд будут указываться номера сценариев, используемых в конкретном случае и не представленные в таблицах.

Ввод точки[править | править код]

Условное обозначение типового параметра при вводе точки — <Point>. Возможные параметры представлены в таблице.

Возможные параметры при вводе точки
Ключ 1
Ключ 2
Комментарий
1
: (двоеточие)
 

Ввод координат в интерактивном режиме.

2
x,y,z
 

Координаты.

3
none
x,y,z

Без привязки.

4
autosnap
^x,y,z

"Автопривязка"

5
endpoint
^x,y,z

Привязка «к концу».

6
centerpoint
^x,y,z

Привязка «к центру».

7
midpoint
^x,y,z

Привязка «к середине».

8
intersect
^x,y,z

Привязка «к пересечению».

9
perpend
^x,y,z

Привязка «перпендикулярно к элементу».

10
near
^x,y,z

Привязка «на элементе».

11
tangentpoint
^x,y,z

Привязка «касательно».

12
quadrant
^x,y,z

Привязка «к квадранту».

13
endpath
^x,y,z

Привязка «к концу контура»

14
node
^x,y,z

Привязка «к узлу»

15
pathinter
^x,y,z

Привязка «к пересечению контуров»

16
relative
x,y,z

Ввод приращений.

17
absolute
x,y,z

Ввод абсолютных координат.

18
polar
x,y,z

Ввод цилиндрических координат.

19
cartesian
x,y,z

Ввод декартовых координат.

20
ortho
x,y,z

Режим «Орто».

21
gcs
x,y,z

Ввод координат в глобальной системе координат (ГСК).

22
ucs
x,y,z

Ввод координат в пользовательской системе координат (ПСК).

23
vcs
x,y,z

Ввод координат в видовой системе координат (ВСК).

24
acs
x,y,z

Ввод координат «по схеме».

25
done
 

Завершить указание точки. Используется когда хотя бы одно указание точки осуществлено.

26
undo
 
Откатка предыдущего сценария. Используется когда хотя бы одно указание точки осуществлено.
Привязки

В таблице x,y,z — вводимые координаты. В качестве x, y или z можно вводить конкретные числа, ранее определённые переменные или выражения.

Знак «^» перед координатами означает, что вводятся не просто координаты, а координаты ловушки указания (выбора) объектов. При этом выбор объекта будет зависеть от текущего видового окна.

Основные привязки, используемые при указании точки, показаны на рисунке:

Примеры:

Запись

line <Point> <Point> done

может означать:

line 20,30,40 end ^40,30,45 done

или

line sin(pi()/2)*25,sqrt(a-30),40-12/2 relative 4,3/4,4.5 done


Примечание: В макропрограммах не рекомендуется пользоваться командами, ключами, функциями и пр., зависящими от текущего видового окна. Поскольку заранее никто не может сказать, какой видовое окно будет текущим при выполнении макропрограммы, её поведение будет непредсказуемым.



Следует иметь в виду, что типовой параметр <Point> может использоваться и при вводе координат вектора. Здесь так же могут использоваться привязки, переключение системы координат и пр.

Выбор одного объекта[править | править код]

Условное обозначение типового параметра указания одного объекта — <Object>. Возможные параметры представлены в таблице.

Возможные параметры при указании одного объекта
Ключ 1
Ключ 2
Комментарий
1
: (двоеточие)
 

Выбор объекта в интерактивном режиме.

2
^x,y,z
 

3D аналог ловушки.

3
last
 

Последний созданный объект.

4
<Name>
 

Ранее определенное имя объекта.

Примеры:

Запись

boolean sub <Object> <Object> done

может означать:

boolean sub last O1 done

или

boolean sub S12 Obj_2 done

где О1, S12, Obj_2 — ранее определённые символьные имена объектов.

Выбор нескольких объектов[править | править код]

Условное обозначение типового параметра указания нескольких объектов - <Objects>. Возможные параметры представлены в таблице.

Возможные параметры при указании нескольких объектов
Ключ 1
Ключ 2
Комментарий
1
: (двоеточие)


Выбор объектов в интерактивном режиме.

2
^x,y,z


3D аналог ловушки.

3
all


Все доступные объекты текущей сцены.

4
Last 1


Последний созданный объект.

5
last <N>


N последних созданных объектов (<N> - целое число).

6
<Name>


Ранее определенное имя объекта.

7
window
<Point> <Point> <Objects>

Выбор рамкой. Необходимо задать диагональные углы рамки. Выбираются объекты, полностью попадающие в рамку.

8
window cross
<Point> <Point> <Objects>

Выбор секущей рамкой. Необходимо задать диагональные углы рамки. Выбираются объекты, полностью попадающие в рамку или пересекающие её.

9
full
^x,y,z

Выбор множества объектов, попадающих в ловушку.

10
remote
<Objects>

Исключить объекты из списка выбранных.

11
select
<Objects>

Включить объекты в список выбранных.

12
done

Завершить выбор объектов. Используется, когда хотя бы один объект выбран.

13
undo

Откатка предыдущего сценария. Используется, когда хотя бы один объект выбран.

14
attribute
<String>

Выбор объектов по атрибутам в соответствии с выражением, представленным в строке

15
filter

Фильтр по типу объекта (линия, окружность и пр.)

16
bylayer

Фильтр по слою, на котором расположен объект

17
parobjfilter

Фильтр по параметрическим объектам (не путать с прототипами)

18
bycolor

Фильтр по цвету

Пример дерева объектов

Выбор объектов должен быть завершен ключевым словом done.

Примеры:

Запись move nocopy <Objects> <Point> может означать:

move nocopy O1 O2 last 2 ^23,14,12 done 20,13,10

т.е. "сдвинуть без копирования объекты (с именами O1, O2, а также два последних и объект, указанный ловушкой с координатами 23,14,12) на расстояния 20,30,10 вдоль осей x, y, z соответственно".

В некоторых командах предусмотрен расширенный выбор объектов по следующим ключам:

wholly - выбор объектов верхнего уровня.
partly - выбор объектов нижнего уровня
tree - выбор по дереву объектов (см. рисунок).
allscene - выбор по дереву всех объектов сцены.
Pluso.png По-умолчанию, если не указано иное, в макрокомандах используется ключ wholly, а при выборе объектов в интерактивном режиме запоминается последний выбранный ключ. Однако, следует обратить внимание, что предыдущее соглашение действует при использовании команд, а не при использовании меню и кнопок панели инструментов, поскольку по кнопкой или пунктом меню может быть "зашита" комбинация команды с ключом (например, delete wholly).

Ключи выбора объектов filter, bylayer, parobjfilter, bycolor предназначены для работы исключительно в интерактивном режиме, поскольку выводят диалоговое окно для указания параметров фильтра. Для работы в режиме командной строки (из макропрограмм) необходимо использовать функции работы с фильтрами.

Pluso.png При выборе выбора в режиме Частично с учетом фильтров по типу параметрического объекта, по цвету, по слою в случае, если объект нижнего уровня не удовлетворяет этим фильтрам, то родители этих объектов также не выбираются.

Макро | Переменные и выражения | Вызов из ZIP | Типовые параметры | Создание геом. объектов | Буфер обмена | Сценарии | Параметрические библиотеки | Геометрические характеристики | Атрибуты | Структурные объекты | Текстовые файлы | Системные параметры | Работа с файлами | Редактирование объектов | Удаление объектов | Размеры | Штриховка | Объект «Текст» | Камера | Работа с видом | Наборы параметров | Запрос информации у пользователя | Фильтры | Слои | Графы | Универсальные плоские объекты | Функции работы с системой | Функции работы с объектами сцены | Работа с динамически подключаемыми библиотеками | Функции работы с массивами | Работа со строками | Математические функции | Работа с файлами DBF dBASE IV | Унифицированная работа с базами данных | Вычисление выражений | Присвоение имени объекту | Откатка и восстановление команд | Изменение режима трассировки макропрограмм | Вызов внешних приложений и задач | Проверка условия | Проверка типа переменной | Установкв статуса вывода сообщений | Выдача системного сообщения | Выбор объектов | Версия системы | Информация о системе | Проверка принадлежности к списку | Помещение строки в буфер команд | Получение метапути | Установка курсора ожидания | Мебельные команды и функции для макропрограммирования‎