Форум профессиональных мебельщиков PROMEBELclub
 
PROMEBELclub - Форум для мебельщиков: конструкторов, дизайнеров, мастеров, технологов и всех, кто имеет отношение к производству и изготовлению мебели. Программы для конструирования и дизайна мебели. Мебельная литература и обучающие пособия.
 
 

Вернуться   Форум профессиональных мебельщиков PROMEBELclub > Программы для мебельщиков > Программы для конструирования и дизайна мебели > Система БАЗИС > Базис-мебельщик. Скрипты

Меню

Маркет


Ответ
 
Опции темы Опции просмотра
Старый 13.01.2014, 13:22  
Скрипты. Готовые решения для БМ8-2024
 
Аватар для Igor_482
Igor_482
VIP
Регистрация: 03.09.2008
Сообщений: 174

Сказал(а) спасибо: 34
Поблагодарили 794 раз(а) в 113 сообщениях
Версия для печати Отправить по электронной почте
Igor_482 Igor_482 вне форума 13.01.2014, 13:22
Рейтинг: ()

Этот раздел предназначен для размещения готовых скриптов.
Здесь находятся ТОЛЬКО готовые скрипты. Для обсуждения есть отдельная тема: Обсуждение готовых скриптов.

Авторам:
  1. Давать уникальные названия скриптам (не совпадающие с названием уже выложенных скриптов, за исключением обновлений скрипта)
  2. Указывать работоспособность в разных версиях БМ.
  3. Общее описание работы скрипта.
  4. Если презентованный скрипт платный указывать стоимость, условия и контакты для приобретения.

Версии, указанные модератором, как прошедшие проверку:
8 - Демо-версия 8.0.7.9649
- "народная" 8.0.12.12765
9 - Демо-версия 9.0.8.18908
10 - Демо-версия 10.0.0.21602

Последний раз редактировалось AlexBolton; 03.03.2023 в 21:03..
Просмотров: 553832
Ответить с цитированием Вверх
13 пользователя(ей) сказали cпасибо:
Старый 30.08.2022, 01:58   #241
Станислав Станилевич
Пользователь
 
Аватар для Станислав Станилевич
 
Регистрация: 19.02.2019
Адрес: На юге
Сообщений: 35
Сказал(а) спасибо: 21
Поблагодарили 154 раз(а) в 24 сообщениях
Вес репутации: 98
Станислав Станилевич - весьма и весьма положительная личностьСтанислав Станилевич - весьма и весьма положительная личность
По умолчанию Поиск объектов в модели 1.7

Скрытый текст

v 1.0

Скрытый текст

Принцип работы: вводим в строку слово\букву\спец символы\цифры и жмем интер.Результат поиска: выделение объектов.
Галочки критериев поиска всегда включены, отключение\включение - обновляет список.
Нечувствителен к регистру.
(Есть косяк со скроллом, не обнуляется состояние, не критично)

Ищет:
Фурнитуру\сборки, панели, профиля.

Ищет по:
Имени, артикулу, длине, ширине, позиции.

В каком-то смысле может заменить штатный поисковик.
[свернуть]

v 1.3

Скрытый текст

+ Поиск по пользовательским свойствам(отключено по дефолту)
- Из поиска по свойствам исключены булевые (true\false)
- Свойство с булевым содержанием отображаются в найденных
+ Скрытие невыделенных объектов(отключено по дефолту)
[свернуть]

[свернуть]

Обновление скрипта

+ Поиск тел по траектории(относится к профилям)
- реализован поиск профилей(так и не понял почему не искал до этого) и тел по траектории по длине
Исправил механизм поиска свойств и выделения объектов

Приятного пользования!
Миниатюры
1.7.png  
Вложения
Тип файла: rar Поиск объектов в модели 1.7.rar (3.7 Кб, 150 просмотров)

Последний раз редактировалось Станислав Станилевич; 30.08.2022 в 03:02. Причина: Оформление
Станислав Станилевич вне форума   Ответить с цитированием Вверх
12 пользователя(ей) сказали cпасибо:
Старый 05.09.2022, 13:39   #242
Станислав Станилевич
Пользователь
 
Аватар для Станислав Станилевич
 
Регистрация: 19.02.2019
Адрес: На юге
Сообщений: 35
Сказал(а) спасибо: 21
Поблагодарили 154 раз(а) в 24 сообщениях
Вес репутации: 98
Станислав Станилевич - весьма и весьма положительная личностьСтанислав Станилевич - весьма и весьма положительная личность
По умолчанию Буфер вершин

