Работа с фильтрами
При работе в K3 иногда возникает необходимость ограничить возможность пользователя работать с объектами, позволяя ему выбирать, указывать объекты только установленных типов. При этом создавать объекты можно любого типа
При установленных фильтрах пользователь не сможет оперировать с объектами (удалять их, перемещать и пр.), если они не попадают в условия фильтра.
В данном разделе представлены возможности K3 по работе с фильтрами.
Функции работы с фильтрами
FltrType
Logical FltrType(INT <TypeObject>)
Функция включает фильтр по типу объектов и добавляет в него тип объекта, заданный параметром <TypeObject>. При установленном фильтре возможна работа с объектами (удаление, перемещение и пр.) только выбранных типов.
Для включения фильтра по двум или более типам объектов надо вызвать функцию несколько раз с разными типами объектов <TypeObject>.
Если <TypeObject> равен нулю, то в результате фильтр по типу объектов выключится.
Если <TypeObject> меньше нуля, то сначала фильтр очистится, а затем установится фильтр по типу, равному абсолютному значению <TypeObject>.
Типы объектов <TypeObject>:
- 1 — точка (Point)
- 2 — отрезок (Line)
- 3 — окружность (Circle)
- 4 — дуга окружности (Arc)
- 5 — сплайн (Spline)
- 6 — набор из отрезков, окружностей и дуг окружностей (Frame)
- 7 — контур (Path)
- 8 — многогранник (BRep)
- 9 — группа (Group)
- 10 — вставка блока (Insert)
- 11 — размер (Dim)
- 12 — текст (Text)
Функция возвращает
- 1 — фильтр успешно установлен
- 0 — ошибка.
Logical FltrType(String <TypeObject>)
Функция включает фильтр по типу объектов и добавляет в него тип объекта, заданный параметром <TypeObject>. При установленном фильтре возможна работа с объектами (удаление, перемещение и пр.) только выбранных типов.
Для включения фильтра по двум или более типам объектов надо вызвать функцию несколько раз с разными типами объектов <TypeObject>.
Если <TypeObject> — пустая строка, то в результате фильтр по типу объектов выключится.
Типы объектов <TypeObject>:
- "Text" — текст
- "Point" — точка
- "Line" — отрезок
- "Circle" — окружность
- "Arc" — дуга окружности
- "Path" — контур
- "BRep" — многогранник
- "Group" — группа
- "Dim" — размер
- "Insert" — вставка блока
- "Spline" — сплайн
- "Frame" — набор линий
- "PolyLine" — плоская полилиния
- "Light" — источник света
- "Panel" — панель
- "Note" — выноска с примечанием
- "Room" — комната (только для приложения "Мебель").
Функция возвращает
- 1 — фильтр успешно установлен
- 0 — ошибка.
FltrLayer
logical FltrLayer(INT <Mode>[, STRING <NameLayer>])
Функция включает фильтр по слою с именем <NameLayer> в соответствии с параметром <Mode>. Параметр <Mode> может иметь следующие значения:
- 0 — Выключить фильтр по слою;
- 1 — Включить фильтр по заданному слою, предварительно очистив предыдущее его содержимое;
- 2 — Добавить заданный слой в фильтр по слою.
Фильтр по слою не показывает удаленные слои.
Функция возвращает:
- 1 — фильтр успешно установлен;
- 0 — ошибка.
FltrColor
INT FltrColor(INT <Mode>[, INT <Color>])
Функция включает фильтр по цвету в соответствии с параметрами <Mode> и <Color>. Параметр <Mode> может иметь следующие значения:
- 0 — Выключить фильтр по цвету;
- 1 — Включить фильтр по заданному цвету, предварительно очистив предыдущий фильтр по цвету;
- 2 — Добавить заданный цвет в фильтр по цвету.
<Color>— индекс цвета от 0 до 239.
Функция возвращает:
- 1 — фильтр успешно установлен;
- 0 — ошибка.
FltrParamObj
LOGICAL FltrParamObj(INT <mode>[, INT <ParamObjCode>])
Функция включает или выключает фильтр по типу параметрического объекта в зависимости от своих параметров.
<mode>= 0 выключить фильтр<mode>= 1 включить в фильтр заданный типу параметрического объекта, предварительно очистив предыдущий фильтр<mode>= 2 добавить заданный тип параметрического объекта в фильтр<ParamObjCode>— тип параметрического объекта:
Типы параметрических объектов ядра системы:
- -1 — Не параметрический объект (не имеет CSG)
- 400 — Прямоугольник
- 401 — Многоугольник
- 402 — Штриховка
Типы параметрических объектов мебельного приложения:
- 60 — длинномер версии 6.0 (не используется)
- 61 — мебельная панель, начиная с версии 6.3
- 62 — мебельный профиль, начиная с версии 6.3
- 63 — служебный мебельный объект: внедряется в мебельные панели для подсветки кромок, крепежей и т.п.
- 64 — длинномер, начиная с версии 6.5
- 65 — профиль, начиная с версии 6.5 (измененыпараметры геометрии профиля)
- 66 — мебельный каркас с версии 7.1
- 67 — длинномер, начиная с версии 7.1
- 68 — комплектующий в версии 7.1
- 69 — деталь крепежа в версии 7.1
- 70 — группа крепежа в версии 7.1
- 71 — Линия свободного крепежа
- 72 — Линия крепежа на торце
- 73 — Сеточный замок (
gridlock) - 76 — Линия свободной сверловки
Типы параметрических объектов приложения Ship:
- 1000 — уголок катанный
- 1001 — полособульб
- 1002 — кница
- 1003 — бракета (фланец внутри габарита)
- 1004 — полоса
- 1006 — лист
- 1007 — бракета (фланец за габаритом)
- 1010 — Z-профиль
- 1011 — B-профиль
Функция возвращает:
- 1 в случае успешного завершения или
- 0 в случае неправильного задания параметров