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

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


Реклама на портале PROMEBELclub
Реклама на портале PROMEBELclub

битрикс24 Клей для мебели HOMA.
Ответ
 
Опции темы Опции просмотра
Старый 21.12.2017, 11:21  
Заявки на создание скрипта.
systland
Модератор
Регистрация: 30.10.2007
Адрес: Москва
Сообщений: 564

Сказал(а) спасибо: 299
Поблагодарили 445 раз(а) в 187 сообщениях
Версия для печати Отправить по электронной почте
systland systland вне форума 21.12.2017, 11:21
Рейтинг: (2 голосов - 4.50 средняя оценка)

Тема создана для размещения заявок на написание скриптов.

Для того, чтобы заявка была рассмотрена, необходимо составить максимально понятное техзадание :
1. Описать, какую задачу должен выполнять скрипт.
2. Какие данные должны использоваться скриптом.
3. Алгоритм (последовательность действий) работы скрипта.

Заявки типа "Мне нужен скрипт для расстановки полок" или подобные рискуют остаться без внимания.

Любые заявки не обязательны для рассмотрения. Если Вам не ответили, значит по какой-либо причине нет возможности её выполнить.
Альтернативный вариант - обратиться лично к тем, кто может оказать такую услугу

Другие сообщения, не соответствующие назначению темы, будут удалены без предупреждения!

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


Последний раз редактировалось Uncle; 03.02.2020 в 19:07.. Причина: Поправил шапку
Просмотров: 61894
Ответить с цитированием Вверх
Старый 23.03.2021, 11:28   #121
K L A N
Местный
 
Регистрация: 31.08.2016
Сообщений: 648
Сказал(а) спасибо: 742
Поблагодарили 1,371 раз(а) в 515 сообщениях
Вес репутации: 395
K L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордитсяK L A N за этого человека можно гордится
По умолчанию

Цитата:
Сообщение от Human2Q Посмотреть сообщение
Текстовое значение же есть, можно подбирать заглужку с таким же текстовым значением
Тогда вам надо создать такое же количество заглушек, сколько у вас ЛДСП?
И каждой "группе" назначить артикул заглушки. Их же гораздо меньше по цветам...
Возможно есть какой то хитрый способ. Но я не понимаю алгоритм, как это сделать)
__________________
Вокруг тебя происходит то, что ты позволил.
K L A N вне форума   Ответить с цитированием Вверх
Старый 23.03.2021, 11:29   #122
Анатолий.ru
Пользователь
 
Регистрация: 22.07.2014
Адрес: Sochi
Сообщений: 75
Сказал(а) спасибо: 128
Поблагодарили 115 раз(а) в 31 сообщениях
Вес репутации: 113
Анатолий.ru скоро придёт к известностиАнатолий.ru скоро придёт к известности
По умолчанию #Запрос. 3D DXF в Мебельщик.

Доброго времени суток.
#Запрос.
Импорт файла 3D DXF в Мебельщик.
Без скрипта: Алгоритм таков, загружаю в 3CAD, отрезкам предаю тело 1мм. После загружаю в мебельщик.
Вложения
Тип файла: zip 3D_DXF .zip (2.6 Кб, 9 просмотров)
Анатолий.ru вне форума   Ответить с цитированием Вверх
Старый 05.04.2021, 14:44   #123
Mullerr
Новичок
 
Регистрация: 28.01.2021
Сообщений: 4
Сказал(а) спасибо: 18
Поблагодарили 0 раз(а) в 0 сообщениях
Вес репутации: 0
Mullerr пока не определено
По умолчанию

Здравствуйте. Есть стандартный скрипт в 8БМ "Облицовка кромкой". Может кто-нибудь его изменить чтобы он работал не на всех панелях, а только на выделенных и облицовывал "все кромки/видимые/открытые". Скрипт прилагается.
Вложения
Тип файла: rar Облицовка кромкой.rar (977 байт, 2 просмотров)
Mullerr вне форума   Ответить с цитированием Вверх
Старый 07.04.2021, 19:23   #124
kos100pudov
Пользователь
 