Смысл скрипта: Включение\отключение буфера вершин.
По факту - костыль, направлен на обход проблем(связаны напрямую с буфером) с:
-отображение линий эластичности
-отображение лицевой стороны у материала


Скрипт поможет только пользователям beta-версии Базис.Мебельщик 2022

Принцип: выносим на панель скриптов, "таканье" меняет состояние буфера(вкл\выкл). В историю попадает запись о состоянии.

Никак не связан с настройками программы, при отключенном буфере скрипт работает, настройки программы возращают только состояние.

Скрипт - временный (в ТП обещали исправить эту проблему)
Миниатюры
БВ.png  
Вложения
Тип файла: rar Буфер вершин.rar (612 байт, 23 просмотров)
Станислав Станилевич вне форума   Ответить с цитированием Вверх
3 пользователя(ей) сказали cпасибо:
AlexBolton (05.09.2022), Ovsyanicov (05.09.2022), PravCom (05.09.2022)
Старый 14.09.2022, 19:16   #243
Igor_482
VIP
 
Аватар для Igor_482
 
Регистрация: 03.09.2008
Сообщений: 174
Сказал(а) спасибо: 34
Поблагодарили 794 раз(а) в 113 сообщениях
Вес репутации: 367
Igor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личность
По умолчанию Advanced tools for professionals

Скрипт задания отступов от габаритной рамки эластичного фрагмента-фурнитуры. Унифицирован для всех версий БМ.

Код


Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 30 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащейся здесь.

[свернуть]


Цитата:
Сообщение от demanus Посмотреть сообщение
Не могу докумекать как применять)
Видео применения скрипта и небольшое обновление кода.
Миниатюры
001.jpg   002.jpg   003.png   004.jpg   005.jpg  

006.jpg  

Последний раз редактировалось Igor_482; 14.09.2022 в 21:01. Причина: Размещение ссылки на видеоинструкцию и обновление кода скрипта.
Igor_482 вне форума   Ответить с цитированием Вверх
6 пользователя(ей) сказали cпасибо:
Старый 17.10.2022, 07:24   #244
Максим Геннадьевич
Местный
 
Регистрация: 11.04.2018
Адрес: г.Маркс
Сообщений: 166
Сказал(а) спасибо: 57
Поблагодарили 246 раз(а) в 46 сообщениях
Вес репутации: 140
Максим Геннадьевич - весьма и весьма положительная личностьМаксим Геннадьевич - весьма и весьма положительная личностьМаксим Геннадьевич - весьма и весьма положительная личность
По умолчанию Контур 3D (отрезок)

Поднималась тема, построение контура 3D (отрезок). Думаю решение нашлось. И информация, что можно сделать с векторами.
PHP код:
let p1 GetPoint('Укажите первую точку');
let p2 GetPoint('Укажите вторую точку');
let cont AddContour();
cont.Name 'Контур 3D';
let pV1 = new Vector(p1.x.toFixed(1), p1.y.toFixed(1), p1.z.toFixed(1)),
pV2 = new Vector(p1.x.toFixed(1), p2.y.toFixed(1), p1.z.toFixed(1)),
pV3 = new Vector(p2.x.toFixed(1), p2.y.toFixed(1), p2.z.toFixed(1)),
pV4 = new Vector(p2.x.toFixed(1), p1.y.toFixed(1), p2.z.toFixed(1));
v1 pV1.subtract(pV2),
v2 pV1.subtract(pV3);
let normal =  v2.cross(v1);
cont.Orient(normalv1);
cont.Position pV1;
let pVector1 cont.ToObject(pV1);
let pVector3 cont.ToObject(pV3);
cont.Contour.AddLine(pVector1.xpVector1.y,pVector3.xpVector3.y);
cont.Build();


