Работа с мебельными изделиями в сцене
smart <Keys> <Position>
Команда smart осуществляет работу с мебельными изделиями в сцене. Это — основная команда расстановщика объектов. Возможные значение ключей <Keys>
представлены ниже.
При указании положения добавляемого изделия могут использоваться следующие способы задания положения <Position>
:
smart
— указание положения мебельного изделия с учетом уже расставленных изделий. Изделие будет "чувствовать" стены помещения и стоящие объекты.
free
— указание положения мебельного изделия без учета уже расставленных изделий.
cont
— (только в режимеsmart
) при указании положения осуществляется контроль того, чтобы в своем новом положении изделие находилось внутри помещения
nocont
— (только в режимеsmart
) при указании положения не осуществляется контроль того, чтобы в своем новом положении изделие находилось внутри помещения
fixlev
— (только в режимеsmart
) при расстановке настенных изделий уровень установки должен быть предварительно определен.
nofixlev
— (только в режимеsmart
) при расстановке настенных изделий уровень установки не должен быть предварительно определен.
island
— (только в режимеsmart
) при расстановки элементов на полу, они "чувствуют" задние стенки и образуют "островные участки"
exactly
— (только в режимеsmart
) точка установки изделия определяется путем ввода с клавиатуры расстояний от изделия до соседних объектов. Ввод осуществляется в диалоговом окне.
rotate <Angle>
— (только в режимеsmart
) задание угла поворота<Angle>
относительно оси OZ, проходящей через центр габаритов изделия.
mvto <Object>
— (только в режимеsmart
) задание положения в плоскости XOY относительно объекта<Object>
.
mvup <Object>
— (только в режимеsmart
) задание положения в плоскости XOZ и YOZ относительно объекта<Object>
.
aroundgap <GapNum> <GapValue>
— (только в режимеsmart
) задание зазоров при расстановке мебельных изделий. Если параметры<GapNum> <GapValue>
опущены, то ввод зазоров осуществляется в диалоговом окне.
иначе:
<GapNum>
= 1 — зазор слева;
<GapNum>
= 2 — зазор справа;
<GapNum>
= 3 — зазор сзади;
<GapNum>
= 4 — зазор спереди;
<GapNum>
= 5 — зазор снизу;
<GapNum>
= 6 — зазор сверху.
Постобработка[править | править код]
При добавлении и замене изделий существует возможность автоматического запуска макропрограммы постобработки, которая может произвести с объектом специфичекие действия. Имя макропрограммы постобработки — APostProc.mac. Находиться макропрограмма должна в папке, где находится mebel.exe (по умолчанию, папка BIN).
Макропрограмма постообработки принимает на вход один параметр Mode который
- равен 0 при добавлении изделия
- равен 1 при замене изделия
Для доступа к заменяемому изделию используется функцию RepObj()
. Для доступа к добавленному и заменяющему изделию используестся ключ доступа к последнему созданному объекту last 1
Пример APostProc.mac
putmsg("Запуск макроса постобработки...",1); getpar Mode; // Режим (добавление/замена) if (Mode==0) // добавили изделие (last 1 — добавляемый объект) { putmsg("Добавляем изделие"); } else // заменили изделие (RepObj() — заменяемый объект; last 1 — заменяющий объект) { putmsg("Заменяем изделие"); }
Добавление изделия[править | править код]
smart add <File>
Команда добавляет в сцену мебельное изделие пр помощи диалогового окна.
Поскольку данная команда использует диалоговое окно, применять эту команду в макропрограммах не рекомендуется.
Перемещение и копирование изделий[править | править код]
smart {move | copy} <Object> <Position>
Команда перемещает (move
) или копирует (copy
) изделие <Object>
в позицию <Position>
.
Замена изделия[править | править код]
smart replace <Object1> <Object2>
Команда заменяет изделие <Object1>
на изделие <Object>
. Выбор изделия <Object2>
осуществляется при помощи диалогового окна. (см. выше «Добавление изделия»).
Поскольку данная команда использует диалоговое окно, применять эту команду в макропрограммах не рекомендуется.
Редактирование изделия[править | править код]
smart edit [list] <Object> <Params>
Команда редактирует изделие <Object>
при помощи диалогового окна <Object>
или при помощи списка параметров со значениями <Params>
(ключ list
).
Список параметров <Params>
задается последовательным перечислением пар, состоящих из имени параметра и значения параметра.
Удаление изделия[править | править код]
smart delete <Object>
Команда удаляет изделие <Object>
.
Присвоение номера позиции[править | править код]
smart putpos <Object>
Команда присваивает позицию изделию <Object>
. Вместе с присвоением позиции у изделия гасятся линии контакта и прочие вспомогательные элементы.
Сдвиг мебельных объектов[править | править код]
Чтобы сдвинуть объект на вектор, есть команда, отдельная от команды smart.
lcmove move <Objects> <Vector>
Команда lcmove сдвигает мебельные объекты на величину вектора <Objects>
.
lcmove center <Objects1> <Objects2> <Vector>
Команда центрирует объекты <Objects2>
по объектам <Objects1>
в направлении вектора <Vector>
.