FileOptions = 'Настройки.xml';
// CurBlock;
// var SideMat;
// Указываем габариты
Gab();
MakeProperties();
Action.Properties.Load(FileOptions);
Action.OnFinish = function () {
Action.Properties.Save(FileOptions);
}
BtnMake = NewButtonInput('Закончить');
BtnMake.OnChange = function () {
// Make(); //Вызываем функцию построения всех панелей
Action.Commit();
Action.Finish();
}
Make();
Action.Continue();
//свойства
function MakeProperties() {
Prop = Action.Properties;
Index = Prop.NewString('Индекс');
// Index.Visible = false;
ShelfCount = Prop.NewNumber('Кол.полок');
ShelfCount.Value = 3;
Offset = Prop.NewNumber('Зазор');
// Offset.Value = 0;
Depth = Prop.NewNumber('Загл-ние')
Depth.Value = 10;
KrmkVid = Prop.NewButt('Кромка видим');
KrmkNotVid = Prop.NewButt('Кромка не видим');
Fast = Prop.NewFurniture('Фурнитура');
OkBtn = Prop.NewButton('Закончить');
// Обработка нажатия на кнопку Построить
OkBtn.OnClick = function () {
Make(); //Вызываем функцию построения всех панелей
Action.Commit()
Action.Finish();
};
Prop.OnChange = function () {
if (Offset.Value == 0) {
KrmkNotVid.Visible = false;
}
if (Offset.Value > 0) {
KrmkNotVid.Visible = true;
}
Make();
};
}
// Поиск габаритов
function Gab() {
SetCamera(p3dFront);
LeftPanel = GetPanel('Укажите левую панель');
RightPanel = GetPanel('Укажите правую панель');
Left = LeftPanel.GabMax.x;
Right = RightPanel.GabMin.x;
Top = GetEdge('Укажите верхнюю границу', AxisX).First.y;
Bottom = GetEdge('Укажите нижнюю границу', AxisX).First.y;
SetCamera(p3dLeft);
Back = GetEdge('Укажите заднюю границу', AxisY).First.z;
Front = GetEdge('Укажите переднюю границу', AxisY).First.z;
Action.Hint = 'Укажите параметры';
}
//Построение
function Make() {
DeleteNewObjects();
// CurBlock = BeginParametricBlock("Тумба");
// Count = ShelfCount.Value;
// Thick = ActiveMaterial.Thickness;
// Panel2 = AddVertPanel(0, 0, 300, 400, 30);
Panel1 = AddHorizPanel(Left + Offset.Value, Back, Right - Offset.Value,
Front - Depth.Value, 50);
FastF = Fast.Value;
FastF.Mount(Panel1, LeftPanel, 16, 50, 64);
// PosY = Bottom;
// SectionHeight = Top - Bottom;
// YInc = Math.floor((SectionHeight - Count * Thick) / (Count + 1));
// for (var k = 0; k < Count; k++) {
// PosY += YInc;
// // Panel = AddHorizPanel(Left + Offset.Value, Back, Right - Offset.Value,
// Front - Depth.Value, PosY);
//
// if (Offset.Value == 0) {
// Panel.AddButt(KrmkVid, 2)
// }
// else {
// Panel.AddButt(KrmkNotVid, 0)
// Panel.AddButt(KrmkNotVid, 1)
// Panel.AddButt(KrmkVid, 2)
// Panel.AddButt(KrmkNotVid, 3)
// }
// FastF = Fast.Value;
// FastF.Mount(Panel, LeftPanel, 0, PosY, 64);
// ShelfFast.Mount(Panel, LeftPanel, 16, PosY, 64)
// Mount(Pan1, Pan2, x, y, z);
/*LCorner.Mount(Panel, LeftPanel, Left, PosY, Back + 32);
LCorner.Mount(Panel, RightPanel, Right, PosY, Back + 32);
LCorner.Mount(Panel, LeftPanel, Left, PosY, Front - 32);
LCorner.Mount(Panel, RightPanel, Right, PosY, Front - 32);
*/
// Panel.Build();
// PosY += Thick;
// Panel.Build();
// Panel.Name = 'Полка ' + Index.Value;
// }
// EndBlock();
SetCamera(p3dIsometric);
}
[свернуть]