/////Это для информации какие есть варианты
/* Vector.prototype = {
    negative: function () {
        return new Vector(-this.x, -this.y, -this.z);
    },
    add: function (v) {
        if (v instanceof Vector) return new Vector(this.x + v.x, this.y + v.y, this.z + v.z);
        else return new Vector(this.x + v, this.y + v, this.z + v);
    },
    subtract: function (v) {
        if (v instanceof Vector) return new Vector(this.x - v.x, this.y - v.y, this.z - v.z);
        else return new Vector(this.x - v, this.y - v, this.z - v);
    },
    multiply: function (v) {
        if (v instanceof Vector) return new Vector(this.x * v.x, this.y * v.y, this.z * v.z);
        else return new Vector(this.x * v, this.y * v, this.z * v);
    },
    divide: function (v) {
        if (v instanceof Vector) return new Vector(this.x / v.x, this.y / v.y, this.z / v.z);
        else return new Vector(this.x / v, this.y / v, this.z / v);
    },
    equals: function (v) {
        return this.x == v.x && this.y == v.y && this.z == v.z;
    },
    dot: function (v) {
        return this.x * v.x + this.y * v.y + this.z * v.z;
    },
    cross: function (v) {
        return new Vector(
            this.y * v.z - this.z * v.y,
            this.z * v.x - this.x * v.z,
            this.x * v.y - this.y * v.x
        );
    },
    length: function () {
        return Math.sqrt(this.dot(this));
    },
    unit: function () {
        return this.divide(this.length());
    },
    min: function () {
        return Math.min(Math.min(this.x, this.y), this.z);
    },
    max: function () {
        return Math.max(Math.max(this.x, this.y), this.z);
    },
    toAngles: function () {
        return {
            theta: Math.atan2(this.z, this.x),
            phi: Math.asin(this.y / this.length())
        };
    },
    toArray: function (n) {
        return [this.x, this.y, this.z].slice(0, n || 3);
    },
    clone: function () {
        return new Vector(this.x, this.y, this.z);
    },
    init: function (x, y, z) {
        this.x = x; this.y = y; this.z = z;
        return this;
    }
}*/ 
Максим Геннадьевич вне форума   Ответить с цитированием Вверх
3 пользователя(ей) сказали cпасибо:
Ovsyanicov (17.10.2022), PravCom (17.10.2022), v22884 (16.03.2023)
Старый 29.11.2022, 13:55   #245
Артем Валерьевич
Пользователь
 
Регистрация: 03.12.2019
Сообщений: 88
Сказал(а) спасибо: 28
Поблагодарили 115 раз(а) в 34 сообщениях
Вес репутации: 85
Артем Валерьевич скоро придёт к известностиАртем Валерьевич скоро придёт к известности
По умолчанию Вертикальная фрезеровка на панелях (полоски, волны и т.п.)

Кому свежий скрипт, налетай, разбирай )



https://cloud.mail.ru/public/P7DG/iQtAf2Vwe

https://ibb.co/qjFQLmM

ЗЫ контуры можно использовать любые, в рамках разумного. выкладываю свой один, у всех они разные

Последний раз редактировалось Артем Валерьевич; 29.11.2022 в 14:42.
Артем Валерьевич вне форума   Ответить с цитированием Вверх
38 пользователя(ей) сказали cпасибо:
Старый 07.01.2023, 06:12   #246
outlaw
Пользователь
 
Аватар для outlaw
 
Регистрация: 17.03.2014
Адрес: Санкт-Петербург
Сообщений: 34
Сказал(а) спасибо: 5
Поблагодарили 31 раз(а) в 13 сообщениях
Вес репутации: 133
outlaw на пути к лучшему
По умолчанию

Цитата:
Сообщение от sergio1982 Посмотреть сообщение


v3.70
Добил все свои хотелки.

+ Поле поддерживает ввод табуляций
+ Текст поддерживает начальные и конечные табуляции и пробелы
+ Текст поддерживает пустые строки
+ Шаблоны в поле ввода, а не в свойствах
+ Сноски - указатели на текст
+ Привязки сохраняются и редактируются
+ Авто повтор
+ Ракурс камеры можно вернуть к изначальному
+ Оформление - Крест

Текст.zip


https://youtu.be/8W37aCOGZrw
здравствуйте. не могли бы перезалить скрипт? ссылка не рабочая
outlaw вне форума   Ответить с цитированием Вверх
Старый 25.02.2023, 13:32   #247
v22884
Местный
 
Регистрация: 17.04.2014
Адрес: д.Сибирцево, ателье-уют.рф
Сообщений: 454
Сказал(а) спасибо: 243
Поблагодарили 1,097 раз(а) в 210 сообщениях
Вес репутации: 387
v22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордится
По умолчанию

Решётка


Клиенты зачастили с заказом решёток на батареи. Йисесено каждому надо чо нить эдакое. Прямоугольнику вручную запарился рисовать.

