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

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

Меню

Маркет


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

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

ВНИМАНИЕ! Правила выкладывания скриптов.

1. Если в скрипте нет ссылок на фурнитуру, фрагменты и.т.д то достаточно его упаковать в архив и выложить.

2. Если в скрипте есть ссылки на фурнитуру, фрагменты и т.д. то архив должен содержать папку с самим скриптом и всеми файлами на которые есть ссылки в тексте скрипта.


Т.к. при запуске скрипта на другом компе возникает ошибка о не возможности открыть то или иной файл и скрипт до конца не отрабатывает свой текст. Не соблюдается "чистота проверки" работы скрипта.

__________________________________________________ _______________

Интересует информация по редактору скриптов в БМ8. Существует ли справочная документация и примеры использования скриптов в БМ8. Какие возможности дает данная функция? Владеющим информацией по данному вопросу просьба поделиться ею.

Для работы скриптов от Igor_482 необходим установленный ODBC драйвер FireBird, установленные и зарегистрированные в ОС модули FBDBDialog.dll, MSDATGRD.OCX, MSCOMCTL.OCX и MSSTDFMT.DLL (сообщение с описанием установки этих модулей в ОС, ссылка на модули и исходник "FBDBDialog.dll") а так же файл "ADODB.ini" с настройками соединения к БД в папке со скриптом.

ADODB.ini


[General]
FDBServ = t001
FBSPort = 14357
FDBFile = D:\DBBM\Библиотека\БД\BMDB09.FDB
FBCFile = C:\Windows\System32\fbclient.dll
----------------------------------------------
Переменные .ini:
FDBServ - имя ПК на котором находится сервер FireBird с используемой БД (если локально, то параметр: localhost или 127.0.0.1);
FBSPort - в настройке не нуждается (по умолчанию: 14357);
FDBFile - локальный путь к БД на сервере FireBird;
FBCFile - путь к файлу "fbclient.dll" (находится в корневой папке программы Базис).
[свернуть]

Последний раз редактировалось systland; 23.09.2016 в 11:52..
Просмотров: 996804
Ответить с цитированием Вверх
Пользователь сказал cпасибо:
evilbaby1989 (10.07.2023)
Старый 30.09.2015, 10:14   #901
Briz
Местный
 
Регистрация: 30.11.2011
Сообщений: 283
Сказал(а) спасибо: 275
Поблагодарили 803 раз(а) в 179 сообщениях
Вес репутации: 358
Briz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личность
По умолчанию

Скрипт использует схему из файла Schemes.config из папки, в которой лежит скрипт. Выложил скрипты со всеми дополнительными файлами в архиве.
Вложения
Тип файла: rar Крепёж.rar (110.1 Кб, 102 просмотров)
Briz вне форума   Ответить с цитированием Вверх
3 пользователя(ей) сказали cпасибо:
maxgmv (01.10.2015), Ozimko (30.09.2015), zorro (30.09.2015)
Старый 30.09.2015, 10:20   #902
Ozimko
VIP
 
Аватар для Ozimko
 
Регистрация: 11.07.2008
Сообщений: 1,019
Сказал(а) спасибо: 261
Поблагодарили 314 раз(а) в 143 сообщениях
Вес репутации: 357
Ozimko как роза среди колючекOzimko как роза среди колючекOzimko как роза среди колючекOzimko как роза среди колючек
По умолчанию

Цитата:
Сообщение от Briz Посмотреть сообщение
Скрипт использует схему из файла Schemes.config из папки, в которой лежит скрипт. Выложил скрипты со всеми дополнительными файлами в архиве.
Спасибо, начал копать уже туда (догадался про пути...)


Как все стало интересно со схемами крепежа!!!! Опять бессонные ночи....
Ozimko вне форума   Ответить с цитированием Вверх
3 пользователя(ей) сказали cпасибо:
Briz (30.09.2015), maxgmv (01.10.2015), zorro (30.09.2015)
Старый 30.09.2015, 12:11   #903
Am0ralist
Местный
 
Регистрация: 16.11.2011
Адрес: Москва / Пенза
Сообщений: 1,135
Сказал(а) спасибо: 307
Поблагодарили 1,257 раз(а) в 524 сообщениях
Вес репутации: 516
Am0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от Briz Посмотреть сообщение
Да, последние обновления девятки умеют и работать с существующими схемами крепежа и создавать новые.
Скажите, а у вас нет данных по всем новшествам в скриптах, а то в шапке последние изменения - тем годом...
__________________
Нахожусь в режиме поиска интересных задач, связанных с Базисом. Москва, 2015.
Am0ralist вне форума   Ответить с цитированием Вверх
Старый 30.09.2015, 14:18   #904
Briz
Местный
 
Регистрация: 30.11.2011
Сообщений: 283
Сказал(а) спасибо: 275
Поблагодарили 803 раз(а) в 179 сообщениях
Вес репутации: 358
Briz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личность
По умолчанию

В принципе все нововведния доступны по нажатию Ctrl+Пробел. Там можно найти следующие функции:

Работа со схемами фурнитуры:
OpenFurnitureScheme: new HDefinition("?FurnitureScheme:'File.config','Имя схемы'", 'Открыть схему установки крепежа'),
OpenFurnitureSchemes: new HDefinition("?FurnitureSchemes:'File.config'", 'Открыть список схем установки крепежа'),
NewFurnitureScheme: new HDefinition("?FurnitureScheme:'Имя схемы'", 'Создать схему установки крепежа'),
NewParamFastenerDB: new HDefinition("?ScriptParamFastenerDB:", 'Создать базу параметрического крепежа'),

Мастера дверей и ящиков:
NewDoorsMaker : new HDefinition('?DoorsMaker:"Мастер установки дверей"', 'Создать мастер установки дверей'),
NewBoxesMaker : new HDefinition('?BoxesMaker:"Мастер установки ящиков"', 'Создать мастер установки ящиков')

Работа с крепежом:
Object.FindConnectedFasteners: new HDefinition("?Array.<Object3>:Obj", 'Получить список общего крепежа на двух панелях'),

Работа с эластичными блоками:
IsElastic: new HDefinition("?Boolean:", 'Являетсяли объект эластичным'),
ElasticResize: new HDefinition("?Vector:newSize", 'Растянуть объект до требуемых размеров'),

И конечно добавлена возможность создания произвольных диалогов - эта функция доступно в меню "Формы"

Для того, чтобы писать скрипты под разные версии Базиса изменилось значение свойства system.apiVersion. Теперь оно равно 90.
Briz вне форума   Ответить с цитированием Вверх
6 пользователя(ей) сказали cпасибо:
Старый 02.10.2015, 16:53   #905
Am0ralist
Местный
 
Регистрация: 16.11.2011
Адрес: Москва / Пенза
Сообщений: 1,135
Сказал(а) спасибо: 307
Поблагодарили 1,257 раз(а) в 524 сообщениях
Вес репутации: 516
Am0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от Briz Посмотреть сообщение
В принципе все нововведния доступны по нажатию Ctrl+Пробел. Там можно найти следующие функции
Вот только
для Obj.Position - выдает подсказку, что это позиция объекта
а на Obj.Rotation - пусто... а работает.

Т.е. CTRL+SPACE - содержит так же не все... как и справочник.

Да и одно дело, когда это в справочнике, и другое, когда изменения отдельно описаны, что они вообще есть.
То есть каждый раз сверять списки, что что-то новое появилось? Выгружать данные об модели, чтоб понять чем расширили? Ерундистика какая-то. Позиция БЦ вообще не понятно в этом плане. Их же не просят скрипты писать самих, их просят инфу по ним выдавать, но нет - секретная, блин...
__________________
Нахожусь в режиме поиска интересных задач, связанных с Базисом. Москва, 2015.
Am0ralist вне форума   Ответить с цитированием Вверх
Старый 06.10.2015, 16:51   #906
Am0ralist
Местный
 
Регистрация: 16.11.2011
Адрес: Москва / Пенза
Сообщений: 1,135
Сказал(а) спасибо: 307
Поблагодарили 1,257 раз(а) в 524 сообщениях
Вес репутации: 516
Am0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от Am0ralist Посмотреть сообщение
для Obj.Position - выдает подсказку, что это позиция объекта
Причем, это всё это - ложь, пи***ж и провокация (с)
Это какие-то циферки, которые к реальному "положению" панели часто имеют мало отношения.

Вот, берем две панельки
Две панельки.zip

поочередно выделяем их и запускаем примитивнейший скрипт

Скрипт

Obj = Model.Selected;

if (Obj)
Obj = Obj.AsPanel;

alert(Obj.PositionX + ' ' + Obj.PositionY + ' ' + Obj.PositionZ);
[свернуть]


Что видим? Просто повторение циферок из соответствующих полей координат.

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

Разница, надеюсь, понятная всем?

То есть по хорошему надо еще проверять, что координаты GMin по осям 0x, 0y и 0z равны 0... И предусматривать в алгоритмах коррекцию на такие случаи.

И да, такие панели результат не только "ручного" вмешательства в контуры панелей, а и вполне себе работы "мастеров" параметрического построения в Базисе.
__________________
Нахожусь в режиме поиска интересных задач, связанных с Базисом. Москва, 2015.
Am0ralist вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
ozzy21 (10.08.2016)
Старый 07.10.2015, 11:43   #907
fanest
Пользователь
 
Регистрация: 26.09.2014
Сообщений: 46
Сказал(а) спасибо: 55
Поблагодарили 15 раз(а) в 5 сообщениях
Вес репутации: 124
fanest на пути к лучшему
По умолчанию

Народ подскажите новичку как скриптом реализовать следующее:
1. Скрипт находит в изделии все пазы под ДВП (ХДФ)
2. Затем подрезает их на нужный мне размер по длине
или
1. Скрипт наносит сразу пазы на все выделенные панели с нужной мне подрезкой.

