Показать сообщение отдельно
Старый 25.05.2017, 17:37   #1342
sx233077
Новичок
 
Регистрация: 11.11.2013
Сообщений: 12
Сказал(а) спасибо: 7
Поблагодарили 10 раз(а) в 2 сообщениях
Вес репутации: 0
sx233077 на пути к лучшему
По умолчанию

Добрый день!

Никто не хочет поделится скриптом для установки ящиков, пытаюсь что то сделать сам.

Помогите ящик притянуть фасаду, или может подскажете другой вариант установки ящиков

Скрипт

FileOptions = 'Настройки_scrypt4.xml';
MakeProperties();
Action.Properties.Load(FileOptions);
Action.OnFinish = function() {
Action.Properties.Save(FileOptions);
}

Action.Continue();

function MakeProperties() {
Prop = Action.Properties;

Tumba = Prop.NewCombo('Меню', 'Корпус\nДверцята\nПолка\nСтільниця\nМатериалы\nФурнітура\nИнформация');
Korpus = Prop.NewGroup('Розміри');
Korpus.Visible = true;//ВИДИМОСТЬ ГРУППЫ
h2 = Korpus.NewNumber('Висота', 860);
t = Korpus.NewNumber('Ширина', 600);
z2 = Korpus.NewNumber('Глибина', 510);
// = Korpus.NewNumber('Відступ від стіни', 0);
h1 = Korpus.NewNumber('Висота ножки', 100);
Dop = Korpus. NewCombo ('Конструкція секції', 'Стандартна\nЛіва сторона видима\nПрава сторона видима\nВидимі обидві сторони');
Dop.Expanded = true;//ВИДИМОСТЬ ГРУП


Standart = Dop.NewGroup('Стандарна');
Standart.Visible = false;//ВИДИМОСТЬ ГРУППЫ

LivaVydyma=Dop.NewGroup('Ліва сторона видима');
LivaVydyma.Visible = false;//ВИДИМОСТЬ ГРУППЫ

PravaVydyma=Dop.NewGroup('Права сторона видима');
PravaVydyma.Visible = false;//ВИДИМОСТЬ ГРУППЫ

LivaPravaVydyma=Dop.NewGroup('Видимі обидві сторони');
LivaPravaVydyma.Visible = false;//ВИДИМОСТЬ ГРУППЫ

Material = Prop.NewGroup('Материалы');
Material.Visible = false;//ВИДИМОСТЬ ГРУППЫ
Mat = Material.NewMaterial('Корпус');
KromkaVydyma = Material.NewButt('Видима крайка');
KromkaNevydyma = Material.NewButt('Невидима крайка');
MatZadSt = Material.NewMaterial('Задня стінка');
MatDop = Material.NewGroup('Додатково');
MatDop.Expanded = false;//ВИДИМОСТЬ ГРУППЫ
MatDvp = MatDop.NewMaterial('Дно ящика');
MatZc = MatDop.NewMaterial('Задня стінка');







/*
//группа фасад
Doors = Prop.NewBool('Дверцята')
Doors.Visible = false;//ВИДИМОСТЬ ГРУППЫ
Doors.Value = true ;
Doors.OnChange = function() {
Doors.ChildrenEnabled = Doors.Value
}
MatFas = Doors.NewMaterial('Матеріал')

ButtD = Doors.NewBool('Кромка')
ButtD.Value = true
ButtD.OnChange = function() {
ButtD.ChildrenEnabled = ButtD.Value
}
MatButtD = ButtD.NewButt('Кромка')

KolDv = Doors.NewCombo('К-сть дверей', '1\n2')
PetliLeftRight = Doors.NewCombo('Завіси', 'Слева\nСправа');


if (t.Value > 600)
{
PetliLeftRight.Enabled = false;
KolDv.Enabled = false;
}
else
{
if (t.Value == 600)
{
KolDv.Enabled = true;
if (KolDv.ItemIndex == 0)
PetliLeftRight.Enabled = true;
else
PetliLeftRight.Enabled = false;
}
else
{
KolDv.Enabled = false;
PetliLeftRight.Enabled = true;
}
}

*/
//группа столешница
Stolesh = Prop.NewBool('Стільниця')
Stolesh.Visible = false;//ВИДИМОСТЬ ГРУППЫ
Stolesh.Value = true
Stolesh.OnChange = function() {
Stolesh.ChildrenEnabled = Stolesh.Value
}
MatStol = Stolesh.NewMaterial('Матеріал')





/*

//группа вставная полка
PolkaVs = Prop.NewBool('Полка')
PolkaVs.Visible = false;//ВИДИМОСТЬ ГРУППЫ
PolkaVs.Value = true
PolkaVs.OnChange = function() {
PolkaVs.ChildrenEnabled = PolkaVs.Value
}
//CountPol = PolkaVs.NewNumber('Количество')
//CountPol.Value = 1
ShelfOffset = PolkaVs.NewNumber('Відступ з боків');
ShelfOffset.Value = 1.5
ShelfZag = PolkaVs.NewNumber('Відступ від лиця')
ShelfZag.Value = 20
*/

Furnitura = Prop.NewGroup('Фурнітура');
Furnitura.Visible = false;//ВИДИМОСТЬ ГРУППЫ
Zavisa = Furnitura.NewFurniture('Завіса');
Polycetrymach = Furnitura.NewFurniture('Полицетримач');
Konfirmat = Furnitura.NewFurniture('Конфірмат');
Minifix = Furnitura.NewFurniture('Minifix');
Shkant = Furnitura.NewFurniture('Шкант');
Opora = Furnitura.NewFurniture('Ножка');
Ruchky = Furnitura.NewFurniture('Ручка');
Angle = Furnitura.NewCombo('Кут повороту ручки', '0\n90')


Info = Prop.NewGroup('Інформація');
Info.Visible = false;//ВИДИМОСТЬ ГРУППЫ
VFas = Info.NewString('Высота фасада');
VFas.Expanded = false;
VYaz = Info.NewString('Высота ящика');
VYaz.Expanded = false;
NapYaz = Info.NewString('Длина направл');
NapYaz.Expanded = false;

OkBtn = Prop.NewButton('Побудувати'); //Обработка нажатия на кнопку Построить

OkBtn.OnClick = function() {
//Make(); //Вызываем функцию построения всех панелей
Action.Finish();
};

};
Prop.OnChange = function() { //Обработка любого изменения значений свойств
switch (Tumba.ItemIndex) {
case 0:
Korpus.Visible = true;
//Doors.Visible = false;
// PolkaVs.Visible = false;
Stolesh.Visible = false;
Material.Visible = false;
Furnitura.Visible = false;
Info.Visible = false;
break;

case 1:
Korpus.Visible = false;
//Doors.Visible = true;
//PolkaVs.Visible = false;
Stolesh.Visible = false;
Material.Visible = false;
Furnitura.Visible = false;
Info.Visible = false;
break;

case 2:
Korpus.Visible = false;
//Doors.Visible = false;
//PolkaVs.Visible = true;
Stolesh.Visible = false;
Material.Visible = false;
Furnitura.Visible = false;
Info.Visible = false;
break;

case 3:
Korpus.Visible = false;
//Doors.Visible = false;
// PolkaVs.Visible = false;
Stolesh.Visible = true;
Material.Visible = false;
Furnitura.Visible = false;
Info.Visible = false;
break;

case 4:
Korpus.Visible = false;
//Doors.Visible = false;
//PolkaVs.Visible = false;
Stolesh.Visible = false;
Material.Visible = true;
Furnitura.Visible = false;
Info.Visible = false;
break;

case 5:
Korpus.Visible = false;
//Doors.Visible = false;
//PolkaVs.Visible = false;
Stolesh.Visible = false;
Material.Visible = false;
Furnitura.Visible = true;
Info.Visible = false;
break;

case 6:
Korpus.Visible = false;
//Doors.Visible = false;
//PolkaVs.Visible = false;
Stolesh.Visible = false;
Material.Visible = false;
Furnitura.Visible = false;
ble = true;
break;

};


switch (Dop.ItemIndex) {
case 0:
Standart.Visible = true;
LivaVydyma.Visible = false;
PravaVydyma.Visible = false;
LivaPravaVydyma.Visible = false;
break;

case 1:
Standart.Visible = false ;
LivaVydyma.Visible = true ;
PravaVydyma .Visible = false;
LivaPravaVydyma.Visible = false;
break;

case 2:
Standart.Visible = false ;
LivaVydyma.Visible = false ;
PravaVydyma .Visible = true ;
LivaPravaVydyma.Visible = false;
break;

case 3:
Standart.Visible = false ;
LivaVydyma.Visible = false ;
PravaVydyma .Visible = false;
LivaPravaVydyma.Visible = true;
break;
};




Make(); //Вызываем функцию построения всех панелей
};
Make();