В школу делали буквы в разброс.
В папку "DXF_Буквы" разными ТРАФАРЕТНЫМИ шрифтами написал буквы из арткама в dxf.
Конечно в папку можно сохранить любые dxf.



Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащейся здесь.



Чуть не забыл: dxfы прогнать через базис и сохранить скриптом в архиве.



Сохраняет dxf панели в папку ЧПУ папки модели.
Миниатюры
Буквы.JPG   Решётка.jpg  
Вложения
Тип файла: rar DXF.rar (6.0 Кб, 105 просмотров)

Последний раз редактировалось AlexBolton; 26.02.2023 в 12:27. Причина: оформление - тег [php]
v22884 вне форума   Ответить с цитированием Вверх
12 пользователя(ей) сказали cпасибо:
Старый 05.03.2023, 21:15   #248
aov27
Новичок
 
Регистрация: 22.12.2022
Сообщений: 13
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 1 сообщении
Вес репутации: 0
aov27 пока не определено
По умолчанию

Цитата:
Сообщение от Slav Посмотреть сообщение
Цитата:
Сообщение от aov27 Посмотреть сообщение
Очень странно нигде, не могу найти скрипт для выреза под ручку Gola. Подскажите где скачать можно ?
1. Бесплатно
2. Платно
ИМХО: Лично мне даром оно не нужно. Стандартными средствами я все делаю быстрее. Плюс рулят фрагменты -параметрические и заменяемые. Корпуса сделаны заранее с прорезями..
Спасибо, всё сам собрал по урокам из сети. вот пользуйтесь кому надо. Есть не доделки, такие как вырез паза, надо добавить на дно и левую боковину, кромка на фасаде не идёт. Но в любом случае, кому интересно сам добавит.
PHP код:
FileOptions 'Настройки кухонный модуль.xml';
MakeProperties();

Action.Properties.Load(FileOptions);
Action.OnFinish = function(){
    
Action.Properties.Save(FileOptions);
    }

function 
MakeProperties(){      // "Кнопки"
    
Prop Action.Properties;
    
Prop.NewNumber('Ширина'600);
    
Prop.NewNumber('Высота'820);
    
OtstupSzadi Prop.NewNumber('Отступ сзади'20);
    
OtstupSperedi Prop.NewNumber('Отступ спереди'20);
    
HC Prop.NewNumber('Высота цоколя',100);
    
ZS Prop.NewCombo('Задняя стенка','Да\nНет')


    
Materialy Prop.NewGroup('Материалы')
    
KromkaF Materialy.NewButt('Кромка фасад');
    
KromkaV Materialy.NewButt('Кромка внутри');
    
Konfirmat Materialy.NewFurniture('Конфирмат')
    
Matkorp Materialy.NewMaterial('Материал корпуса');
    
FasadGroup Prop.NewGroup('Фасад');
    
TipFasada FasadGroup.NewCombo('Фасад',  'нет\nОбычный\nGola\nФасад TW5');
    
OtstupTop FasadGroup.NewNumber('Отступ фасада сверху',3);
    
OtstupLeft FasadGroup.NewNumber('Отступ фасада слева',1.5);
    
OtstupRight FasadGroup.NewNumber('Отступ фасада справа',1.5);




    
CargaSperedi Prop.NewCombo('Передняя царга',  'Горизонтально\nВертикально\nБез царги')
    
CargaSzadi Prop.NewCombo('Задняя царга',  'Горизонтально\nВертикально\nБез царги')
    
PolkaVnutri Prop.NewCombo('Полка',  'Да\nНет')
    
OkBtn Action.Properties.NewButton('построить');
};

OkBtn.OnClick = function(){
    
Make();
    
Action.Finish();
};

Prop.OnChange = function(){
    
Make();
};