Регистрация: 02.11.2015
Сообщений: 42
Сказал(а) спасибо: 5
Поблагодарили 16 раз(а) в 6 сообщениях
Вес репутации: 74
kos100pudov на пути к лучшему
По умолчанию

Цитата:
Сообщение от Human2Q Посмотреть сообщение
Текстовое значение же есть, можно подбирать заглужку с таким же текстовым значением
Решается через смету, операции и сопутствующие материалы.
Создаёте операцию допустим "заглушка эксцентрика белая", параметр для этой операции "кол-во глухих отверстий d15", кэтой операции назначает сопутствующие материал "заглушка эксц.белая"..
Делаете подобные операции для всех цветов заглушек.
По аналогии делаете такие же операции для всех видов заглушек.
Потом для удобства можно сделать операцию допустим "кол-во всех заглушек белые", параметр с модели не указываете, к данной операции по сопутствия подвязываете все ранее созданные операции, заглушки от которых используются для белого материала.
Далее эту обобщенную операцию подвязываете сопутствием ко всем белым материалам.
И вуаля.
Так называемая групповая операция не обязательна, можно все "вложенные" в неё сразу на материал назначить, просто мне было так удобнее, одну назначил а не десять)
У нас все работает и на лдсп и на профиль реагирует.
kos100pudov вне форума   Ответить с цитированием Вверх
Старый 07.04.2021, 23:21   #125
sergio1982
Местный
 
Регистрация: 01.09.2019
Сообщений: 138
Сказал(а) спасибо: 25
Поблагодарили 82 раз(а) в 29 сообщениях
Вес репутации: 49
sergio1982 скоро придёт к известности
По умолчанию

Цитата:
Сообщение от Mullerr Посмотреть сообщение
Здравствуйте. Есть стандартный скрипт в 8БМ "Облицовка кромкой". Может кто-нибудь его изменить чтобы он работал не на всех панелях, а только на выделенных и облицовывал "все кромки/видимые/открытые". Скрипт прилагается.

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

Код:
Materials = [];
PanelByMaterial = [];
var PanelChanged = 0;

var Selected = Model.SelectionCount;


Model.forEachPanel(
    function(Obj) {
        if (Selected && !Obj.Selected)
            return
        var MtName = Obj.MaterialName;
        var Index = Materials.indexOf(MtName);
        if (Index < 0) {
            Index = Materials.push(MtName) - 1;
            var Panels = [];
            PanelByMaterial.push(Panels);
        }
        PanelByMaterial[Index].push(Obj);
    });

len = Materials.length;
system.log(len);
for (var i = 0; i < len; ++i) {
    var Gr = Action.Properties.NewCombo(Materials[i], 'На видимые\nНа все\nУдалить');
    Gr.NewButt('Кромка');
    BtnPanSel = Gr.NewSelector('Панелей', PanelByMaterial[i].length + ' шт');
    BtnPanSel.Tag = i;
    BtnPanSel.OnClick = function(Sel) {
        UnSelectAll();
        var Panels = PanelByMaterial[Sel.Tag];
        var len = Panels.length;
        for (var j = 0; j < len; ++j) {
            Panels[j].Selected = true;
        }
    };

    BtnMake = Gr.NewButton('Применить');
    BtnMake.Tag = i;
    BtnMake.OnClick = function(Sel) {
        UnSelectAll();
        var Panels = PanelByMaterial[Sel.Tag];
        var Gr = Action.Properties.Items[Sel.Tag];
        CurAction = Gr.ItemIndex;
        var Butt = Gr.Items[0];
        plen = Panels.length;
        system.log('make butts: ' + plen);
        for (var j = 0; j < plen; ++j) {
          if (MakeButts(Panels[j], CurAction, Butt))
            PanelChanged++;
        }
        Action.Hint = 'отредактировано панелей: ' + PanelChanged;
        Action.Commit();
    };
}

