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

Привет.

После всех мучений. методом нродного тыка. родился вот этот скрипт.
Сделан конечно через Ж. Но в програмировании я нуб так что имеем что имеем.

Скрип создает тумбу с ящиками.

Помогите прикурить к нему направлялки.


Скрипт

FileOptions = 'Настройки_scrypt2.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 = Prop.NewNumber('Довжина напрямної', 500);
//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()
}
}


*/
if (z2.Value > 560)
alert ('Глибина копуса більша ніж 560 мм!\nВведіте значення ще раз.')
else
function Make()
DeleteNewObjects();

if (z2.Value <=255)
alert('Глибина копуса менша ніж 254 мм!\nВведіте значення ще раз.')
else
function Make()
DeleteNewObjects();


if (z2.Value <=559){
m5 = 550}

if (z2.Value <=550){
m5 = 500}

if (z2.Value <=500){
m5 = 450}

if (z2.Value <=450){
m5 = 400}

if (z2.Value <=400){
m5 = 350}
if (z2.Value <=350){
m5 = 300}
if (z2.Value <=300){
m5 = 270}
if (z2.Value <=270){
m5 = 250}



j1=1.5
j2=1.5
j3=4
j4=3
j5=0

B = BeginBlock("Ящик");
m1 = h1.Value + Thick + 16 // від дна до боковини нижнього ящика
m2 = m1 + 13 // підйом дна
m3 = (((((h2.Value - Thick)- (h1.Value + Thick))) / 2) - 8) + h1.Value // висота боковини нижнього ящика
m4 = ((h2.Value+h1.Value)-j3-j4-j5)/2 // висота фасаду
//m5 = NapYaz.Value // довжина напрямної
m6 = 19 // від нижнього фасаду до боковини верхнього ящика
m7 = 13 // підйом дна

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

B1 = BeginBlock("Ящик1");

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

EndParametricBlock(); // закончим создание тумбочки

};
[свернуть]

Нажмите на изображение для увеличения
Название: тумбочка.jpg
Просмотров: 69
Размер:	25.6 Кб
ID:	119306


Спасибо
sx233077 вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
PravCom (01.02.2022)