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

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

Меню

Маркет


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

Сказал(а) спасибо: 34
Поблагодарили 795 раз(а) в 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..
Просмотров: 566326
Ответить с цитированием Вверх
13 пользователя(ей) сказали cпасибо:
Старый 12.10.2021, 18:57   #111
sergio1982
Местный
 
Регистрация: 01.09.2019
Сообщений: 424
Сказал(а) спасибо: 52
Поблагодарили 481 раз(а) в 147 сообщениях
Вес репутации: 197
sergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царстве
По умолчанию Рисование текста в модели 3D



Рисование текста в модели 3D
- поддерживает многострочный текст
- имеет в составе три шрифта для использования в скрипте на выбор
- имеет сохраняемые опции размера и цвета шрифта, междустрочного расстояния
- текст создается в виде параметрического блока с возможностью его редактирования после построения

Как пользоваться:
после запуска указать две точки для позиционирования будущего текста, перед этим его нужно ввести в поле ввода или выбрать буфер обмена.

Скрипт разработан на основании скрипта от Igor_482

Текст.zip
sergio1982 вне форума   Ответить с цитированием Вверх
12 пользователя(ей) сказали cпасибо:
Старый 13.10.2021, 23:12   #112
kos100pudov
Местный
 
Регистрация: 02.11.2015
Сообщений: 490
Сказал(а) спасибо: 105
Поблагодарили 702 раз(а) в 265 сообщениях
Вес репутации: 294
kos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личность
По умолчанию панель всегда смотрит на вас))

Доброго вечера форумчане!
Пытаясь найти некие ответы, набросал небольшой скрипт, который держит панель, или любой другой объект лицом к зрителю, независимо от поворота камеры.
выделяем объект, запускаем скрипт. вращаем сцену как угодно, объект смотрит на нас.
для корректного завершения необходимо финишировать через кнопку "Закончить" на панели параметров.

работу проверял только в 21-м..

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

Action.Continue();

OkBtn = NewButtonInput('Закончить');

obj = Model.Selected;
obj.Selected=false;
obj_pos = obj.Position;
obj_owner = obj.Owner;
var block = AddBlock();
block.Build();
Action.Commit();
block = Model.Objects[Model.Count-1];
obj.Owner=block;
obj.SetDefaultTransform();
block.Translate(obj_pos);
angle_y = Action.DS.Camera.AngleY;
angle_x = Action.DS.Camera.AngleX;
block.RotateY(-angle_y);
obj.RotateX(-angle_x);

Action.OnMove = function() {
block.RotateY(angle_y-Action.DS.Camera.AngleY);
obj.RotateX(angle_x-Action.DS.Camera.AngleX);
angle_y=Action.DS.Camera.AngleY;
angle_x=Action.DS.Camera.AngleX;
};

OkBtn.OnChange = function() {
obj.ReTransform(obj.Owner, obj_owner);
obj.Owner = obj_owner;
Action.Commit();
DeleteObject(block);
Action.Finish();

};
[свернуть]
__________________
Оно поди конечно если, а как коснись чего-нибудь, так вот те на пожалуйста..
kos100pudov вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
d.leha.a (22.01.2022), Ovsyanicov (14.10.2021), PravCom (14.10.2021), sergio1982 (14.10.2021), Uncle (14.10.2021)
Старый 16.10.2021, 09:05   #113
PEHAT
Местный
 
Регистрация: 07.09.2014
Сообщений: 187
Сказал(а) спасибо: 182
Поблагодарили 211 раз(а) в 69 сообщениях
Вес репутации: 179
PEHAT - весьма и весьма положительная личностьPEHAT - весьма и весьма положительная личностьPEHAT - весьма и весьма положительная личность
По умолчанию Подсчёт объёма модели через пользовательские свойства

Цитата:
Сообщение от AnRusik Посмотреть сообщение
... хотелось бы в смете получить объем изделия в сборе.
...
В итоге в смете с привязкой к этому материалу появится объем изделия, равный габаритной рамке модели.
Скрипт нужен для Базис 10.
Реализация через пользовательские свойства

1. Создать Пользовательский вычисляемый параметр, с текстом:

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

if (Panel.UserProperty['Объём модели'] > 0) {
i = 0;
while (i < Panel.UserProperty['Объём модели']) {
i += 0.001;
}
};
V = +i.toFixed(2);
Result = V;
[свернуть]

2. Создать Операцию. Назначить ей параметр с модели - созданный в пункте 1.