Надеюсь кто-нибудь откликнется, спасибо!
fanest вне форума   Ответить с цитированием Вверх
Старый 07.10.2015, 15:48   #908
Am0ralist
Местный
 
Регистрация: 16.11.2011
Адрес: Москва / Пенза
Сообщений: 1,135
Сказал(а) спасибо: 307
Поблагодарили 1,257 раз(а) в 524 сообщениях
Вес репутации: 516
Am0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордится
По умолчанию

Вопрос на засыпку:

Есть панель, вложенная в блок, который вложен еще в один блок.

Панель в модели повернута:
вокруг оси 0z на K1 градусов и вокруг оси, параллельной 0x на K2 градусов.

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

То есть по факту у нас три "ротации" в пространстве вокруг произвольных векторов

Как создать панель, которая будет расположена там же, где исходная панель (но не входящую в эти блоки), но при этом которую мы хотим повернуть ее еще вокруг локальной оси 0z панели?
То есть как "суммировать" все значения "ротации" блоков и произвольной панели, плюс "ротацию" самой панели?

Да, у объектов (панели, блоков и т.п.) есть свойство Rotation (которого нет на в справочнике, ни в контекстной справке), но это свойство - лишь в локальной системе координат, и аналогичного в глобальной системе координат - нет.

"Суммировать" напрямую Rotation двух объектов не получается...
__________________
Нахожусь в режиме поиска интересных задач, связанных с Базисом. Москва, 2015.
Am0ralist вне форума   Ответить с цитированием Вверх
Старый 07.10.2015, 16:47   #909
Briz
Местный
 
Регистрация: 30.11.2011
Сообщений: 283
Сказал(а) спасибо: 275
Поблагодарили 803 раз(а) в 179 сообщениях
Вес репутации: 358
Briz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личностьBriz - просто великолепная личность
По умолчанию

Цитата:
Сообщение от Am0ralist Посмотреть сообщение
То есть как "суммировать" все значения "ротации" блоков и произвольной панели, плюс "ротацию" самой панели?
Имеем:
LocalMatrix - поворот и смещение панели относительно родителя
GlobalMatrix - поворот и смещение панели относительно всей модели
PHP код:
  NewPanel.LocalMatrix OldPanel.GlobalMatrix
Добавлено через 9 минут
Цитата:
Сообщение от fanest Посмотреть сообщение
Народ подскажите новичку как скриптом реализовать следующее:
1. Скрипт находит в изделии все пазы под ДВП (ХДФ)
2. Затем подрезает их на нужный мне размер по длине
или
1. Скрипт наносит сразу пазы на все выделенные панели с нужной мне подрезкой.

Надеюсь кто-нибудь откликнется, спасибо!
Взять и подрезать пазы можно так, а нанести пазы еще проще - просто идити по выделнным панелям, смотрите скрипты в поставке
PHP код:
Model.forEachPanel(function(Obj) {
    if (
Obj.Cuts) {
        for(var 
0Obj.Cuts.Countk++) {
            
Cut Obj.Cuts[k];
            if (
Cut.Contour.Width 3.5) {
              
Min Cut.Trajectory.Min;
              
Max Cut.Trajectory.Max;
              
Min.-= 2;
              
Max.+= 2;
              
Cut.Trajectory.Fit(Min.xMin.yMax.xMax.y);
            }
        }
        
Obj.Build();
    }
}); 
Briz вне форума   Ответить с цитированием Вверх
6 пользователя(ей) сказали cпасибо:
Старый 07.10.2015, 16:57   #910
Am0ralist
Местный
 
Регистрация: 16.11.2011
Адрес: Москва / Пенза
Сообщений: 1,135
Сказал(а) спасибо: 307
Поблагодарили 1,257 раз(а) в 524 сообщениях
Вес репутации: 516
Am0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордитсяAm0ralist за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от Briz Посмотреть сообщение
Имеем:
LocalMatrix - поворот и смещение панели относительно родителя
GlobalMatrix - поворот и смещение панели относительно всей модели
PHP код:
  NewPanel.LocalMatrix OldPanel.GlobalMatrix
Офигеть, дайте два
Ну вот нет этих данных ни по Ctrl+Space, ни в справочнике *.chm...
__________________
Нахожусь в режиме поиска интересных задач, связанных с Базисом. Москва, 2015.
Am0ralist вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
v22884 (12.11.2015)
Ответ

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


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
БАЗИС 8 - Скрипты Igor_482 Базис-мебельщик. Скрипты 1525 30.03.2024 15:03
БАЗИС 9 nayrogi Базис-мебельщик 9 785 01.10.2022 23:13
БАЗИС-ЧПУ 8 chingisnah Базис-мебельщик 8 119 21.12.2017 22:04
Заявки на скрипты dr_john Система БАЗИС 37 01.03.2016 10:36
Базис-7,"Народный Базис"и Windows-8 sergeyzak18 "НАРОДНЫЙ" базис 23 16.01.2014 00:37


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


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

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