NewButtonInput("Закончить").OnChange = function() { Action.Finish() };
NewButtonInput("Снять выделение").OnChange = function() { UnSelectAll() };

function MakeButts(Panel, Action, Butt) {
    var res = false;
    system.log('Panel: ' + Panel.Name);
    if (Action < 2 ) {
        if (Panel.Butts.Count === 0) {
            for (var i = 0; i < Panel.Contour.Count; i++) {
                if  ((Action == 1) || (Panel.IsButtVisible(i, 1))) {  //проверяет соприкасеется ли кромящиеся сторана(i) с другой пнелью на растояние 1мм
                    system.log('Editing panel butt ' + i);
                    StartEditing(Panel);
                    Panel.AddButt(Butt, i);
                    res = true;
                }
            }
        }
    }
    if (Action == 2) {
        if (Panel.Butts.Count > 0) {
          StartEditing(Panel);
          Panel.Butts.Clear();
          res = true;
        }
    }
    return res;
}

Action.Continue();
[свернуть]
sergio1982 вне форума   Ответить с цитированием Вверх
2 пользователя(ей) сказали cпасибо:
Mullerr (12.04.2021), toucaner (09.04.2021)
Старый 09.04.2021, 21:05   #126
Uncle
Модератор
 
Аватар для Uncle
 
Регистрация: 31.10.2009
Адрес: Рівне. УкраЇна
Сообщений: 10,289
Сказал(а) спасибо: 14,431
Поблагодарили 19,461 раз(а) в 6,339 сообщениях
Вес репутации: 5078
Uncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспоримаUncle репутация неоспорима
По умолчанию

Нужен скрипт по типу функции в Excel "Найти/Заменить" для замены символов (отдельные знаки, буквы, цифры, слова, словосочетания) в наименованиях профилей и панелей.
Алгоритм примерно следующий:
1. Запустить скрипт.
2. В панели свойств поле для ввода "Найти". Вводим в это поле символы, которые нужно найти и заменить.
3. Нажимаем кнопку "Найти". Скрипт находит все сочетания указанных символов.
4. В поле "Заменить на" вводим символы, на которые нужно заменить найденные. Если поле остается пустым, значит найденные символы удаляются. Если ввести в поле замены ""пробел"", то есть, между кавычками нажать клавишу пробел, найденные символы заменяются соответственно на пробел...
5. Нажимаем кнопочку "Заменить".
Готов отблагодарить материально.

Решено. Обсуждение здесь
__________________
Уж лучше беспокойство в сомнении, чем успокоенность в заблуждении. .
(Мандзони Алессандро)
------------------------------------
Троллей не кормлю...

Последний раз редактировалось Uncle; 11.04.2021 в 13:52.
Uncle вне форума   Ответить с цитированием Вверх
Старый 12.04.2021, 17:24   #127
Mullerr
Новичок
 
Регистрация: 28.01.2021
Сообщений: 4
Сказал(а) спасибо: 18
Поблагодарили 0 раз(а) в 0 сообщениях
Вес репутации: 0
Mullerr пока не определено
По умолчанию

sergio1982, Спасибо. Можно добавить нанесение кромки на "открытые" торцы и чтобы в процессе нанесения на "видимые" торцы удалялась старая кромка Только с "видимых" торцов и клеилась новая?
Mullerr вне форума   Ответить с цитированием Вверх
Старый 14.04.2021, 23:33   #128
sergio1982
Местный
 
Регистрация: 01.09.2019
Сообщений: 138
Сказал(а) спасибо: 25
Поблагодарили 82 раз(а) в 29 сообщениях
Вес репутации: 49
sergio1982 скоро придёт к известности
По умолчанию