3. Создать материал "Объём модели", назначить по сопутствию операцию - созданную в пункте 2.
Если, в вашей базе, иное наименование материала, то замените материал во фрагменте "Объём модели.fr3d" - лежит в папке со скриптом.

Скрипт подгружает материал из фрагмента и присваивает значение пользовательского свойства, равное объёму габаритной рамки модели.
Результат смотрим в смете операций. Если результат нужен именно в материалах, то создаём нужный материал и назначаем по сопутствию к операции.
Вложения
Тип файла: zip Объём модели.zip (1.6 Кб, 42 просмотров)
PEHAT вне форума   Ответить с цитированием Вверх
3 пользователя(ей) сказали cпасибо:
AlexBolton (19.10.2021), AnRusik (18.10.2021), kopnyc (16.10.2021)
Старый 16.10.2021, 23:43   #114
sergio1982
Местный
 
Регистрация: 01.09.2019
Сообщений: 424
Сказал(а) спасибо: 52
Поблагодарили 481 раз(а) в 147 сообщениях
Вес репутации: 197
sergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царствеsergio1982 - луч света в тёмном царстве
По умолчанию Расстановка размеров



Файлы.
Видео.

v2.00
Добавлена установка 'От точки до точки', ставится при любых углах, штатный метод так не ставит.

Добавлены линии визуализирующие перед установкой вектор текущего и общего размера.
sergio1982 вне форума   Ответить с цитированием Вверх
13 пользователя(ей) сказали cпасибо:
Старый 19.10.2021, 14:53   #115
Igor_482
VIP
 
Аватар для Igor_482
 
Регистрация: 03.09.2008
Сообщений: 174
Сказал(а) спасибо: 34
Поблагодарили 795 раз(а) в 113 сообщениях
Вес репутации: 369
Igor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личностьIgor_482 - просто великолепная личность
По умолчанию Построение "плинтуса" с произвольным контуром и подрезом угловых соединений


9
11д
2021


Построение "плинтуса" с произвольным контуром и подрезом угловых соединений

Автоматическое построение цепочки профилей на основании выбранного фрагмента с телом выталкивания с произвольным углом поворота вокруг оси 0Z и произвольной формой контура по указанным в модели точкам и подрезом сегментов цепочки в местах их угловых соединений.

- скрипт унифицирован для БМ версий 8 – 2021
- цепочка профилей строится и сохраняется в составе параметрического блока, что даёт возможность редактирования полученного объекта после завершения работы скрипта
- позволяет удалять точки для построения цепочки в ходе работы цикла построения
- позволяет менять направление построения цепочки тем самым менять лицевую и обратную сторону её сегментов в ходе работы цикла построения
- проверяет является ли цепочка из указанных точек замкнутым контуром и выполняет соответствующий подрез сегментов в точке совпадения её начала с окончанием
- в состав скрипта входит набор классов (подпапка "Units") для работы с числами, точками, векторами и кватернионами с набором базовых функций связанных с вычислениями в векторной графике
- также в архиве файл примера ("example.b3d") построений с использованием данного скрипта и файл использованного для этого фрагмента ("КоронаМДФ 00W-002 [76,5x21] As-profil.f3d")

скрипт


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

[свернуть]

видео работы скрипта
Igor_482 вне форума   Ответить с цитированием Вверх
19 пользователя(ей) сказали cпасибо:
Старый 19.10.2021, 15:59   #116
MebelitBY
Пользователь
 
Регистрация: 09.11.2014
Сообщений: 43
Сказал(а) спасибо: 12
Поблагодарили 11 раз(а) в 7 сообщениях
Вес репутации: 123
MebelitBY на пути к лучшему
По умолчанию

8

Поиск деталей с пазом


Выделяет все детали в заказе у которых есть паз.

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



Model.forEachPanel(function(obj) {
if (obj.Cuts.Count > 0)
obj.Selected = true;
else
obj.Selected = false;

});

[свернуть]
MebelitBY вне форума   Ответить с цитированием Вверх
4 пользователя(ей) сказали cпасибо:
Kerby (30.10.2021), Mullerr (13.07.2022), PravCom (19.10.2021), vas64 (02.11.2021)
Старый 29.10.2021, 20:45   #117
Станислав Станилевич
Пользователь
 
Аватар для Станислав Станилевич
 
Регистрация: 19.02.2019
Адрес: На юге
Сообщений: 35
Сказал(а) спасибо: 21
Поблагодарили 154 раз(а) в 24 сообщениях
Вес репутации: 99
Станислав Станилевич - весьма и весьма положительная личностьСтанислав Станилевич - весьма и весьма положительная личность
По умолчанию Спасибо за идею)

