Функция определения мебельных габаритных координат

Материал из K3-Macro
Макро | Мебельные команды и функции | Работа с проектом | Длинномеры | Комната | Мебельная панель | Профиль | Каркас | Виды и фильтры | Расчёт стоимости | Мебельные объекты | Работа с изделиями в сцене | Работа с мебельными состояниями | Запрос данных из Номенклатуры | Получение информации о положении вспомогательных файлов | Создание отчётов FastReport | Работа с чертежами | Пользовательские подстановки | Параметризация кривых | Приписывание мебельных позиций | Состояние мебельных пунктов меню и панелей инструментов | Определение мебельных габаритных координат | Заполнение массива параметрами отверстий | Поиск прототипа | Информация о линии свободного крепежа | Хэш-код объекта | Выгрузка информации в мебельную базу

LOGICAL MebelGab(OBJECT <Obj>, ARRAY <Gabs[6]>[, STRING ARRAY <FTArr>])

Функция определяет "мебельные" габаритные координаты изделия <Obj> и возвращает их в массив <Gabs[6]>. В массиве <FTArr> лежат FurnType тех мебельных элементов, которые не должны участвовать в определении габаритов.

"Мебельные" габариты нужны для того, чтобы в габариты изделия не попадали вспомогательные объекты типа заглушек конфирмата и пр. Поэтому в функции эти элементы можно исключить из определения габаритов.

Пример:

defarr xm[6], FT[3];
objident : obj;
NULLOUT=getsnap();
setucs lcs obj;
NULLOUT=objgab3(obj,xm);
putmsg("Геометрически");
putmsg(xm);
color 1;
box xm[1],xm[2],xm[3], xm[4],xm[5],xm[6];
NULLOUT=mebelgab(obj,xm);
putmsg("Без фильтра");
putmsg(xm);
color 2;
box xm[1],xm[2],xm[3], xm[4],xm[5],xm[6];
FT[1]="0401";
FT[2]="80";
FT[3]="0104";
NULLOUT=mebelgab(obj,xm,FT);
putmsg("C фильтром");
putmsg(xm);
color 4;
box xm[1],xm[2],xm[3], xm[4],xm[5],xm[6];
NULLOUT=resnap();
exit;

Макро | Мебельные команды и функции | Работа с проектом | Длинномеры | Комната | Мебельная панель | Профиль | Каркас | Виды и фильтры | Расчёт стоимости | Мебельные объекты | Работа с изделиями в сцене | Работа с мебельными состояниями | Запрос данных из Номенклатуры | Получение информации о положении вспомогательных файлов | Создание отчётов FastReport | Работа с чертежами | Пользовательские подстановки | Параметризация кривых | Приписывание мебельных позиций | Состояние мебельных пунктов меню и панелей инструментов | Определение мебельных габаритных координат | Заполнение массива параметрами отверстий | Поиск прототипа | Информация о линии свободного крепежа | Хэш-код объекта | Выгрузка информации в мебельную базу