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

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

Меню

Маркет


Ответ
 
Опции темы Опции просмотра
Старый 14.09.2019, 00:17  
БАЗИС 11-2023 - Скрипты
 
Аватар для AlexBolton
AlexBolton
Модератор
Регистрация: 19.02.2008
Адрес: www
Сообщений: 3,967

Сказал(а) спасибо: 7,296
Поблагодарили 16,951 раз(а) в 3,219 сообщениях
Версия для печати Отправить по электронной почте
AlexBolton AlexBolton вне форума 14.09.2019, 00:17
Рейтинг: ()

Обмениваемся , задаем вопросы, отвечаем... Все, что касается скриптов в БМ 11 в этой теме.

Новшества Базис Мебельщик версии 11:
.....
6. Работоспособность скриптов, созданных в более ранних версиях, не гарантируется в версии БАЗИС 11.
.....
52. Разработана панель инструментов для скриптов, на которую можно вывести, например, часто используемые скрипты, со своими иконками, хинтами и т.д.
53. Добавлена возможность автозапуска выбранного скрипта на любое из двух событий – Загрузка модели, и/или Сохранение модели.
.....

Новшества Базис Мебельщик версии 2021:

16. Отладчик скриптов.



VISUAL CODE

Код:
Примеры скриптов из видео

Вес панелей.js
Выделить панели без облицовки.js
Панель по 3 точкам.js
Прифуговка кромки.js
node.js обновился с 7.0.0 до 8.11.3

Напиши себе Базис или Моя первая тумбочка 2
Комплект - руководство+ файлы+ скрипт

Обратите внимание на полезные ответы в этой теме!

__________________
.
▓▒░ Халявы не бывает ░▒▓

[ Как правильно задавать вопросы на форумах ] | [ Как просто, быстро и правильно опубликовать фото и файлы в сообщении 28.03.2024]

[ USDownloader - удобно и безопасно скачиваем с файлообменников 31.03.2024] | [ Обходим блокировки сайтов, торрентов, месенджеров, ФО - RU - UA]


Любые вопросы по любому системному и мебельному софту, любые конвертации, настройки и т.д. >сюда< (кроме озвученных в мануалах, инструкциях и темах форума) ...

Последний раз редактировалось AlexBolton; 09.01.2024 в 11:56..
Просмотров: 610636
Ответить с цитированием Вверх
14 пользователя(ей) сказали cпасибо:
Старый 17.12.2020, 00:29   #381
Slav
Местный
 
Регистрация: 15.05.2012
Адрес: Москва
Сообщений: 259
Сказал(а) спасибо: 43
Поблагодарили 211 раз(а) в 89 сообщениях
Вес репутации: 213
Slav - весьма и весьма положительная личностьSlav - весьма и весьма положительная личностьSlav - весьма и весьма положительная личность
По умолчанию

Помогите со скриптом для ИРП. Все что видел в ютуб - не устраивает. Мне надо что бы при включенной ИРП скрипт пробежался бы по дереву построения и произвел следующее . У блоков с включенной галочкой "сборочная единица" скрипт должен поставить префикс "СБ_". к обозначению ИРП "01.00.01" . Получится новое обозначение "СБ_01.00.01". Далее копируем это обозначение в графу дерева позиция. То есть позиция и обозначение будет "СБ_01.00.01" и так далее по списку
Slav вне форума   Ответить с цитированием Вверх
Старый 25.12.2020, 10:30   #382
Максим Титов
Новичок
 
Регистрация: 18.12.2020
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Вес репутации: 0
Максим Титов пока не определено
По умолчанию

Где то есть полноценное API для базис скриптов? в мануале есть не всё,
например эту функцию я не нашёл FindConnectedFasteners()
и есть ещё много других которые часто в примерах на этом форуме всплывают.
но подробную информацию о них найти не могу.
Максим Титов вне форума   Ответить с цитированием Вверх
Старый 28.12.2020, 14:33   #383
Максим Титов
Новичок
 