Цитата:
Сообщение от Ovsyanicov Посмотреть сообщение
Для возможности "повесить" команду удаления истории на горячую клавишу.

PHP код:
let ConfirmDelete confirm("Удалить историю модели?");
if(
ConfirmDelete){
    
Undo.Clear();

Немного доработал.
Успешно работает на автоматическом срабатывании(Сохранение/Выпуск чертежей)
В историю отправляет запись о чистке.
Время и дату добавляет, если скрипт привязать к кнопке.

Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащейся здесь.
Миниатюры
2021-10-29_20-54-07.png   2021-10-29_20-53-48.png   2021-10-29_20-56-50.png  

Последний раз редактировалось Станислав Станилевич; 29.10.2021 в 21:43.
Станислав Станилевич вне форума   Ответить с цитированием Вверх
6 пользователя(ей) сказали cпасибо:
Старый 13.11.2021, 17:20   #118
kos100pudov
Местный
 
Регистрация: 02.11.2015
Сообщений: 490
Сказал(а) спасибо: 105
Поблагодарили 702 раз(а) в 265 сообщениях
Вес репутации: 294
kos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личность
По умолчанию скрипт последовательной анимации

Товарищи, играйтесь кому нужно))
Написал по просьбе Uncle, но думаю может еще кому пригодится.
последовательно отрабатывает анимацию выделенного блока и его подблоков, у которых назначена анимация.
последовательность - сначала головной блок, потом блоки на один уровень ниже, по порядку, потом подблоки каждого из этих подблоков, по порядку, ну и т.д.
при повторном запуске скрипта, все срабатывает в обратном порядке.

скрипт последовательной анимации

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

function ListObjAnim(obj){
if (obj.List){
for (var i=0; i<obj.Count; ++i){
if ((obj.Objects[i].List)&&(obj.Objects[i].Animation)&&(obj.Objects[i].AnimType!=0)){
list_obj_anim.push(obj.Objects[i]);
}
}
}
if (obj.List){
for (var i=0; i<obj.Count; ++i){
ListObjAnim(obj.Objects[i]);
}
}
}
//********************************
if (Model.SelectionCount==0){
alert ('нет выделенных элементов');
Action.Finish();
}
var obj=Model.Selected;
var list_obj_anim=[];
var timers = require('timers');
var obj_num=0;
Action.Continue();
//если выделеный блок имеет анимацию включаем его в список
if ((obj.List)&&(obj.Animation)&&(obj.Animation.AnimType!=0)){
list_obj_anim.push(obj);
}
//передаем выделенный блок в функцию
//добавляем в список подблоки если они имеют анимацию
//порядок добавления согласно уровням вложенности
ListObjAnim(obj);
//завершаем скрипт если список анимированных элементов пуст
if (list_obj_anim.length == 0){
alert ('выделенные элементы не имеют анимации');
Action.Finish();
}
//если первый элемент списка находится в состоянии анимации (открыт/сдвинут == 1), то сортируем список в обратном порядке
if (list_obj_anim[0].Animation.AnimPos == 1){
list_obj_anim.reverse();
}
//запускаем анимацию первого элемента списка
list_obj_anim[obj_num].Animation.ToggleAnimatePos();
//параллельно запускаем таймер, следим когда закончится анимация активного элемента
//каждые 50 милисек проверяем состояние анимации активного элемента (состояние анимации примет значение 0 или 1)
timers.setInterval(() => {
if ((list_obj_anim[obj_num].Animation.AnimPos == 0) || (list_obj_anim[obj_num].Animation.AnimPos == 1)) {
//если анимация завершена а элементы еще есть, то запускаем анимацию следующего элемента
//либо завершаем работу скрипта
if (obj_num < list_obj_anim.length-1){
++obj_num;
list_obj_anim[obj_num].Animation.ToggleAnimatePos();
} else {
alert('анимация завершена');
Action.Finish();
}
}
}, 50);
[свернуть]


скрипт сброса анимации в исходное состояние для всех блоков модели, на всякий случай))

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

Model.forEach(function (obj){
if ((obj.List)&&(obj.Animation)&&(obj.Animation.AnimType!=0)){
obj.Animation.ResetAnimation();
}
});
[свернуть]


p.s. в 8-ке не работает. в 9, 10, 11 не пробовал..
__________________
Оно поди конечно если, а как коснись чего-нибудь, так вот те на пожалуйста..
kos100pudov вне форума   Ответить с цитированием Вверх
8 пользователя(ей) сказали cпасибо:
Старый 14.11.2021, 02:59   #119
kos100pudov
Местный
 
