MakeProperties();
FileOptionsPolka1Dver = 'Polka1Dver.xml';
var startAngle = 0;
if (!ParametricBlock) {
Action.Properties.Load(FileOptionsPolka1Dver);
Action.OnFinish = function() {
Action.Properties.Save(FileOptionsPolka1Dver);
}
} else {
Action.Properties.Load(FileOptionsPolka1Dver);
}
Action.Continue();
function MakeProperties() {
Prop = Action.Properties;
Seperator = Prop.NewSeparator();
GabRaz = Prop.NewGroup('Габаритные размеры изделия по корпусу');
KH = GabRaz.NewNumber('Высота', 720);
KB = GabRaz.NewNumber('Ширина', 600);
KT = GabRaz.NewNumber('Глубина', 300);
Seperator = GabRaz.NewSeparator();
Konstruktiv = Prop.NewGroup('Конструктивные изменения');
Paz = Konstruktiv.NewNumber('Паз', 18);
BigLevBok = Konstruktiv.NewNumber('Увеличить левую боковину на ...', 0);
BigPravBok = Konstruktiv.NewNumber('Увеличить правую боковину на ...', 0);
Seperator = Konstruktiv.NewSeparator();
}
OkBtn = Prop.NewButton('Построить');
OkBtn.OnClick = function() {
Action.Properties.Save(FileOptionsPolka1Dver);
Action.Finish();
}
Action.OnStart = function() {
//обработка событий в любых полях ввода свойства
Prop.OnChange = Primenit;
Primenit();
}
Action.Continue();
function Primenit() {
Make();
}
function Make() {
DeleteNewObjects();
BL = BeginParametricBlock('Полка 1 дверь');
// устанавливаем детали корпуса
UstanovkaLevBokPazZamer(); // устанавливаем левую боковину
UstanovkaPravBokPazZamer(); // устанавливаем правую боковину
UstanovkaDnoPazZamer(); // устанавливаем нижний горизонт
UstanovkaVerhPazZamer(); // устанавливаем верхний горизонт
UstanovkaZadnStenkaPolkaPazZamer(); // устанавливаем заднюю стенку ДВП
EndParametricBlock();
}
function UstanovkaLevBokPazZamer() {
// Определяем материал детали
ActiveMaterial.Make('ДСП основного корпуса\rДСП', 16.5);
// Устанавливаем левую боковину
LevBok = AddVertPanel(-BigLevBok.Value, 0, KT.Value, KH.Value, 0);
LevBok.TextureOrientation = TextureOrientation.Vertical;
// Строим паз
CutLevBok = LevBok.AddCut('паз');
CutLevBok.Trajectory.AddLine(BigLevBok.Value + Paz.Value, 0, BigLevBok.Value + Paz.Value, KH.Value);
CutLevBok.Contour.AddRectangle(0, 0, -4, 8);
// Указываем дополнительные свойства
LevBok.Name = 'Боковина левая';
LevBok.ArtPos = '1';
LevBok.Build();
}
// устанавливаем правую боковину
function UstanovkaPravBokPazZamer() {
// Определяем материал боковины
ActiveMaterial.Make('ДСП основного корпуса\rДСП', 16.5);
// Устанавливаем правую боковину
PravBok = AddVertPanel(-BigPravBok.Value, 0, KT.Value, KH.Value, KB.Value - ActiveMaterial.Thickness);
PravBok.TextureOrientation = TextureOrientation.Vertical;
// Строим паз
CutPravBok = PravBok.AddCut('паз');
CutPravBok.Trajectory.AddLine(BigPravBok.Value + Paz.Value, 0, BigPravBok.Value + Paz.Value, KH.Value);
CutPravBok.Contour.AddRectangle(0, PravBok.Thickness, -4, PravBok.Thickness - 8);
// Указываем дополнительные свойства
PravBok.Name = 'Боковина правая';
PravBok.ArtPos = '2';
PravBok.Build();
}
// устанавливаем дно
function UstanovkaDnoPazZamer() {
// Определяем материал детали
ActiveMaterial.Make('ДСП основного корпуса\rДСП', 16.5);
// Устанавливаем нижний горизонт
Dno = AddHorizPanel(LevBok.Thickness, 0, KB.Value - PravBok.Thickness, KT.Value, 0);
Dno.TextureOrientation = TextureOrientation.Horizontal;
// Строим паз
CutDno = Dno.AddCut('Паз');
CutDno.Trajectory.AddLine(0, -Paz.Value, KB.Value - (PravBok.Thickness + LevBok.Thickness), -Paz.Value);
CutDno.Contour.AddRectangle(0, Dno.Thickness, -4, Dno.Thickness - 8);
// Указываем дополнительные свойства
Dno.Name = 'Нижний горизонт';
Dno.ArtPos = '3';
Dno.Build();
}
// устанавливаем верх
function UstanovkaVerhPazZamer() {
// Определяем материал детали
ActiveMaterial.Make('ДСП основного корпуса\rДСП', 16.5);
// устанавливаем верхний горизонт
Verh = AddHorizPanel(LevBok.Thickness, 0, KB.Value - PravBok.Thickness, KT.Value, KH.Value - Dno.Thickness);
Verh.TextureOrientation = TextureOrientation.Horizontal;
// Строим паз
CutVerh = Verh.AddCut('Паз');
CutVerh.Trajectory.AddLine(0, -Paz.Value, KB.Value - (PravBok.Thickness + LevBok.Thickness), -Paz.Value);
CutVerh.Contour.AddRectangle(0, 0, -4, 8);
// Указываем дополнительные свойства
Verh.Name = 'Верхний горизонт';
Verh.ArtPos = '4';
Verh.Build();
}
// устанавливаем заднюю стенку ДВП
function UstanovkaZadnStenkaPolkaPazZamer() {
// Определяем материал детали
ActiveMaterial.Make('ДВП ламинированная\rДВП', 4);
// Устанавливаем заднюю стенку из ДВП
ZadnStenkaDVP = AddFrontPanel(LevBok.Thickness - 7, Dno.Thickness - 7, (KB.Value - PravBok.Thickness) + 7, KH.Value - 9.5, Paz.Value);
ZadnStenkaDVP.TextureOrientation = TextureOrientation.Vertical;
// Указываем дополнительные свойства
ZadnStenkaDVP.Name = 'Задняя стенка ДВП';
ZadnStenkaDVP.ArtPos = '8';
ZadnStenkaDVP.Build();
}
[свернуть]