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

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

Меню

Маркет


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

Сказал(а) спасибо: 7,296
Поблагодарили 16,977 раз(а) в 3,228 сообщениях
Версия для печати Отправить по электронной почте
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
Комплект - руководство+ файлы+ скрипт

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

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

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

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


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

Последний раз редактировалось AlexBolton; 09.01.2024 в 11:56..
Просмотров: 620434
Ответить с цитированием Вверх
14 пользователя(ей) сказали cпасибо:
Старый 03.08.2021, 16:14   #521
Dzen_zs
Новичок
 
Регистрация: 04.04.2020
Адрес: Самара
Сообщений: 7
Сказал(а) спасибо: 11
Поблагодарили 29 раз(а) в 6 сообщениях
Вес репутации: 0
Dzen_zs на пути к лучшему
По умолчанию Обновлённый скрипт по присваиванию префикса к имени панели

В этой версии:
- добавил кнопку по удалению префиксов
- появилась возможность выбора - сразу переименовывать все блоки или вручную выделять нужный блок
- добавил кнопку закрытия скрипта

Название префикса берётся из выбранных полей, находящихся на панели «Свойства». Обработка начинается после нажатия кнопки «Применить».
Описание интерфейса:
«Какие блоки обрабатываем»:
1. «Выделять по отдельности» - ручной выбор блока, в котором переименовывать панели
2. «Выделить всё» - скрипт обрабатывает все блоки модели
«У панели менять»:
1. «Имя» - добавляет префикс к имени панели
2. «Позицию» - добавляет префикс к позиции панели
«Разделитель»:
Ввод символа, который будет ставится после префикса
«Для формирования информации использовать»:
1. «Только имя объекта» - название префикса формируется из названия блоков
2. «Только позицию объекта» - название префикса формируется из позиции блоков
3. «Позицию при наличии, иначе имя» - или п.1 или п.2
«Добавлять имя/позицию»:
1. «Блока, в который вложен объект» - префикс берётся из названия того блока, где находятся панели
2. «Корневого блока» - префикс берётся из названия самого верхнего блока иерархии
3. «Всех блоков в иерархии» - префикс формируется из названия всех блоков в иерархии
Кнопка «Удалить префикс»:
Удаляет ранее добавленные префиксы, Работа скрипта при этом не завершается
!!!Внимание!!! Название панели не должно в себе содержать тот же символ, который используется после префикса. Сотрётся название панели до последнего символа – разделителя. Удаление префикса из позиции сделать вручную, скрипт почему-то не удаляет их оттуда должным образом.
Кнопка «Завершить» - завершает работу скрипта.
!!!Внимание!!! Чтобы скрипт работал должным образом, требуется чтобы в параметре слоёв отсутствовала галка напротив «Всегда активен только текущий слой»
Вложения
Тип файла: zip Имя Блок-Панель-Позиция (v2.1).zip (3.1 Кб, 196 просмотров)
Dzen_zs вне форума   Ответить с цитированием Вверх
15 пользователя(ей) сказали cпасибо:
Старый 03.08.2021, 21:30   #522
OZik
Новичок
 
Регистрация: 16.04.2018
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Вес репутации: 0
OZik пока не определено
По умолчанию

Вот такие файлы я получаю на выходе. Базисовский файл стоит отдельных денег. платить за него постоянно - не комильфо, хотелось бы раз купить и все на том.
Вложения
Тип файла: rar ФАЙЛЫ ЗАМЕРА.rar (169.1 Кб, 165 просмотров)
OZik вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
Berlin2k (16.08.2022)
Старый 05.08.2021, 10:50   #523
Dzen_zs
Новичок
 
Регистрация: 04.04.2020
Адрес: Самара
Сообщений: 7
Сказал(а) спасибо: 11
Поблагодарили 29 раз(а) в 6 сообщениях
Вес репутации: 0
Dzen_zs на пути к лучшему
По умолчанию Обновлённый скрипт по изменению блоков на сборки

В этой версии:
- имя и позиция сборки стала соответствовать исходным значениям блока, из которого она была преобразована

Скрипт узкоспециализированный, не представляю варианты его использования. Со слоями не работает. Переделал по просьбе, может кому-то пригодится.
Вложения
Тип файла: zip Блоки в сборки(v2.0).zip (474 байт, 55 просмотров)

Последний раз редактировалось Dzen_zs; 05.08.2021 в 21:18.
Dzen_zs вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
Kerby (05.08.2021)
Старый 05.08.2021, 11:34   #524
Dzen_zs
Новичок
 