Регистрация: 02.11.2015
Сообщений: 490
Сказал(а) спасибо: 105
Поблагодарили 702 раз(а) в 265 сообщениях
Вес репутации: 294
kos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личность
По умолчанию добавление заглушек по отверстиям фурнитуры и материалу

Доброй ночи)))
Наконец закончил скрипт, предоставляющий выбор какие заглушки добавить в модель.
Оценивает фурнитуру, отверстия которые отвечают за заглушки и материал в которых эти отверстия расположены.
далее пользователь выбирает нужные заглушки, при необходимости корректирует количество и ОК, заглушки внесены в модель в виде объектов фурнитуры.
есть два режима работы, переключается в первых строчках кода скрипта:
у пользователя заглушки существуют в виде файлов произвольной фурнитуры, тогда в модель вставляем именно их.
у пользователя нет произвольной фурнитуры заглушек. тогда скриптом ставится заранее сохраненная со скриптом фурнитура "заглушка", а ее материал пользователь выбирает в базе материалов.
для фильтрации необходимых отверстий от фурнитуры, в зависимости от которых нужно добавлять заглушки, необходимо заполнить файл "список.csv".
первый столбец - фраза из названия фурнитуры, которую нужно просматривать.
второй столбец - размер отверстия, которое нужно проанализировать в данной фурнитуре. отверстия записываются тремя способами, одна цифра-диаметр сквозного, цифра*цифра-диаметр и глубина глухого, цифра**-диаметр глухого и любая глубина глухого.
скрипт, список и заглушка во вложении.
Вложения
Тип файла: zip добавление заглушек.zip (11.1 Кб, 162 просмотров)
__________________
Оно поди конечно если, а как коснись чего-нибудь, так вот те на пожалуйста..
kos100pudov вне форума   Ответить с цитированием Вверх
8 пользователя(ей) сказали cпасибо:
Старый 14.11.2021, 11:37   #120
kos100pudov
Местный
 
Регистрация: 02.11.2015
Сообщений: 490
Сказал(а) спасибо: 105
Поблагодарили 702 раз(а) в 265 сообщениях
Вес репутации: 294
kos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личность
По умолчанию добавление заглушек по отверстиям фурнитуры и материалу

Цитата:
Сообщение от kos100pudov Посмотреть сообщение
Доброй ночи)))
Наконец закончил скрипт, предоставляющий выбор какие заглушки добавить в модель.

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

Оценивает фурнитуру, отверстия которые отвечают за заглушки и материал в которых эти отверстия расположены.
далее пользователь выбирает нужные заглушки, при необходимости корректирует количество и ОК, заглушки внесены в модель в виде объектов фурнитуры.
есть два режима работы, переключается в первых строчках кода скрипта:
у пользователя заглушки существуют в виде файлов произвольной фурнитуры, тогда в модель вставляем именно их.
у пользователя нет произвольной фурнитуры заглушек. тогда скриптом ставится заранее сохраненная со скриптом фурнитура "заглушка", а ее материал пользователь выбирает в базе материалов.
для фильтрации необходимых отверстий от фурнитуры, в зависимости от которых нужно добавлять заглушки, необходимо заполнить файл "список.csv".
первый столбец - фраза из названия фурнитуры, которую нужно просматривать.
второй столбец - размер отверстия, которое нужно проанализировать в данной фурнитуре. отверстия записываются тремя способами, одна цифра-диаметр сквозного, цифра*цифра-диаметр и глубина глухого, цифра**-диаметр глухого и любая глубина глухого.
скрипт, список и заглушка во вложении.
[свернуть]


p.s. немного доработал скрипт. заглушки помещает в блок "заглушки". блокируется кнопка ОК, если не выбраны заглушки.
Вложения
Тип файла: zip добавление заглушек.zip (11.2 Кб, 110 просмотров)
__________________
Оно поди конечно если, а как коснись чего-нибудь, так вот те на пожалуйста..
kos100pudov вне форума   Ответить с цитированием Вверх
5 пользователя(ей) сказали cпасибо:
demanus (04.12.2021), Kerby (15.11.2021), Mullerr (13.07.2022), Ovsyanicov (16.11.2021), Uncle (14.11.2021)
Ответ

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


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
БАЗИС 11-2024 - Скрипты AlexBolton Базис-мебельщик. Скрипты 1001 Сегодня 10:55
БАЗИС 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


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


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

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