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

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

Меню

Маркет


беспроводные выключатели для мебели
Ответ
 
Опции темы Опции просмотра
Старый 06.06.2017, 08:56  
БАЗИС 10 - Скрипты
systland
VIP
Регистрация: 30.10.2007
Адрес: Москва
Сообщений: 565

Сказал(а) спасибо: 303
Поблагодарили 451 раз(а) в 189 сообщениях
Версия для печати Отправить по электронной почте
systland systland вне форума 06.06.2017, 08:56
Рейтинг: ()

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


Последний раз редактировалось systland; 26.12.2017 в 11:52..
Просмотров: 425170
Ответить с цитированием Вверх
Старый 18.03.2020, 16:14   #521
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

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

Новый код функции разрушения блока


PHP код:
/**
 * Разрушить блок
 * @param {List3D} block Блок для разрушения
 * @param {boolean} recursive Флаг - разрушать ли вложенные блоки
 */
function DestroyBlock(blockrecursive) {
    
// Если блок - Модель, то ничего не делаем, иначе посыпятся аксессы
    
if (block == Model)
        return;
    
// Флаг, создан ли блок скриптом (находится во временной области модели)
    
var blockIsScript block.IsOwner(Model.Temp);
    
Undo.Changing(block);
    
// список вложенных блоков. Используется если разрушение рекурсивное
    
var blocklist = [];
    
// Идём от последнего элемента к первому, т.к. при удалении объекта из блока, 
    // кол-во элементов внутри уменьшается.
    
for (var block.Count 1>= 0i--) {
        var 
obj block.Objects[i];
        
//Если не скриптовый блок, сохраняем изменения объекта в истории вручную
        
if (!blockIsScript) {
            
Undo.Changing(obj);
            
Undo.OwnerChanging(obj);
        }
        
obj.ReTransform(obj.Ownerblock.Owner);
        
obj.Owner block.Owner;
        if (
obj.List) {
            
blocklist.push(obj);
        }
    }
    
DeleteObject(block);
    if (
recursive) {
        for (var 
0blocklist.lengthi++) {
            
DestroyBlock(blocklist[i], true);
        }
    }

[свернуть]
Letos вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
andronf (18.03.2020), Ovsyanicov (21.02.2023)
Старый 22.03.2020, 15:09   #522
a_riva
Местный
 
Регистрация: 25.04.2009
Сообщений: 201
Сказал(а) спасибо: 118
Поблагодарили 29 раз(а) в 15 сообщениях
Вес репутации: 208
a_riva на пути к лучшему
По умолчанию

Подскажите как выделить панели из полуфабрикатов. и по возможности как несколько панелей объединить в полуфабрикат
a_riva вне форума   Ответить с цитированием Вверх
Старый 23.03.2020, 11:06   #523
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от a_riva Посмотреть сообщение
Подскажите как выделить панели из полуфабрикатов. и по возможности как несколько панелей объединить в полуфабрикат

Объединение выделенных панелей в полуфабрикат

PHP код:
var block AddDraftBlock('полуфабрикат');
Action.Commit();
// Послдений объект модели - созданный полуфабрикат
block Model.Objects[Model.Count 1];
// Перебор всех выделенных объектов
for (var 0Model.SelectionCounti++){
    var 
obj Model.Selections[i];
    
// Записываем изменение объекта
    
Undo.Changing(obj);
    
// Записываем изменнение родителя объекта
    
Undo.OwnerChanging(obj);
    
// Менеям локальное преобразование объекта, чтобы при изменении родителя
    // объект остался на том же месте с тем же поворотом
    
obj.ReTransform(obj.Ownerblock);
    
// Назначаем нового родителя.
    
obj.Owner block;
}
Model.UnSelectAll();
block.Selected true
[свернуть]


Выделение панелей в полуфабрикатах

PHP код:
function selectInList(list, select){
    for (var 
0< list.Counti++){
        
obj = list[i];
        if (
obj instanceof TFurnPanel){
            
obj.Selected select;
        }
        else if (
obj.List){
            
selectInList(objselect || (obj instanceof TDraftBlock));
        }
    }
}
selectInList(Modelfalse
[свернуть]
Letos вне форума   Ответить с цитированием Вверх
4 пользователя(ей) сказали cпасибо:
a_riva (23.03.2020), maxgmv (23.03.2020), Ovsyanicov (01.03.2023), rysla._ua (25.04.2023)
Старый 30.03.2020, 14:22   #524
a_riva
Местный
 
Регистрация: 25.04.2009
Сообщений: 201
Сказал(а) спасибо: 118
Поблагодарили 29 раз(а) в 15 сообщениях
Вес репутации: 208
a_riva на пути к лучшему
По умолчанию

подскажите пжста как получить содержимое поля "примечание" в карточке материала, базы материалов

Последний раз редактировалось a_riva; 30.03.2020 в 15:00.
a_riva вне форума   Ответить с цитированием Вверх
Старый 30.03.2020, 16:18   #525
wizardpnz
Местный
 
Регистрация: 02.07.2011
Сообщений: 191
Сказал(а) спасибо: 93
Поблагодарили 105 раз(а) в 44 сообщениях
Вес репутации: 196
wizardpnz скоро придёт к известностиwizardpnz скоро придёт к известности
По умолчанию

sql запросом к файлу БД
wizardpnz вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
a_riva (30.03.2020), Letos (31.03.2020)
Старый 05.04.2020, 11:17   #526
a_riva
Местный
 
Регистрация: 25.04.2009
Сообщений: 201
Сказал(а) спасибо: 118
Поблагодарили 29 раз(а) в 15 сообщениях
Вес репутации: 208
a_riva на пути к лучшему
По умолчанию

Цитата:
Сообщение от wizardpnz Посмотреть сообщение
sql запросом к файлу БД
а к базе БМ11, он (скрипт sql) подключается? что-то пока не получается. переместили в корень, путь базы на латинском? сама база на латинском, без пробелов и не работает(
a_riva вне форума   Ответить с цитированием Вверх
Старый 06.04.2020, 22:25   #527
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от a_riva Посмотреть сообщение
а к базе БМ11, он (скрипт sql) подключается? что-то пока не получается. переместили в корень, путь базы на латинском? сама база на латинском, без пробелов и не работает(
В этом сообщении скрипт для подсчёта веса изделий. Для доступа к базе используется модуль для Node.js (в папке node_modules). Там основная проблема - путь к базе должен содержать только латинские символы (пока побороть это не получилось).
Letos вне форума   Ответить с цитированием Вверх
Старый 17.06.2020, 17:58   #528
Максим Геннадьевич
Местный
 
Регистрация: 11.04.2018
Адрес: г.Маркс
Сообщений: 162
Сказал(а) спасибо: 57
Поблагодарили 242 раз(а) в 45 сообщениях
Вес репутации: 137
Максим Геннадьевич - весьма и весьма положительная личностьМаксим Геннадьевич - весьма и весьма положительная личностьМаксим Геннадьевич - весьма и весьма положительная личность
По умолчанию Mount не срабатывает

У меня не работает или вообще не работает. Пытаюсь установить фурнитуру через Mount , но не срабатывает именно в 10 версии. Подскажите в чем может быть дело. Спасибо
PHP код:

var FileOptions 'Save.xml';
 var 
left GetPanel("Укажите левую панель");
 
left.Build();
var 
prop Action.Properties;
var 
blockMat prop.NewMaterial('Материал');
var 
blockFurn blockMat.NewFurniture('Крепеж');

NewBtn NewButtonInput('Закончить');
NewBtn.OnChange = function() {
    
Action.Commit();
    
Action.Finish();
}

prop.OnChange = function() {
MakeShelf();
}

function 
MakeShelf(){
DeleteNewObjects();
var  
pan AddHorizPanel(left.GabMax.x0400400500);
pan.Build();
blockFurn.Value.Mountpan,leftleft.GabMax.x508200);
  }
  
MakeShelf();
       
Action.Continue(); 
Максим Геннадьевич вне форума   Ответить с цитированием Вверх
Старый 19.06.2020, 10:01   #529
Letos
Консультант
 
Регистрация: 28.06.2017
Сообщений: 555
Сказал(а) спасибо: 127
Поблагодарили 1,030 раз(а) в 366 сообщениях
Вес репутации: 344
Letos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордитсяLetos за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от Максим Геннадьевич Посмотреть сообщение
У меня не работает или вообще не работает. Пытаюсь установить фурнитуру через Mount , но не срабатывает именно в 10 версии. Подскажите в чем может быть дело. Спасибо
У меня нормально. После выбора левой панели и выбора фурнитуры поставилась горизонтальная панель с выбранной фурнитурой по середине (парам. Евровинт, если это имеет значение). Проверял на БМ демо 10.6.2.25692 от 25.01.2019.
Может быть, зависит от панелей и фурнитуры, может от версии БМ
Letos вне форума   Ответить с цитированием Вверх
Старый 19.06.2020, 21:27   #530
Максим Геннадьевич
Местный
 
Регистрация: 11.04.2018
Адрес: г.Маркс
Сообщений: 162
Сказал(а) спасибо: 57
Поблагодарили 242 раз(а) в 45 сообщениях
Вес репутации: 137
Максим Геннадьевич - весьма и весьма положительная личностьМаксим Геннадьевич - весьма и весьма положительная личностьМаксим Геннадьевич - весьма и весьма положительная личность
По умолчанию

Цитата:
Сообщение от Letos Посмотреть сообщение
У меня нормально. После выбора левой панели и выбора фурнитуры поставилась горизонтальная панель с выбранной фурнитурой по середине (парам. Евровинт, если это имеет значение). Проверял на БМ демо 10.6.2.25692 от 25.01.2019.
Может быть, зависит от панелей и фурнитуры, может от версии БМ
Самое интересное, что если создам две панели то функция срабатывает, а если выбираю панель то не работает. У меня версия демо 10.1.0.21913 от 07.07.2017. Попробую сменить версию. Спасибо

Цитата:
Сообщение от Letos Посмотреть сообщение
БМ демо 10.6.2.25692 от 25.01.2019.
Не поделитесь демо версией? Перерыл интернет, но так и не нашел
Максим Геннадьевич вне форума   Ответить с цитированием Вверх
Ответ

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

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Базис-Мебельщик 10 systland Базис-мебельщик 10 1264 13.03.2024 22:48
БАЗИС-Мебельщик 7.0 Shadow Базис-мебельщик 7 2230 29.11.2019 10:37
Базис-мебельщик JavaScript ran Ищу работу 0 09.05.2014 10:08


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


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

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