Регистрация: 04.04.2020
Адрес: Самара
Сообщений: 7
Сказал(а) спасибо: 11
Поблагодарили 29 раз(а) в 6 сообщениях
Вес репутации: 0
Dzen_zs на пути к лучшему
По умолчанию Выделить панели с заданным количеством облицовок

В этой версии:
- исправил ошибку, из-за которой данный скрипт не работал с панели скриптов (благодарю kos100pudov, сам не смог понять)

При запуске скрипта появляется окно запроса количества кромок в панели. Описание работы:

- если просто ввести число - выделяются панели, кол-во облицовок которых отличается от введённого значения.
- если перед числом написать знак "<" или ">" или "=" (например <2 или =0, без пробелов), то выделяться будут панели соответственно:
1. Меньше и равные значению
2. Больше и равные значению
3. Точно равные введённому значению.

Последний раз редактировалось Dzen_zs; 05.08.2021 в 21:00.
Dzen_zs вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
Mullerr (18.08.2021)
Старый 05.08.2021, 14:03   #525
kos100pudov
Местный
 
Регистрация: 02.11.2015
Сообщений: 490
Сказал(а) спасибо: 105
Поблагодарили 701 раз(а) в 265 сообщениях
Вес репутации: 293
kos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личностьkos100pudov - просто великолепная личность
По умолчанию

Цитата:
Сообщение от Dzen_zs Посмотреть сообщение
При запуске скрипта появляется окно запроса количества кромок в панели. Описание работы:

- если просто ввести число - выделяются панели, кол-во облицовок которых отличается от введённого значения.
- если перед числом написать знак "<" или ">" или "=" (например <2 или =0, без пробелов), то выделяться будут панели соответственно:
1. Меньше и равные значению
2. Больше и равные значению
3. Точно равные введённому значению.

!!! Внимание !!! скрипт НЕ работает с панели скриптов, запуск получается только из редактора скриптов. Предполагаю, что это из-за функции eval(), и стоило вместо неё сделать switch-case. Но это не точно.
стало интересно поковырял ваш скрипт, проблема крайне "дурная".
"sign", а точнее "sign()" это метод от метода Math и вроде не должно быть глюков, но в данной ситуации что то пошло не так)))
измените название переменной "sign", ну и в конце поставьте ";" - закройте так сказать Model.forEachPanel, на скорость не влияет, чисто для красоты))
__________________
Оно поди конечно если, а как коснись чего-нибудь, так вот те на пожалуйста..
kos100pudov вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
Dzen_zs (05.08.2021)
Старый 05.08.2021, 20:47   #526
Slav
Местный
 
Регистрация: 15.05.2012
Адрес: Москва
Сообщений: 259
Сказал(а) спасибо: 43
Поблагодарили 211 раз(а) в 89 сообщениях
Вес репутации: 213
Slav - весьма и весьма положительная личностьSlav - весьма и весьма положительная личностьSlav - весьма и весьма положительная личность
По умолчанию

Цитата:
Сообщение от kos100pudov Посмотреть сообщение
Это можно, но есть одна проблема. В зависимости от угла "взгляда", под которым так сказать повернуть изделие на экране, будет игнорироваться одна из координат, так как не возможно распознать на какой "глубине" находится курсор. От этого может быть некорректное распознавание размера нужного объёма, да и самого объёма в принципе. Допустим уже есть врезная задняя стенка и нужно установить полку, на виде близком к "виду спереди", в таком случае координатам z курсора будет равна нулю и исследуемый объем оказывается за задней стенкой...
Тут скорее нужно идти путем добавления неких тел и их последующая трансформация. Допустим есть первоначальный ничем не ограниченный объем, добавляем какую то перегородку, вместе с ней добавляются пару тел на оставшиеся объемы, до перегородки и после неё. Добавляем следующую перегородку, выделяем одно из этих тел-объемов, берётся его объем и расположение, оно удаляется, ставится перегородка и снова два тела-объема. Ну и т.д.
Можно ли узнать не 2D координату, а 3D координату точки курсора в пространстве модели?

Добавлено через 2 минуты
И еще вопрос .. есть ли в скриптах команда "параллельно плоскости"?
Slav вне форума   Ответить с цитированием Вверх
Старый 05.08.2021, 21:32   #527
Dzen_zs
Новичок
 
Регистрация: 04.04.2020
Адрес: Самара
Сообщений: 7
Сказал(а) спасибо: 11
Поблагодарили 29 раз(а) в 6 сообщениях
Вес репутации: 0
Dzen_zs на пути к лучшему
По умолчанию