function 
Make(){

    
DeleteNewObjects();
    
Matkorp.SetActive();
    
Thick ActiveMaterial.Thickness;   // "толщина панели"

    
LevBok AddVertPanel (OtstupSzadi.Value,HC.Value+Thick,600-OtstupSperedi.Value,H.Value,0);
    
LevBok.Name "НМ Левая боковина"
    
LevBok.TextureOrientation TextureOrientation.Vertical
    LevBok
.AddButt(KromkaF1)
    
LevBok.AddButt(KromkaV,3)
    
LevBok.AddButt(KromkaV2)

    switch (
TipFasada.ItemIndex){     // вырез под Gola левый бок
        
case 2: {
        
LBC LevBok.Contour;
        
VirezGolaLB NewContour ();
        
VirezGolaLB.AddRoundRect(LevBok.ContourWidth 25.8LevBok.ContourHeight-57LevBok.ContourWidth+5LevBok.ContourHeight+5,5);
        
LBC.Subtraction(VirezGolaLB);
        break;

    }
    }
    
CutLevBok LevBok.AddCut('Паз под ZS (4x6)');
    
CutLevBok.Trajectory.AddLine(10010H.Value Thick);
    
CutLevBok.Contour.AddRectangle(-100, -66)

    
LevBok.Build();

    
PravBok AddVertPanel (OtstupSzadi.Value,HC.Value+Thick,600-OtstupSperedi.Value,H.Value,W.Value-Thick);
    
PravBok.Name "НМ Правая боковина"
    
PravBok.TextureOrientation TextureOrientation.Vertical
    PravBok
.AddButt(KromkaF1)
    
PravBok.AddButt(KromkaV3)
    
PravBok.AddButt(KromkaV2)

    switch (
TipFasada.ItemIndex){   // вырез под Gola правый бок
        
case 2: {
        
PBC PravBok.Contour;
        
VirezGolaPB NewContour ();
        
VirezGolaPB.AddRoundRect(PravBok.ContourWidth 25.8PravBok.ContourHeight-57PravBok.ContourWidth+5PravBok.ContourHeight+5,5);
        
PBC.Subtraction(VirezGolaPB);
        break;

    }
    }
    
PravBok.Build();

    
Dno AddHorizPanel (0,OtstupSzadi.Value,W.Value,600-OtstupSperedi.Value,HC.Value); // "Дно"
    
Dno.Name "НМ Дно"
    
Dno.TextureOrientation TextureOrientation.Horizontal
    Dno
.AddButt(KromkaV0)
    
Dno.AddButt(KromkaV1)
    
Dno.AddButt(KromkaF2)
    
Dno.AddButt(KromkaV3)
    
Dno.Build();

    switch(
PolkaVnutri.ItemIndex){
        case 
0:{
    
Polka AddHorizPanel (Thick,OtstupSzadi.Value+20,W.Value-Thick,600-OtstupSperedi.Value-10,H.Value/2-Thick+50+Thick/2); // "полка"
    
Polka.Name "НМ Полка";
    
Polka.TextureOrientation TextureOrientation.Horizontal;
    
Polka.AddButt(KromkaF2);
    if(
ZS.ItemsIndex == 1){Polka.AddButt(KromkaV0)}; //тогда кромка добавляется.
    
Polka.Build(); break;
        }

    }

   switch(
CargaSzadi.ItemIndex){
        case 
0:{
    
CargaZad AddHorizPanel (Thick,OtstupSzadi.Value+20,W.Value-Thick,OtstupSzadi.Value+120,H.Value-Thick); // "царга задняя"
    
CargaZad.Name "НМ Царга передняя"
    
CargaZad.TextureOrientation TextureOrientation.Horizontal;
    
CargaZad.AddButt(KromkaV2);
    
CargaZad.AddButt(KromkaV0);
    
CargaZad.Build(); break;
        }
        case 
1:{
    
CargaZad AddFrontPanel (Thick,H.Value,W.Value-Thick,H.Value-100,OtstupSzadi.Value+20); //"царга задняя"
    
CargaZad.Name "НМ Царга передняя"
    
CargaZad.TextureOrientation TextureOrientation.Horizontal;
    
CargaZad.AddButt(KromkaV2);
    
CargaZad.AddButt(KromkaV0);
    
CargaZad.Build(); break;
    }

    }


    
Nogka OpenFurniture('C:\\Users\\admin\\Documents\\Bazis10\\Фурнитура\\Опоры и подпятники\\Сборки\\Ножка кух. 100мм клипса универсальная.fr3d');
    
Nogka.Mount1(Dno51.5HC.ValueOtstupSzadi.Value+65.5, -90)
    
Nogka.Mount1(Dno51.5HC.Value600-OtstupSperedi.Value-83.5, -90)
    
Nogka.Mount1(DnoW.Value-51.5HC.ValueOtstupSzadi.Value+65.590)
    
Nogka.Mount1(DnoW.Value-51.5HC.Value600-OtstupSperedi.Value-83.590)


    switch(
CargaSperedi.ItemIndex){
        case 
0:{


        
// if(условие){код1}esle{код2};
        // условие? код1; код2;
    
TipFasada.ItemIndex == 2?
    
CargaPered AddHorizPanel (Thick,600-OtstupSperedi.Value-127,W.Value-Thick,600-OtstupSperedi.Value-25.8,H.Value-Thick): //"царга передняя отступ зп голу"
    
CargaPered AddHorizPanel (Thick,600-OtstupSperedi.Value-100,W.Value-Thick,600-OtstupSperedi.Value,H.Value-Thick); //"царга передняя горизонтально"
    
CargaPered.Name "НМ Царга задняя"
    
CargaPered.TextureOrientation TextureOrientation.Horizontal
    CargaPered
.AddButt(KromkaF2)
    
CargaPered.AddButt(KromkaV0)
    
CargaPered.Build(); break;
        }
        case 
1:{
    
CargaPered AddFrontPanel (Thick,H.Value,W.Value-Thick,H.Value-100,600-OtstupSperedi.Value-Thick); //"царга фронтально"
    
CargaPered.Name "НМ Царга задняя"
    
CargaPered.TextureOrientation TextureOrientation.Horizontal
    CargaPered
.AddButt(KromkaF2)
    
CargaPered.AddButt(KromkaV0)
    
CargaPered.Build(); break;
    }

    }


     switch(
CargaSperedi.ItemIndex){
        case 
0:{

        if(
TipFasada.ItemIndex == 2){
        
Konfirmat.Value.Mount(CargaPered,LevBok,0,H.Value-Thick/2,600-OtstupSperedi.Value-76.4);
        
Konfirmat.Value.Mount(CargaPered,PravBok,600,H.Value-Thick/2,600-OtstupSperedi.Value-76.4);
        }else{
        
Konfirmat.Value.Mount(CargaPered,LpevBok,0,H.Value-Thick/2,600-OtstupSperedi.Value-50);
        
Konfirmat.Value.Mount(CargaPered,PravBok,600,H.Value-Thick/2,600-OtstupSperedi.Value-50);
        }

        break;
        }
    case 
1:{
        
Konfirmat.Value.Mount(CargaPered,LevBok,0,H.Value-50,600-OtstupSperedi.Value-50);
        
Konfirmat.Value.Mount(CargaPered,PravBok,600,H.Value-50,600-OtstupSperedi.Value-50);
         break;
    }

    }


      switch(
CargaSzadi.ItemIndex){
        case 
0:{
        
Konfirmat.Value.Mount(CargaZad,LevBok,0,H.Value-50,OtstupSzadi.Value+70);
        
Konfirmat.Value.Mount(CargaZad,PravBok,W.Value-Thick,H.Value-Thick/2,OtstupSzadi.Value+70);
        break;
        }
    case 
1:{
        
Konfirmat.Value.Mount(CargaZad,LevBok,0,H.Value-50,OtstupSzadi.Value+70);
        
Konfirmat.Value.Mount(CargaZad,PravBok,W.Value-Thick,H.Value-50,OtstupSzadi.Value+70);
        break;
    }

    }


    switch(
PolkaVnutri.ItemIndex){
        case 
0:{
    
Konfirmat.Value.Mount(Polka,LevBok,0,452,OtstupSzadi.Value+70);
    
Konfirmat.Value.Mount(Polka,LevBok,0,452,600-OtstupSperedi.Value-50);
    
Konfirmat.Value.Mount(Polka,PravBok,600,452,600-OtstupSperedi.Value-50);
    
Konfirmat.Value.Mount(Polka,PravBok,600,452,OtstupSzadi.Value+70); break;
        }
        case 
1:{
        }
         }

    switch(
TipFasada.ItemIndex) {
    case 
1:{
    
Fasad AddFrontPanel(OtstupLeft.Value,HC.Value,W.Value-OtstupRight.Value,H.Value OtstupTop.Value,600-OtstupSperedi.Value);
    
Fasad.Name 'Фасад';
    
// не работает     Fasad.AddButt(Kromka2mm, 0);
    // не работает     Fasad.AddButt(Kromka2mm, 1);
    // не работает     Fasad.AddButt(Kromka2mm, 2);
    // не работает     Fasad.AddButt(Kromka2mm, 3);
    
Fasad.TextureOrientation TextureOrientation.Vertical;
    
Fasad.Build(); break;
    }

    case 
2:{

    
Fasad AddFrontPanel(OtstupLeft.Value,HC.Value,W.Value-OtstupRight.Value,H.Value OtstupTop.Value-36,600-OtstupSperedi.Value);
    
Fasad.Name 'Фасад';
    
// не работает     Fasad.AddButt(Kromka2mm, 0);
    // не работает     Fasad.AddButt(Kromka2mm, 1);
    // не работает     Fasad.AddButt(Kromka2mm, 2);
    // не работает     Fasad.AddButt(Kromka2mm, 3);
    
Fasad.TextureOrientation TextureOrientation.Vertical;
    
Fasad.Build();

    
ActiveMaterial.Make('Профиль L-образный, горизонтальный KB92 A00-Серебро,100');
    
GolaL AddExtrusion();
    
GolaL.Contour.Load('C:\\Users\\admin\\Documents\\Bazis10\\Контуры\\Gola L KB 92.frw');
    
GolaL.RotateY(90);   //TW5.Thickness = 1000
    
GolaL.PositionX OtstupLeft.Value;
    
GolaL.PositionY H.Value OtstupTop.Value 54;
    
GolaL.PositionZ 608 OtstupSperedi.Value 8;
    
GolaL.Thickness =  W.Value OtstupRight.ValueOtstupLeft.Value;
    
GolaL.Build();break;





    }

    case 
3:{
    
Fasad AddFrontPanel(OtstupLeft.Value,HC.Value,W.Value-OtstupRight.Value,H.Value OtstupTop.Value 31,600-OtstupSperedi.Value);
    
Fasad.Name 'Фасад';
    
// не работает     Fasad.AddButt(Kromka2mm, 0);
    // не работает     Fasad.AddButt(Kromka2mm, 1);
    // не работает     Fasad.AddButt(Kromka2mm, 2);
    // не работает     Fasad.AddButt(Kromka2mm, 3);
    
Fasad.TextureOrientation TextureOrientation.Vertical;
    
Fasad.Build();

    }
    
CutFasad Fasad.AddCut('Паз под TW5 (3x14)');
    
CutFasad.Trajectory.AddLine(0Fasad.ContourHeightFasad.ContourWidthFasad.ContourHeight);
    
CutFasad.Contour.AddRectangle(010.5, -147.5)

    
Fasad.Build();

    
ActiveMaterial.Make('Профиль-ручка TW5 A00 - Серебро'1);
    
TW5 AddExtrusion();
    
TW5.Contour.Load('C:\\Users\\admin\\Documents\\Bazis10\\Контуры\\TW5.frw');
    
TW5.RotateY(90);   //TW5.Thickness = 1000

    
TW5.PositionX OtstupLeft.Value;
    
TW5.PositionY H.Value OtstupTop.Value 31;
    
TW5.PositionZ 608 OtstupSperedi.Value;
    
TW5.Thickness =  W.Value OtstupRight.ValueOtstupLeft.Value;
    
TW5.Build(); break;

  }


    if(
ZS.ItemIndex == 0){                                                              // Установка задней стенки
     
ActiveMaterial.Make('ХДФ лакированная Белая (2800*2070*3мм) Kronospan'3)
     
Zadst AddFrontPanel (10HC.Value+10W.Value-10,H.Value,OtstupSzadi.Value+17);
     
Zadst.Name 'Задняя стенка';
     
Zadst.TextureOrientation TextureOrientation.Vertical;
     };

    
Konfirmat.Value.Mount(LevBok,Dno,0,HC.Value,OtstupSzadi.Value+70);
    
Konfirmat.Value.Mount(LevBok,Dno,0,HC.Value,600-OtstupSperedi.Value-50);
    
Konfirmat.Value.Mount(PravBok,Dno,W.Value-Thick/2,HC.Value,600-OtstupSperedi.Value-50);
    
Konfirmat.Value.Mount(PravBok,Dno,W.Value-Thick/2,HC.Value,OtstupSzadi.Value+70);





};
Make();
Action.Continue(); 
Никогда не плачу за то, что могу взять бесплатно.

