Специальная расстановка

Материал из K3-Macro
Макро | Мебельные команды и функции | Мебельные объекты | Указание | Создание схемы сборки | Перенумерация | Показ кромок | Показ крепежа | Расстановка крепежа и сверловки | Поиск пятен контакта | Показать информацию | Каталоги стандартных моделей | Сдвиг | Количество | Позиции | Комментарий | Классификатор мебельных элементов | Работа с комплектующими | Дополнительные материалы к модели | Специальная расстановка

gridlock

Параметры сетки gridlock
Пример
Пример применения команды — гардеробные стойки и кронштейны

gridlock <Params>

Команда задает специальные правила расстановки мебельных элементов по сетке. Параметры <Params> позволяют создавать сетку, создавать объект для перемещения по сетке, передвигать этот объект специальным образом по сетке и пр.

Возможные значения <Params>:

Create [parameter] <Point1> <Point2> <Point3>

Команда создает сеть в плоской области, заданной прямоугольником, проходящим через точки <Point1>, <Point2> и <Point3>. При использовании необязательного ключа parameter появляется диалоговое окно с параметрами будущей сети.

Параметры:

  • Вал/Отверстие - задает тип сетки. Система "Вал" - задает матрицу с возможным расположением сетки с типом "Отверстие". Сетка типа Отверстие может быть размещена на сетке Вал при условии, что некоторое количество контактов перекрывается.
  • Количество учитываемых контактов - минимальное количество контактов, которые должны пересекаться у сеток Вал с контактами сетки Отверстие для того, чтобы была возможна установка.
  • Размерность сетки по X и Размерность сетки по Y - размеры сетки, выраженные в количестве элементов контакта.
  • Шаг сетки по X и Шаг сетки по Y - расстояние (в мм) между соседними элементами контакта по осям X и Y соответственно.
  • Размер элемента по X и Размер элемента по Y - размеры (в мм) элементов контакта по осям X и Y соответственно.

Пример — см. рисунок («Пример»).

Edit <Object>

Ключ редактирует сетку <Object> посредством диалогового окна, приведенного выше.

Add <Array>

Ключ создает сетку по параметрам, заданным в массиве <Array>. Массив должен быть предварительно объявлен и заполнен.

Значения элементов в массиве:

  • <Array>[1] — тип сетки — Вал или Отверстие (0 — Отверстие, 1 — Вал);
  • <Array>[2] — размерность сетки по X;
  • <Array>[3] — размерность сетки по Y;
  • <Array>[4] — количество учитываемых контактов;
  • <Array>[5] — шаг сетки по X;
  • <Array>[6] — шаг сетки по Y;
  • <Array>[7] — размер элемента по X;
  • <Array>[8] — размер элемента по Y.

Move <Object>

Ключ позволяет перемещать объект <Object> в соответствии с правилами специальной расстановки. А именно, объект должен содержать внутри себя сетку с типом "Отверстие" и ключ позволит придать этому объекту только такое положение, при котором соблюдается условие на количество учитываемых контактов.

GridLockPrm

LOGICAL GridLockPrm(OBJECT <Object>, LOGICAL <Mode>, {String <ArrayName>| ARRAY <ArrayName>})

Функция читает (<Mode>=0) или записывает (<Mode>=1) параметры специальных правил расстановки (gridlock) в объект <Object>. При чтении (<Mode>=0) на выходе функция создает массив с именем <ArrayName> и заполняет его данными, представленными ниже. При записи (<Mode>=1) функция записывает в объект <Object> данные из массива <ArrayName>.

Содержимое массива <ArrayName>:

<ArrayName>[1]: 0 — отверстие, 1 — вал

<ArrayName>[2] — Размерность сетки по Х

<ArrayName>[3] — Размерность сетки по Y

<ArrayName>[4] — Шаг сетки по Х

<ArrayName>[5] — Шаг сетки по Y

<ArrayName>[6] — Размер элемента по Х

<ArrayName>[7] — Размер элемента по Y

Функция возвращает количество прочитанных/записанных параметров (зависит от размерности массива) или 0 в случае ошибки

GetObjByCSG

INTEGER GetObjByCSG(OBJECT <Parent>, INTEGER <TypeCSG>, STRING <ArrayName>)

Функция возвращает список объектов с заданным CSG <TypeCSG> в составе заданного объекта <Parent>.

На входe

<Parent> — ссылка на объект, в составе которого будем искать

<TypeCSG> — тип CSG (73 - GridLock)

<ArrayName> — имя создаваемого массива со списком объектов

Функция создает массив с именем <ArrayName> и возвращает количество объектов в списке. Если количество объектов равно 0, то массив <ArrayName> не создается


Макро | Мебельные команды и функции | Мебельные объекты | Указание | Создание схемы сборки | Перенумерация | Показ кромок | Показ крепежа | Расстановка крепежа и сверловки | Поиск пятен контакта | Показать информацию | Каталоги стандартных моделей | Сдвиг | Количество | Позиции | Комментарий | Классификатор мебельных элементов | Работа с комплектующими | Дополнительные материалы к модели | Специальная расстановка