Обмениваемся , задаем вопросы, отвечаем... Все, что касается скриптов в БМ 11 в этой теме.
Новшества Базис Мебельщик версии 11:
..... 6. Работоспособность скриптов, созданных в более ранних версиях, не гарантируется в версии БАЗИС 11.
.....
52. Разработана панель инструментов для скриптов, на которую можно вывести, например, часто используемые скрипты, со своими иконками, хинтами и т.д.
53. Добавлена возможность автозапуска выбранного скрипта на любое из двух событий – Загрузка модели, и/или Сохранение модели.
.....
Новшества Базис Мебельщик версии 2021:
16. Отладчик скриптов.
VISUAL CODE
Код:
Примеры скриптов из видео
Вес панелей.js
Выделить панели без облицовки.js
Панель по 3 точкам.js
Прифуговка кромки.js
Любые вопросы по любому системному и мебельному софту, любые конвертации, настройки и т.д.>сюда< (кроме озвученных в мануалах, инструкциях и темах форума) ...
Последний раз редактировалось AlexBolton; 09.01.2024 в 11:56..
Подскажите, пожалуйста. Как перевести координаты панелей к единому исчислению. Есть стенка ящика, есть стенка ДВП. Нужно проверять расстояние от panel.Name=="Задняя панель ящика" до panel.Name=="Задняя стенка" Координаты стенки по Z -3 , а панели ящика -380.Считает не от нуля, а хз от фасада ящика. Может все через зад, потому что делаю шкаф в базис шкафе, а перекидываю в мебельщик... back=ToGlobal(x,y,z); или back=ToGlobal(panel); ничего не возвращает, похоже ошибка. Наверно и отладчик не дают, потому что нагорбулили так, что не распутать даже создателю... (
Подскажите, пожалуйста. Как перевести координаты панелей к единому исчислению.
В ящике действительно все детали имеют координаты относительно фасада.
Если такой вариант Вас устроит, то выделяете всю модель и разрушаете все блоки и/или сборки. По крайней мере все детали изменят свои координаты в нужном направлении (проверял только на ящиках в 8-ке - работает).
Спасибо, но, так не устроит. Вроде получилось определить так panel.GabMax.z; габарит стенки
получается 0, а panel.GabMin.z; габарит панели ящика 200 померил так и есть, между ними 200мм. ХЗ будет ли работать во всех других случаях, но на данном этапе задача решена.
Привет, мне нравится скрипт Aventos HF , но он не работает правильно на BM 11. Если у вас есть для версии 11, вы можете дать мне. https://yadi.sk/d/d0YMJODVRjoFY
заранее спасибо
Последний раз редактировалось todor_tsanov; 19.07.2020 в 06:11.
Подскажите, пожалуйста. Как перевести координаты панелей к единому исчислению. Есть стенка ящика, есть стенка ДВП. Нужно проверять расстояние от panel.Name=="Задняя панель ящика" до panel.Name=="Задняя стенка" Координаты стенки по Z -3 , а панели ящика -380.Считает не от нуля, а хз от фасада ящика. Может все через зад, потому что делаю шкаф в базис шкафе, а перекидываю в мебельщик... back=ToGlobal(x,y,z); или back=ToGlobal(panel); ничего не возвращает, похоже ошибка. Наверно и отладчик не дают, потому что нагорбулили так, что не распутать даже создателю... (
Самый простой вариант - использовать свойства GabMin\GabMax объекта, которые возвращают координаты начала/конца габаритного параллелепипеда, описывающего объект, в ГСК (Во вложении рисунок с пояснением: GabMin всегда имеет минимальные значения координат, GabMax - наоборот). Например:
PHP код:
var obj = Model.Selected;
var min = obj.GabMin;
var max = obj.GabMax;
Методы ToGlobal вызываются у объекта и переводят точку и з ЛСК объекта в ГСК, например:
PHP код:
var obj = Model.Selected;
var gPos = obj.ToGlobal({
x: 0,
y: 0,
z: 0
})
Уважаемые скриптописатели, подскажите, есть ли возможность кратчайшим способом определить наличие зеркала на фасаде? Сил хватило написать код для простановки пользовательских свойств на зеркала (стекла), типа с обработкой или без, но нужно еще на фасаде в свойствах указать КЛЕИТЬ ЗЕРКАЛО. И тут я забурился в массивы с координатами и потерялся. Ибо фасадов может быть сколько угодно, зеркал и стекол на них тоже и как точно определить что эти два зеркала именно на этом фасаде хз. Загнал все в один массив, где идут сначала
фасады с их координатами [0]=TFurnPanel, [1]=х координата [2]=z координата, далее зеркала [0]=TFurnPanel, [1]=х координата [2]=z координата и стекла. Хотел брать каждый третий элемент из массива сравнивать, но совсем запутался нафиг. Может можно как-то через Distance? или мой способ самый короткий? Координаты взял от каждого объекта всего две GabMin.x и GabMin.z вроде не много, но все равно запутался... По Y не важно где стекло , главное что именно на этой двери, чтобы точно понимать что клеить. Может кто-то с подобным сталкивался, буду очень признателен.
Вечер добрый. Координаты самореза находить научился, а какой командой двигается фурнитура. Как ее сдвинуть на пару см по одной координате в этой же панели? Если не сложно подскажите. Ну или скажите , что шибко заумно, ответа не жди. А то как в топике выше спросил и тишина... Толи слишком сложную вещь спросил, толи никто не пользуется свойствами, поэтому и отвечать некому )