Последний раз редактировалось AlexBolton; 05.03.2023 в 21:33. Причина: Выбирайте соотвествующие темы раздела при публикации сообщений
aov27 вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
Igor2603 (06.02.2024), kmboris13 (14.11.2023), sergio1982 (05.03.2023), vladseverrr (08.10.2023), zzerg (06.03.2023)
Старый 06.03.2023, 03:07   #249
Ovsyanicov
Местный
 
Регистрация: 30.11.2013
Адрес: Кишинев
Сообщений: 734
Сказал(а) спасибо: 1,529
Поблагодарили 884 раз(а) в 376 сообщениях
Вес репутации: 404
Ovsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордитсяOvsyanicov за этого человека можно гордится
По умолчанию Замена материала панелей на произвольный

Скрипт может заменять наименование и толщину выделенных панелей (если есть выделенные) или всех панелей.
Если нет необходимости в замене толщины, то нужно изменить значение константы CHANGE_THICKNESS на false.

PHP код:
Undo.RecursiveChanging(Model);

let NewMaterialName//новое наименование материала
let NewThickness//новая толщина материала
const CHANGE_THICKNESS true//выводить запрос о смене толщины материала?

//функция запроса нового наименования материала
function AskMaterialName() {
    
NewMaterialName prompt('Введите НАЗВАНИЕ материала:');
}