function Make() {
DeleteNewObjects();

NameBL = 'Секція ';
BeginParametricBlock(NameBL + t.Value);




Mat.SetActive(); // Установить материал активным.Все последующие элементы будут построены из этого материала.
Thick = ActiveMaterial.Thickness; // Thickness - Толщина материала корпуса.
//Побудова тумбочки

if (Dop.ItemIndex === 0) {
LeftPanel = AddVertPanel(0, h1.Value + Thick, z2.Value, h2.Value, 0); LeftPanel.Name = "Боковина лiва"; LeftPanel.TextureOrientation = TextureOrientation.Vertical;///установка левого бока
RightPanel =AddVertPanel(0, h1.Value + Thick, z2.Value, h2.Value, t.Value - Thick);RightPanel .Name = "Боковина права";RightPanel.TextureOrientation = TextureOrientation.Vertical;///установка правого бока
Dno = AddHorizPanel(0, 0, t.Value, z2.Value, h1.Value);Dno.Name = "Дно"; Dno.TextureOrientation = TextureOrientation.Horizontal// установка дна
Cokol = AddFrontPanel(0, 0, t.Value, h1.Value - 5, z2.Value - 36 );Cokol.Name = "Цоколь"; Cokol.TextureOrientation = ftoHorizontal;//установка цоколя
PlankaZ = AddHorizPanel(Thick, 0, t.Value - Thick, 80, h2.Value - Thick ); PlankaZ.Name = "Планка задня"; PlankaZ.TextureOrientation = ftoHorizontal; //установка задней планки
PlankaP = AddHorizPanel(Thick, z2.Value, t.Value - Thick, z2.Value - 80, h2.Value - Thick);PlankaP.Name = "Планка передня"; PlankaP.TextureOrientation = ftoHorizontal;//установка передней планки
MatZadSt.SetActive();
ZadSt = AddFrontPanel (0 + 1.5, h1.Value + 1.5, t.Value -1.5, h2.Value - 1.5, 0 - 3);ZadSt.Name = "Задня стінка"; ZadSt.TextureOrientation = ftoVertical;//установка задньої стінки
LeftPanel.AddButt(KromkaNevydyma, 0);
LeftPanel.AddButt(KromkaVydyma, 1);
LeftPanel.AddButt(KromkaNevydyma, 2);
LeftPanel.AddButt(KromkaNevydyma, 3);
RightPanel.AddButt(KromkaNevydyma, 0);
RightPanel.AddButt(KromkaVydyma, 1);
RightPanel.AddButt(KromkaNevydyma, 2);
RightPanel.AddButt(KromkaNevydyma, 3);
Dno.AddButt(KromkaNevydyma, 0);
Dno.AddButt(KromkaNevydyma, 1);
Dno.AddButt(KromkaVydyma, 2);
Dno.AddButt(KromkaNevydyma, 3);
Cokol.AddButt(KromkaNevydyma, 0);
Cokol.AddButt(KromkaNevydyma, 1);
Cokol.AddButt(KromkaNevydyma, 2);
Cokol.AddButt(KromkaNevydyma, 3);
PlankaZ.AddButt(KromkaNevydyma, 0);
PlankaZ.AddButt(KromkaNevydyma, 1);
PlankaZ.AddButt(KromkaNevydyma, 2);
PlankaZ.AddButt(KromkaNevydyma, 3);
PlankaP.AddButt(KromkaVydyma, 0);
PlankaP.AddButt(KromkaNevydyma, 1);
PlankaP.AddButt(KromkaNevydyma, 2);
PlankaP.AddButt(KromkaNevydyma, 3);
}
if (Dop.ItemIndex === 1) {
LeftPanel = AddVertPanel(0 - (600-36-z2.Value) , 0, z2.Value, h2.Value, 0); LeftPanel.Name = "Боковина лiва"; LeftPanel.TextureOrientation = TextureOrientation.Vertical;///установка левого бока
Cut1 = LeftPanel.AddCut('Паз (8х4)'); //Паз на ліву панель
Cut1.Trajectory.AddLine((600-36-z2.Value) - 2, 0, (600-36-z2.Value) - 2, LeftPanel.ContourHeight);
Cut1.Contour.AddRectangle(-2, 0, 2, 8);
RightPanel = AddVertPanel(0, h1.Value + Thick, z2.Value, h2.Value, t.Value - Thick);RightPanel .Name = "Боковина права";RightPanel.TextureOrientation = TextureOrientation.Vertical;///установка правого бока
Dno = AddHorizPanel(Thick, 0, t.Value, z2.Value, h1.Value);Dno.Name = "Дно"; Dno.TextureOrientation = TextureOrientation.Horizontal// установка дна
Cokol = AddFrontPanel(Thick, 0, t.Value, h1.Value - 5, z2.Value - 36 );Cokol.Name = "Цоколь"; Cokol.TextureOrientation = ftoHorizontal;//установка цоколя
PlankaZ = AddHorizPanel(Thick, 0, t.Value - Thick, 80, h2.Value - Thick ); PlankaZ.Name = "Планка задня"; PlankaZ.TextureOrientation = ftoHorizontal; //установка задней планки
PlankaP = AddHorizPanel(Thick, z2.Value, t.Value - Thick, z2.Value - 80, h2.Value - Thick);PlankaP.Name = "Планка передня"; PlankaP.TextureOrientation = ftoHorizontal;//установка передней планки
MatZadSt.SetActive();
ZadSt = AddFrontPanel (0 + 10.5, h1.Value + 1.5, t.Value -1.5, h2.Value - 1.5, 0 - 3);ZadSt.Name = "Задня стінка"; ZadSt.TextureOrientation = ftoVertical;//установка задньої стінки
LeftPanel.AddButt(KromkaNevydyma, 0);
LeftPanel.AddButt(KromkaVydyma, 1);
LeftPanel.AddButt(KromkaNevydyma, 2);
LeftPanel.AddButt(KromkaNevydyma, 3);
RightPanel.AddButt(KromkaNevydyma, 0);
RightPanel.AddButt(KromkaVydyma, 1);
RightPanel.AddButt(KromkaNevydyma, 2);
RightPanel.AddButt(KromkaNevydyma, 3);
Dno.AddButt(KromkaNevydyma, 0);
Dno.AddButt(KromkaNevydyma, 1);
Dno.AddButt(KromkaVydyma, 2);
Dno.AddButt(KromkaNevydyma, 3);
Cokol.AddButt(KromkaNevydyma, 0);
Cokol.AddButt(KromkaNevydyma, 1);
Cokol.AddButt(KromkaNevydyma, 2);
Cokol.AddButt(KromkaNevydyma, 3);
PlankaZ.AddButt(KromkaNevydyma, 0);
PlankaZ.AddButt(KromkaNevydyma, 1);
PlankaZ.AddButt(KromkaNevydyma, 2);
PlankaZ.AddButt(KromkaNevydyma, 3);
PlankaP.AddButt(KromkaVydyma, 0);
PlankaP.AddButt(KromkaNevydyma, 1);
PlankaP.AddButt(KromkaNevydyma, 2);
PlankaP.AddButt(KromkaNevydyma, 3);
}
if (Dop.ItemIndex === 2) {
LeftPanel = AddVertPanel(0, h1.Value + Thick, z2.Value, h2.Value, 0); LeftPanel.Name = "Боковина лiва"; LeftPanel.TextureOrientation = TextureOrientation.Vertical;///установка левого бока
RightPanel =AddVertPanel(0 - (600-36-z2.Value), 0, z2.Value, h2.Value, t.Value - Thick);RightPanel .Name = "Боковина права";RightPanel.TextureOrientation = TextureOrientation.Vertical;///установка правого бока
Cut2 = RightPanel.AddCut('Паз (8х4)');//Паз на праву панель
Cut2.Trajectory.AddLine((600-36-z2.Value) - 2, 0, (600-36-z2.Value) - 2, RightPanel.ContourHeight);
Cut2.Contour.AddRectangle(-2, RightPanel.Thickness, 2, RightPanel.Thickness - 8);
Dno = AddHorizPanel(0, 0, t.Value - Thick, z2.Value, h1.Value);Dno.Name = "Дно"; Dno.TextureOrientation = TextureOrientation.Horizontal// установка дна
Cokol = AddFrontPanel(0, 0, t.Value - Thick, h1.Value - 5, z2.Value - 36 );Cokol.Name = "Цоколь"; Cokol.TextureOrientation = ftoHorizontal;//установка цоколя
PlankaZ = AddHorizPanel(Thick, 0, t.Value - Thick, 80, h2.Value - Thick ); PlankaZ.Name = "Планка задня"; PlankaZ.TextureOrientation = ftoHorizontal; //установка задней планки
PlankaP = AddHorizPanel(Thick, z2.Value, t.Value - Thick, z2.Value - 80, h2.Value - Thick);PlankaP.Name = "Планка передня"; PlankaP.TextureOrientation = ftoHorizontal;//установка передней планки
MatZadSt.SetActive();
ZadSt = AddFrontPanel (0 + 1.5, h1.Value + 1.5, t.Value -10.5, h2.Value - 1.5, 0 - 3);ZadSt.Name = "Задня стінка"; ZadSt.TextureOrientation = ftoVertical;//установка задньої стінки
LeftPanel.AddButt(KromkaNevydyma, 0);
LeftPanel.AddButt(KromkaVydyma, 1);
LeftPanel.AddButt(KromkaNevydyma, 2);
LeftPanel.AddButt(KromkaNevydyma, 3);
RightPanel.AddButt(KromkaNevydyma, 0);
RightPanel.AddButt(KromkaVydyma, 1);
RightPanel.AddButt(KromkaNevydyma, 2);
RightPanel.AddButt(KromkaNevydyma, 3);
Dno.AddButt(KromkaNevydyma, 0);
Dno.AddButt(KromkaNevydyma, 1);
Dno.AddButt(KromkaVydyma, 2);
Dno.AddButt(KromkaNevydyma, 3);
Cokol.AddButt(KromkaNevydyma, 0);
Cokol.AddButt(KromkaNevydyma, 1);
Cokol.AddButt(KromkaNevydyma, 2);
Cokol.AddButt(KromkaNevydyma, 3);
PlankaZ.AddButt(KromkaNevydyma, 0);
PlankaZ.AddButt(KromkaNevydyma, 1);
PlankaZ.AddButt(KromkaNevydyma, 2);
PlankaZ.AddButt(KromkaNevydyma, 3);
PlankaP.AddButt(KromkaVydyma, 0);
PlankaP.AddButt(KromkaNevydyma, 1);
PlankaP.AddButt(KromkaNevydyma, 2);
PlankaP.AddButt(KromkaNevydyma, 3);
}

if (Dop.ItemIndex === 3) {

LeftPanel = AddVertPanel(0 - (600-36-z2.Value), 0, z2.Value, h2.Value, 0); LeftPanel.Name = "Боковина лiва"; LeftPanel.TextureOrientation = TextureOrientation.Vertical;///установка левого бока
Cut1 = LeftPanel.AddCut('Паз (8х4)'); //Паз на ліву панель
Cut1.Trajectory.AddLine((600-36-z2.Value) - 2, 0, (600-36-z2.Value) - 2, LeftPanel.ContourHeight);
Cut1.Contour.AddRectangle(-2, 0, 2, 8);
RightPanel =AddVertPanel(0 - (600-36-z2.Value), 0, z2.Value, h2.Value, t.Value - Thick);RightPanel .Name = "Боковина права";RightPanel.TextureOrientation = TextureOrientation.Vertical;///установка правого бока
Cut2 = RightPanel.AddCut('Паз (8х4)');//Паз на праву панель
Cut2.Trajectory.AddLine((600-36-z2.Value) - 2, 0, (600-36-z2.Value) - 2, RightPanel.ContourHeight);
Cut2.Contour.AddRectangle(-2, RightPanel.Thickness, 2, RightPanel.Thickness - 8);
Dno = AddHorizPanel(Thick, 0, t.Value - Thick, z2.Value, h1.Value);Dno.Name = "Дно"; Dno.TextureOrientation = TextureOrientation.Horizontal// установка дна
Cokol = AddFrontPanel(Thick, 0, t.Value - Thick, h1.Value - 5, z2.Value - 36 );Cokol.Name = "Цоколь"; Cokol.TextureOrientation = ftoHorizontal;//установка цоколя
PlankaZ = AddHorizPanel(Thick, 0, t.Value - Thick, 80, h2.Value - Thick ); PlankaZ.Name = "Планка задня"; PlankaZ.TextureOrientation = ftoHorizontal; //установка задней планки
PlankaP = AddHorizPanel(Thick, z2.Value, t.Value - Thick, z2.Value - 80, h2.Value - Thick);PlankaP.Name = "Планка задня"; PlankaP.TextureOrientation = ftoHorizontal;//установка передней планки
MatZadSt.SetActive();
ZadSt = AddFrontPanel (0 + 10.5, h1.Value + 1.5, t.Value -10.5, h2.Value - 1.5, 0 - 3);ZadSt.Name = "Задня стінка"; ZadSt.TextureOrientation = ftoVertical;//установка задньої стінки
LeftPanel.AddButt(KromkaNevydyma, 0);
LeftPanel.AddButt(KromkaVydyma, 1);
LeftPanel.AddButt(KromkaNevydyma, 2);
LeftPanel.AddButt(KromkaNevydyma, 3);
RightPanel.AddButt(KromkaNevydyma, 0);
RightPanel.AddButt(KromkaVydyma, 1);
RightPanel.AddButt(KromkaNevydyma, 2);
RightPanel.AddButt(KromkaNevydyma, 3);
Dno.AddButt(KromkaNevydyma, 0);
Dno.AddButt(KromkaNevydyma, 1);
Dno.AddButt(KromkaVydyma, 2);
Dno.AddButt(KromkaNevydyma, 3);
Cokol.AddButt(KromkaNevydyma, 0);
Cokol.AddButt(KromkaNevydyma, 1);
Cokol.AddButt(KromkaNevydyma, 2);
Cokol.AddButt(KromkaNevydyma, 3);
PlankaZ.AddButt(KromkaNevydyma, 0);
PlankaZ.AddButt(KromkaNevydyma, 1);
PlankaZ.AddButt(KromkaNevydyma, 2);
PlankaZ.AddButt(KromkaNevydyma, 3);
PlankaP.AddButt(KromkaVydyma, 0);
PlankaP.AddButt(KromkaNevydyma, 1);
PlankaP.AddButt(KromkaNevydyma, 2);
PlankaP.AddButt(KromkaNevydyma, 3);
}

//- схеми монтажу фурнітури
function Minifix_Zadnii(Panel1, Panel2, X, Y, Z, Sdvig) {
Minifix.Value.Mount(Panel1, Panel2, X, Y, Z);
Shkant.Value.Mount(Panel1, Panel2, X, Y, Z + 32);
}
function Minifix_Perednii(Panel1, Panel2, X, Y, Z, Sdvig) {
Minifix.Value.Mount(Panel1, Panel2, X, Y, Z);
Shkant.Value.Mount(Panel1, Panel2, X, Y, Z - 32);
}
function Minifix_Pravyi(Panel1, Panel2, X, Y, Z, Sdvig) {
Minifix_Right.Value.Mount(Panel1, Panel2, X, Y, Z);
ShkantR.Value.Mount(Panel1, Panel2, X, Y, Z + 32);
}
function Konfirmat_Standart(Panel1, Panel2, X, Y, Z, Sdvig) {
Konfirmat.Value.Mount(Panel1, Panel2, X, Y, Z);
}

/*
function Ruchka(Panel, X, Y, Z, S) {
Ruchky.Value.Mount1(Panel, X, Y, Z, S)
}
if (Angle.ItemIndex === 0){
Fi = 0;
}else{
Fi = 90;
}


function Petlya(DverL, DverR , X, Y, Z) {
Zavisa.Value.Mount(DverL, DverR , X, Y, Z);
}


function PetliLeft() {
Petlya(LeftPanel, (DverL || DverR || DverL1), Thick, h1.Value + 100, Thick, t.Value - Fuga);
Petlya(LeftPanel, (DverL || DverR || DverL1), Thick, h2.Value - Fuga1 - 100, Thick, t.Value - Fuga );
}

function PetliRight() {
Petlya(RightPanel, (DverL || DverR || DverL1), Thick , h1.Value + 100, Thick, t.Value - Fuga );
Petlya(RightPanel, (DverL || DverR || DverL1), Thick , h2.Value - Fuga1 - 100, Thick, t.Value - Fuga );
}

if (PolkaVs.Value == true) {

//Высота проема в секции
Hp = h2.Value - Thick - h1.Value - Thick;
//Высота полки в проеме
Hp = Hp / 2 - 0.5 * Thick;
//Высота полки в глобальной системе координат
Hp = Hp + h1.Value + Thick;
Mat.SetActive()
Polka = AddHorizPanel(Thick + ShelfOffset.Value, 0, t.Value - Thick - ShelfOffset.Value, z2.Value - ShelfZag.Value, Hp);
//Присваиваем панели имя
Polka.Name = 'Полка';
Polka.AddButt(KromkaNevydyma, 0);
Polka.AddButt(KromkaNevydyma, 1);
Polka.AddButt(KromkaVydyma, 2)
Polka.AddButt(KromkaNevydyma, 3);

Polkodergatel = Polycetrymach.Value;
Ost = (z2.Value - 37 - 40) % 32;
k = ((z2.Value - 37 - 40) - Ost) / 32;
Dz = z2.Value - 37 - k * 32;
Dz1 = z2.Value - ShelfZag.Value - 37 - 32;
Polkodergatel.Mount(Polka, LeftPanel, 2 * Thick, Hp, Dz);
Polkodergatel.Mount(Polka, LeftPanel, 2 * Thick, Hp, Dz1);
Polkodergatel.Mount(Polka, RightPanel, 2 * Thick, Hp, Dz);
Polkodergatel.Mount(Polka, RightPanel, 2 * Thick, Hp, Dz1);

}
*/
if (Stolesh.Value == true) {
MatStol.SetActive()
Stol = AddHorizPanel(0,0 - (600-z2.Value-36), t.Value, z2.Value + 36, h2.Value);Stol.Name = "Cтільниця"; Stol.TextureOrientation = TextureOrientation.Horizontal// установка дна
Stol.Name = 'Столешница';

}



Block = BeginBlock("Кріплення")

//-----НОЖКИ----
Opor = Opora.Value;
Opor.Mount1(Dno, 0 + 48, -10, z2.Value -66, 0);
Opor.Mount1(Dno, 0 + 48, -10, 0 + 80, 0);
Opor.Mount1(Dno, t.Value - 48, -10, z2.Value - 66, 0);
Opor.Mount1(Dno, t.Value - 48, -10, 0 + 80, 0);

if (Dop.ItemIndex === 0) {
Konfirmat_Standart (LeftPanel, Dno, 0, 0, 50);
Konfirmat_Standart (LeftPanel, Dno, 0, 0, z2.Value - 50 );
Konfirmat_Standart (RightPanel, Dno, 0, 0, 50);
Konfirmat_Standart (RightPanel, Dno, 0, 0, z2.Value - 50 );
Konfirmat_Standart (PlankaZ, LeftPanel, 0, 0, 20);
Konfirmat_Standart (PlankaZ, LeftPanel, 0, 0, 60);
Konfirmat_Standart (PlankaZ, RightPanel, 0, 0, 20);
Konfirmat_Standart (PlankaZ, RightPanel, 0, 0, 60);
Konfirmat_Standart (PlankaP, LeftPanel, 0, 0, z2.Value - 60);
Konfirmat_Standart (PlankaP, LeftPanel, 0, 0, z2.Value - 20);
Konfirmat_Standart (PlankaP, RightPanel, 0, 0, z2.Value - 60);
Konfirmat_Standart (PlankaP, RightPanel, 0, 0, z2.Value - 20);
}

if (Dop.ItemIndex === 1) {
Minifix_Zadnii (Dno, LeftPanel, Thick, 0, 32);
Minifix_Perednii (Dno, LeftPanel, Thick, 0, z2.Value -32);
Minifix_Zadnii (PlankaZ, LeftPanel, Thick,0 , 24);
Minifix_Perednii (PlankaP, LeftPanel, Thick, 0, z2.Value -24);
Konfirmat_Standart (RightPanel, Dno, 0, 0, 50);
Konfirmat_Standart (RightPanel, Dno, 0, 0, z2.Value - 50 );
Konfirmat_Standart (PlankaZ, RightPanel, 0, 0, 20);
Konfirmat_Standart (PlankaZ, RightPanel, 0, 0, 60);
Konfirmat_Standart (PlankaP, RightPanel, 0, 0, z2.Value - 60);
Konfirmat_Standart (PlankaP, RightPanel, 0, 0, z2.Value - 20);
}

if (Dop.ItemIndex === 2) {
Minifix_Zadnii (Dno, RightPanel, 0, 0, 32);
Minifix_Perednii (Dno, RightPanel, 0, 0, z2.Value -32);
Minifix_Zadnii (PlankaZ, RightPanel, 0,0 , 24);
Minifix_Perednii (PlankaP, RightPanel, 0, 0, z2.Value -24);
Konfirmat_Standart (LeftPanel, Dno, 0, 0, 50);
Konfirmat_Standart (LeftPanel, Dno, 0, 0, z2.Value - 50 );
Konfirmat_Standart (PlankaZ, LeftPanel, 0, 0, 20);
Konfirmat_Standart (PlankaZ, LeftPanel, 0, 0, 60);
Konfirmat_Standart (PlankaP, LeftPanel, 0, 0, z2.Value - 60);
Konfirmat_Standart (PlankaP, LeftPanel, 0, 0, z2.Value - 20);
}
if (Dop.ItemIndex === 3) {
Minifix_Zadnii (Dno, RightPanel, 0, 0, 32);
Minifix_Perednii (Dno, RightPanel, 0, 0, z2.Value -32);
Minifix_Zadnii (PlankaZ, RightPanel, 0,0 , 24);
Minifix_Perednii (PlankaP, RightPanel, 0, 0, z2.Value -24);
Minifix_Zadnii (Dno, LeftPanel, Thick, 0, 32);
Minifix_Perednii (Dno, LeftPanel, Thick, 0, z2.Value -32);
Minifix_Zadnii (PlankaZ, LeftPanel, Thick,0 , 24);
Minifix_Perednii (PlankaP, LeftPanel, Thick, 0, z2.Value -24);
}

EndBlock();

/*
Fuga = 1.5 // зазори для дверей
Fuga1 = 4

function Dver1() //установка оной двери с петлями и ручкой
{
DB1 = BeginBlock("Дверь");
MatFas.SetActive();
DverL = AddFrontPanel(0+Fuga, h1.Value, t.Value - Fuga, h2.Value - Fuga1, z2.Value + Fuga);
DverL.TextureOrientation = ftoVertical; //направление текстуры
DverL.AddButt(MatButtD, 0);
DverL.AddButt(MatButtD, 1);
DverL.AddButt(MatButtD, 2);
DverL.AddButt(MatButtD, 3);

if (PetliLeftRight.ItemIndex == 0) {
if (h2.Value > 600) {
//Ruchka((DverL || DverR || DverL1), t.Value - Fuga - 80 , h2.Value - Fuga1 - 50, z2.Value, Fi);
DverL.Name = 'Дверь левая';
EndBlock();
DB1.AnimType = AnimationType.DoorLeft;
PetliLeft();
} else {
//Ruchka((DverL || DverR || DverL1), t.Value - Fuga - 80, h2.Value - Fuga1 - 50, z2.Value, Fi);
DverL.Name = 'Дверь левая';
EndBlock();
DB1.AnimType = AnimationType.DoorLeft;
//PetliLeft();
}
} else {
if (h2.Value > 820) {
//Ruchka((DverL || DverR || DverL1), 0 + Fuga - 50, h2.Value -Fuga1- 80, z2.Value, Fi);
DverL.Name = 'Дверь правая';
EndBlock();
DB1.AnimType = AnimationType.DoorRight;
PetliRight();
} else {
//Ruchka((DverL || DverR || DverL1), 0 + Fuga - 50, h2.Value - Fuga1 - 80, z2.Value, Fi);
DverL.Name = 'Дверь правая';
EndBlock();
DB1.AnimType = AnimationType.DoorRight;
PetliRight();
}
}
}

function Dver2() //установка двух дверей с петлями и ручками
{
MatFas.SetActive()
DB2 = BeginBlock("Дверь")
DverL = AddFrontPanel(0+Fuga, h1.Value, t.Value / 2 - Fuga, h2.Value - Fuga1, z2.Value+ Fuga);
DverL.TextureOrientation = ftoVertical; //направление текстуры
DverL.AddButt(MatButtD, 0);
DverL.AddButt(MatButtD, 1);
DverL.AddButt(MatButtD, 2);
DverL.AddButt(MatButtD, 3);
DverL.Name = 'Дверь левая';
if (h2.Value) {
//Ruchka(t.Value / 2 + Fuga - 30, h2.Value - Fuga1 - 50, z2.Value, Fi);
EndBlock();
DB2.AnimType = AnimationType.DoorLeft;
PetliLeft();
} else {
//Ruchka(DverL, t.Value / 2 + Fuga -30, h2.Value - Fuga1 - 50, z2.Value, Fi);
EndBlock();
DB2.AnimType = AnimationType.DoorLeft;
PetliLeft();
}

DB3 = BeginBlock("Дверь");
DverR = AddFrontPanel(t.Value / 2 + Fuga, h1.Value, t.Value - Fuga, h2.Value - Fuga1, z2.Value+ Fuga);
DverR.TextureOrientation = ftoVertical; //направление текстуры
DverR.AddButt(MatButtD, 0);
DverR.AddButt(MatButtD, 1);
DverR.AddButt(MatButtD, 2);
DverR.AddButt(MatButtD, 3);
DverR.Name = 'Дверь правая';
if (h2.Value) {
//Ruchka(DverR, t.Value / 2 + Fuga + 30, h2.Value - Fuga1 - 50, z2.Value, Fi);
EndBlock();
DB3.AnimType = AnimationType.DoorRight;
PetliRight();
} else {
//Ruchka(DverR, t.Value / 2 + Fuga + 30, h2.Value- Fuga1 - 50, z2.Value, Fi)
EndBlock();
DB3.AnimType = AnimationType.DoorRight;
PetliRight();
}
}

if (Doors.Value == true) {
if (t.Value == 600) //корпус равен строго 600 мм установка дверей, петель и ручек
{
if (confirm//('Установить одну дверь?\nНет - установятся две двери!')//)
Dver1()
else
Dver2()
} else //корпус не равен 600 мм
{
if (t.Value < 600)
Dver1()
else
Dver2()
}
}


*/

B = BeginBlock("Ящик");
Th = ActiveMaterial.Thickness;



m1 = h1.Value + Thick + 16 // від дна до боковини нижнього ящика
m2 = m1 + 13 // підйом дна
m3 = (((((h2.Value - Thick)- (h1.Value + Thick))) / 2) -20) + h1.Value // висота боковини нижнього ящика
m4 = ( ((((h2.Value - Thick)- (h1.Value + Thick))) / 2) - 1.5) + h1.Value // висота фасаду
m5 = 500 // довжина напрямної

AddHorizPanel(Thick*2 + 5, Thick, t.Value - Thick*2 - 5, m5-10, m2).Name = 'Дно';
AddVertPanel(0, m1, m5-10, m3, Thick + 5).Name = 'Боковина левая';
AddVertPanel(0, m1, m5-10, m3, (t.Value - Thick*2 )-5).Name = 'Боковина правая';
AddFrontPanel(Thick*2 + 5, m2 +Thick, (t.Value - Thick*2 )-5, m3, z2.Value-Thick).Name = 'Передня панель';
AddFrontPanel(Thick*2 + 5, m2 , (t.Value - Thick*2 )-5, m3, 0).Name = 'Задня панель';
AddFrontPanel(0, h1.Value, t.Value, m4, z2.Value).Name = 'Фасад';
EndBlock();
B.AnimType = AnimationType.Box;

EndParametricBlock(); // закончим создание тумбочки
};
[свернуть]



Спасибо
sx233077 вне форума   Ответить с цитированием Вверх