Регистрация: 18.12.2020
Сообщений: 14
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
Вес репутации: 0
Максим Титов пока не определено
По умолчанию

Помогите разобраться с формой.
В форме имеются два свойства типа выпадающий список. хочу чтобы значения одного списка зависели от варианта выбора другого. Значения ".ComboItems" перебивается, а вот на форме новые не отображаются. Пробовал подставлять костыли через закрытие-открытие формы и через удаление и вновь создания свойства с новыми значениями. Но либо работает не так как нужно, либо с глюками, либо с вылетом в критическую ошибку. Уже неделю бьюсь, не нашёл не верного решения не подходящего костыля.
Максим Титов вне форума   Ответить с цитированием Вверх
Старый 12.01.2021, 10:37   #384
DocAndre
Новичок
 
Регистрация: 18.12.2019
Сообщений: 3
Сказал(а) спасибо: 5
Поблагодарили 0 раз(а) в 0 сообщениях
Вес репутации: 0
DocAndre пока не определено
По умолчанию

Здравствуйте, возможно ли скриптом записать в "Пользовательские свойства" длину криволинейного торца состоящего из нескольких дуг?
DocAndre вне форума   Ответить с цитированием Вверх
Старый 12.01.2021, 11:49   #385
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от DocAndre Посмотреть сообщение
Здравствуйте, возможно ли скриптом записать в "Пользовательские свойства" длину криволинейного торца состоящего из нескольких дуг?
День добрый. Да, Возможно.

Пример записи в польз. св-во для выделенной панели