//функция запроса и проверки значения новой толщины панелей
function AskThickness() {
    
NewThickness Number(prompt('Введите ТОЛЩИНУ материала (только положительное число):'));
    if (!
NewThickness || NewThickness 0) {
        
AskThickness();
    }
}

//функция перебора структурных объектов, кроме покупных изделий (сборок)
function GoThru(array, count) {
    for (
let i 0counti++) {
        
let element = array[i];
        if (
element.List && !(element instanceof TFurnAsm)) {
            
GoThru(elementelement.Count);
        } else if (
element instanceof TFurnPanel) {
            
element.MaterialName NewMaterialName;
            if (
CHANGE_THICKNESSelement.Thickness NewThickness;
            if (
element.Plastics.Count 0) {
                for (
let i 0element.Plastics.Counti++) {
                    
let plastic element.Plastics.Plastics[i];
                    
plastic.Material NewMaterialName;
                    if (
CHANGE_THICKNESSplastic.Thickness NewThickness;
                }
            }
        }
    }
}

//замена наименования и толщины материала (при необходимости)
if (Model.SelectionCount 0) {
    
AskMaterialName();
    if (
CHANGE_THICKNESSAskThickness();
    
GoThru(Model.SelectionsModel.SelectionCount);
    
//следующий строку кода необходимо закомментировать, если не нужно выводить запрос о снятии выделения после работы скрипта
    
if (confirm('Снять выделение?')) UnSelectAll();
} else {
    
let changeForAll confirm('Нет выделенных объектов.\nЗаменить материал у всех панелей?');
    if (
changeForAll) {
        
AskMaterialName();
        if (
CHANGE_THICKNESSAskThickness();
        
GoThru(ModelModel.Count);
    } else {
        
Action.Cancel();
    }
}
Model.Build();
Action.Finish(); 
Ovsyanicov вне форума   Ответить с цитированием Вверх
10 пользователя(ей) сказали cпасибо:
Старый 14.03.2023, 14:23   #250
v22884
Местный
 
Регистрация: 17.04.2014
Адрес: д.Сибирцево, ателье-уют.рф
Сообщений: 454
Сказал(а) спасибо: 243
Поблагодарили 1,097 раз(а) в 210 сообщениях
Вес репутации: 387
v22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордитсяv22884 за этого человека можно гордится
По умолчанию

Линии

(ля тока не вручную эту фигню.)

1) выбираем несколько панелей( желательно лежащий в одной плоскости)
2) запускаем скрипт.
3) меняем количество линии.
4) по желанию тыкаем "ЕЩЁ".

Не идеально, но вроде сносно. Кто доделает буду признателен.

Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащейся здесь.
Миниатюры
Линии.jpg  
v22884 вне форума   Ответить с цитированием Вверх
8 пользователя(ей) сказали cпасибо:
Ответ

Нижняя навигация
Вернуться   Форум профессиональных мебельщиков PROMEBELclub > Программы для мебельщиков > Программы для конструирования и дизайна мебели > Система БАЗИС > Базис-мебельщик. Скрипты


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
БАЗИС 11-2024 - Скрипты AlexBolton Базис-мебельщик. Скрипты 986 02.05.2024 11:31
БАЗИС 10 - Скрипты systland Базис-мебельщик. Скрипты 715 14.04.2024 07:03
БАЗИС 8 - Скрипты Igor_482 Базис-мебельщик. Скрипты 1525 30.03.2024 15:03
Скрипты в чертежах sergio1982 Базис-мебельщик. Скрипты 35 10.02.2024 15:45
Заявки на скрипты dr_john Система БАЗИС 37 01.03.2016 10:36


Текущее время: 12:41. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© 2007-2023 PROMEBEL

џндекс.Њетрика