Mullerr
Попытался сделать "правильно", удалять кромки только с тех сторон которые будут облицованы, но не вышло.
Добавил DeleteMode, сначала удаляются все кромки, потом наносятся новые.

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

Код HTML:
var DeleteMode = 1  // Удалять все кромки перед нанесением
var ButtVisible = 1  // Насколько мм не закрыта кромка панели чтобы считать её видимой
Materials = [];
PanelByMaterial = [];
var PanelChanged = 0;

var Selected = Model.SelectionCount;

Model.forEachPanel(
    function(Obj) {
        if (Selected && !Obj.Selected)
            return
        var MtName = Obj.MaterialName;
        var Index = Materials.indexOf(MtName);
        if (Index < 0) {
            Index = Materials.push(MtName) - 1;
            var Panels = [];
            PanelByMaterial.push(Panels);
        }
        PanelByMaterial[Index].push(Obj);
    });

len = Materials.length;
system.log(len);
for (var i = 0; i < len; ++i) {
    var Gr = Action.Properties.NewCombo(Materials[i], 'На видимые\nНа все\nУдалить');
    Gr.NewButt('Кромка');
    BtnPanSel = Gr.NewSelector('Панелей', PanelByMaterial[i].length + ' шт');
    BtnPanSel.Tag = i;
    BtnPanSel.OnClick = function(Sel) {
        UnSelectAll();
        var Panels = PanelByMaterial[Sel.Tag];
        var len = Panels.length;
        for (var j = 0; j < len; ++j) {
            Panels[j].Selected = true;
        }
    };

    BtnMake = Gr.NewButton('Применить');
    BtnMake.Tag = i;
    BtnMake.OnClick = function(Sel) {
        UnSelectAll();
        var Panels = PanelByMaterial[Sel.Tag];
        var Gr = Action.Properties.Items[Sel.Tag];
        CurAction = Gr.ItemIndex;
        var Butt = Gr.Items[0];
        plen = Panels.length;
        system.log('make butts: ' + plen);
        for (var j = 0; j < plen; ++j) {
          if (MakeButts(Panels[j], CurAction, Butt))
            PanelChanged++;
        }
        Action.Hint = 'отредактировано панелей: ' + PanelChanged;
        Action.Commit();
    };
}

NewButtonInput("Закончить").OnChange = function() { Action.Finish() };
NewButtonInput("Снять выделение").OnChange = function() { UnSelectAll() };

function MakeButts(Panel, Mode, Butt) {
    var res = false;
    system.log('Panel: ' + Panel.Name);
    if (Mode == 2 || DeleteMode) {
        if (Panel.Butts.Count > 0) {
          StartEditing(Panel);
          Panel.Butts.Clear();
          res = true;
        }
    }
    if (Mode < 2) {
        StartEditing(Panel);
        for (var i = 0; i < Panel.Contour.Count; i++) {
            if  ((Mode == 1) || (Panel.IsButtVisible(i, ButtVisible))) {  //проверяет соприкасеется ли кромящиеся сторана(i) с другой пнелью на растояние 1мм
                system.log('Editing panel butt ' + i);
                Panel.AddButt(Butt, i)
                res = true;
            }
        }
    }
    Panel.Build();
    return res;
}
Action.Continue();
[свернуть]
sergio1982 вне форума   Ответить с цитированием Вверх
Пользователь сказал cпасибо:
Mullerr (15.04.2021)
Ответ

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

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заявки на фурнитуру, сборки, фрагменты Kudesnick Базис-мебельщик. Элементы фурнитуры и Комплектующих 1188 07.04.2021 16:37
"Мастер скриптов" — изменение скрипта блока в сцене KD ViPeS KitchenDraw (KD) 39 13.08.2017 16:01
Заявки на скрипты dr_john Система БАЗИС 37 01.03.2016 09:36
Генерирую заявки на шкафы за агентское вознаграждение в Москве. mavar Предлагаю работу 26 21.11.2014 15:06


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


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
© 2007-2021 PROMEBEL