PHP код:
var panel Model.Selected.AsPanel;
if (
panel){
    var 
contour panel.Contour;
    
contour.OrderContours(true);
    
// Индекс начального элемента криволинейного торца.
    // Используется как флаг, определяющий, найдено ли начало криволинейного торца.
    
var start = -1
    var 
length 0;
    for (var 
0contour.Count 1i++){
        if (
start 0){
            
// Если элемент - дуга, значит начало торца найдено - добавляем 
            // длину элемента к общей длине
            
if (contour.Objects[i].IsArc()){
                
start i;
                
length += contour.Objects[i].ObjLength();
            }
        }
        else{
            
// Если элемент - не дуга, значит конец торца найден - прекращаем цикл
            
if (!contour.Objects[i].IsArc())
                break;
            
length += contour.Objects[i].ObjLength();
        }
    }
    
// Если длина дуги ненулевая, пишем в пользовательское свойство 
    
if (length 0.001){
        
Undo.Changing(panel);
        
panel.UserProperty['Длина криволинейного торца'] = length;
    }

[свернуть]
Letos вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
anb (12.01.2021), demanus (12.01.2021), maxgmv (12.01.2021), zorro (12.01.2021), КА2 (12.01.2021)
Старый 12.01.2021, 12:50   #386
zorro
VIP
 
Аватар для zorro
 
Регистрация: 18.01.2008
Сообщений: 1,047
Сказал(а) спасибо: 2,864
Поблагодарили 1,853 раз(а) в 435 сообщениях
Вес репутации: 695
zorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущее
По умолчанию

А вот для всех панелей



function AddUserProperty(obj) {
if (obj.AsPanel) {
Dl = 0;
for (var i = 0; i < obj.Contour.Count; i++) {
ElCont = obj.Contour[i];
if ((ElCont.ElType == 2) || (ElCont.ElType == 3)) {
Dl = Dl + ElCont.ObjLength();
}
}
if (Dl > 0) {
obj.UserProperty['Длина дуг и окр'] = Dl;
// obj.Selected = false;
}
}
}

function InToList(obj) {
for (var i = 0; i < obj.Count; i++) {
objChild = obj.Objects[i];
// if (objChild.Selected)
AddUserProperty(objChild);
if ((objChild instanceof TFurnBlock) || (objChild instanceof TLayer3D))
InToList(objChild);
}
}

for (var i = 0; i < Model.Count; i++) {
obj = Model.Objects[i];
// if (obj.Selected)
AddUserProperty(obj);
if ((obj instanceof TFurnBlock) || (obj instanceof TLayer3D))
InToList(obj);
}
zorro вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
anb (12.01.2021), demanus (12.01.2021), Letos (12.01.2021), maxgmv (12.01.2021), rostder (12.01.2021)
Старый 12.01.2021, 13:14   #387
anb
VIP
 
Регистрация: 01.08.2008
Адрес: Россия
Сообщений: 724
Сказал(а) спасибо: 9,178
Поблагодарили 2,910 раз(а) в 712 сообщениях
Вес репутации: 846
anb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспорима
По умолчанию

Цитата:
Сообщение от zorro Посмотреть сообщение
А вот для всех панелей
Этот вариант более информативнее. Но вот если бы ещё подсвечивался этот контур у панелей.
anb вне форума   Ответить с цитированием Вверх
Старый 12.01.2021, 14:09   #388
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от zorro Посмотреть сообщение
if ((obj instanceof TFurnBlock) || (obj instanceof TLayer3D))
Меня немного смущает это условие, почему не так?
Код:
if (obj.List)
Ваше условие не будет верно для сборок и полуфабрикатов (в отличие от предложенного). Так и задумывалось?
Letos вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
zorro (12.01.2021)
Старый 12.01.2021, 17:01   #389
zorro
VIP
 
Аватар для zorro
 
Регистрация: 18.01.2008
Сообщений: 1,047
Сказал(а) спасибо: 2,864
Поблагодарили 1,853 раз(а) в 435 сообщениях
Вес репутации: 695
zorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущееzorro обеспечил(а) себе прекрасное будущее
По умолчанию

Чтобы подсвечивались панели которым назначены пользовательские свойства о длине дуг и окружностей вместо этой строки
// obj.Selected = false;
вставьте такую строку
obj.Selected = true;

По поводу этой строки.
Цитата:
Сообщение от Letos Посмотреть сообщение
if ((obj instanceof TFurnBlock) || (obj instanceof TLayer3D))
Сборка - это обычно покупное изделие. И там не обязательно знать длины дуг и окружностей.
Полуфабрикат - 50/50.
Так что можно написать вместо
Цитата:
Сообщение от Letos Посмотреть сообщение
if ((obj instanceof TFurnBlock) || (obj instanceof TLayer3D))
и так

Цитата:
Сообщение от Letos Посмотреть сообщение
if (obj.List)
zorro вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
anb (12.01.2021)
Старый 12.01.2021, 21:18   #390
anb
VIP
 
Регистрация: 01.08.2008
Адрес: Россия
Сообщений: 724
Сказал(а) спасибо: 9,178
Поблагодарили 2,910 раз(а) в 712 сообщениях
Вес репутации: 846
anb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспоримаanb репутация неоспорима
По умолчанию

Цитата:
Сообщение от zorro Посмотреть сообщение
Чтобы подсвечивались панели которым назначены пользовательские свойства о длине дуг и окружностей
И всё же лучше что бы только дуги и окружности.
anb вне форума   Ответить с цитированием Вверх
Ответ

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

Опции темы
Опции просмотра

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
БАЗИС 10 - Скрипты systland Базис-мебельщик. Скрипты 715 14.04.2024 07:03
V-Ray в Базис Мебельщик 11/2023 nayrogi Система БАЗИС 73 12.04.2024 17:08
Базис ЧПУ 2021/2024 AlexBolton Базис-мебельщик 2021-2024 137 11.04.2024 13:16
БАЗИС 9 - Скрипты Igor_482 Базис-мебельщик. Скрипты 1442 04.04.2024 11:28
БАЗИС 8 - Скрипты Igor_482 Базис-мебельщик. Скрипты 1525 30.03.2024 15:03


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


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

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