Цитата:
Сообщение от kos100pudov Посмотреть сообщение
стало интересно поковырял ваш скрипт, проблема крайне "дурная".
"sign", а точнее "sign()" это метод от метода Math и вроде не должно быть глюков, но в данной ситуации что то пошло не так)))
измените название переменной "sign", ну и в конце поставьте ";" - закройте так сказать Model.forEachPanel, на скорость не влияет, чисто для красоты))
__________________
Оно поди конечно если, а как коснись чего-нибудь, так вот те на пожалуйста..
У меня, кстати, сомнения были при наименование переменной. Уже всё дописал, отправил товарищу и думаю какой же это sign, надо было char назвать, чтобы соответствовала действительности. Не прокатило))
Dzen_zs вне форума   Ответить с цитированием Вверх
Старый 06.08.2021, 22:24   #528
Slav
Местный
 
Регистрация: 15.05.2012
Адрес: Москва
Сообщений: 259
Сказал(а) спасибо: 43
Поблагодарили 211 раз(а) в 89 сообщениях
Вес репутации: 213
Slav - весьма и весьма положительная личностьSlav - весьма и весьма положительная личностьSlav - весьма и весьма положительная личность
По умолчанию

Возник вопрос .. Каким образом можно определить стороны панели и расположение на этих сторонах облицовок пластиком.. Можно ли выяснить вектор направления ? По сути требуется прописать в пользовательское свойство ПЛАСТЬ1 и ПЛАСТЬ2 все слои находящиеся на панели.
Slav вне форума   Ответить с цитированием Вверх
Старый 08.08.2021, 21:05   #529
Urban
Новичок
 
Регистрация: 01.05.2020
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Вес репутации: 0
Urban пока не определено
По умолчанию

приветствую Коллеги, подскажите возможно сделать скрипт который 1 кнопкой по нему поставит конкретную "схему крепежа" на стыки панели?
может у кого то есть что то такое. спасибо
Urban вне форума   Ответить с цитированием Вверх
Старый 09.08.2021, 08:47   #530
Dzen_zs
Новичок
 
Регистрация: 04.04.2020
Адрес: Самара
Сообщений: 7
Сказал(а) спасибо: 11
Поблагодарили 29 раз(а) в 6 сообщениях
Вес репутации: 0
Dzen_zs на пути к лучшему
По умолчанию Присвоить пользовательскому свойству объекта имя сборочной единицы

При запуске скрипт находит блоки которые являются сборочными единицами и добавляет самому блоку и всем вложенным в него объектам пользовательское свойство с именем "СЕ" и прописывает в тексте этого пользовательского свойства имя данного блока.
Так как скрипт планировалось поставить на автозапуск, то при повторном запуске скрипт не создаёт ещё одно пользовательское свойство с именем "СЕ", а просто перезаписывает каждый раз данное свойство.
Перезапись (удаление свойства с именем "СЕ" и создание по новой нового свойства с именем "СЕ") позволяет адекватно заменять текст в пользовательском свойстве "СЕ" если вдруг блок будет переименован. Ещё одним пунктом является проверка входит ли объект в блок - сборочную единицу, ведь если с блока снят атрибут сборочная единица то и пользовательское свойство с именем "СЕ" удаляется. Если в блок - сборочную единицу входят другие блоки - сборочные единицы то свойство с именем "СЕ" присваивается с текстом в котором прописано имя родительского блока - сборочной единицы.
Данный скрипт планировалось использовать с включённой ИРП. В параметрах ИРП включена галочка "Сравнивать объекты из других сборочных единиц". А в критериях сравнения деталей (расстановка позиций) включена галочка "Пользовательские свойства".
Пример:
Если мы имеем Блок - сборочную единицу с именем "Ящик №1" и имеем второй Блок - сборочную единицу с именем "Ящик №2" то после запуска скрипта в каждом из блоков сборочных единицах будут созданы пользовательское свойство для каждого вложенного объекта и самого блока с именем "СЕ" а в тексте свойства будет прописано имя родительской сборочной единицы. В итоге мы получим следующие: при условии что данные сборочные единицы абсолютно равны (ящики идентичны) то если мы им даём одинаковое имя блока то в результате мы получим две сборочные единицы под одинаковым обозначение (например 01-1) и детали ящика будут все сравнены и одинаковым деталям присвояться одинаковые обозначения. А вот если мы дадим разные имена ящикам ("Ящик №1" и "Ящик №2") то при наличии у каждой панели пользовательского свойства с именем своего блока программа при сравнении присвоит всем деталям свои обозначения.
Вложения
Тип файла: zip Имя CE каждому объекту.zip (575 байт, 86 просмотров)
Dzen_zs вне форума   Ответить с цитированием Вверх
7 пользователя(ей) сказали cпасибо:
Ответ

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


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

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

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

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


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


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

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