Обмениваемся , задаем вопросы, отвечаем... Все, что касается скриптов в БМ 11 в этой теме.
Новшества Базис Мебельщик версии 11:
..... 6. Работоспособность скриптов, созданных в более ранних версиях, не гарантируется в версии БАЗИС 11.
.....
52. Разработана панель инструментов для скриптов, на которую можно вывести, например, часто используемые скрипты, со своими иконками, хинтами и т.д.
53. Добавлена возможность автозапуска выбранного скрипта на любое из двух событий – Загрузка модели, и/или Сохранение модели.
.....
Новшества Базис Мебельщик версии 2021:
16. Отладчик скриптов.
VISUAL CODE
Код:
Примеры скриптов из видео
Вес панелей.js
Выделить панели без облицовки.js
Панель по 3 точкам.js
Прифуговка кромки.js
Любые вопросы по любому системному и мебельному софту, любые конвертации, настройки и т.д.>сюда< (кроме озвученных в мануалах, инструкциях и темах форума) ...
Последний раз редактировалось AlexBolton; 09.01.2024 в 11:56..
еще пожалуйста подскажите.
каким образом сравнить два объекта/модели?
желательно в "Салоне", ну хотя бы в "мебельщике".
стоит задача по ценообразованию, для этого нужно понять изменилось ли стандартное изделие или нет, а главное не пропустить момент когда "нестандартное" вновь вернулось к "стандартному".
и снова здравствуйте!)
снова вопрос к знатокам)
как узнать координаты отверстия на детали, а также параметры этого отверстия?
У объекта отверстия есть свойства: Position - положение в ЛСК фурнитуры Direction - направление в ЛСК фурнитуры Radius - радиус отверстия. Depth - Глубина отверстия.
В БМ10 версии 10.4 после выхода из программы появлялось окно с ошибкой и оставался в Диспетчере задач висеть процесс Bazis10.exe, нагружая при этом процессор... После обновления до 10.6.2 окно с ошибками не перестало появляться, но процес Bazis10.exe закрывается вместе с выходом из программы... Перепробовал разные варианты поиска причины. Перебирал "по косточкам" Settings.xml , ActionData.xml, так как при их удалении из папки Settings на некоторое время ошибка переставала появляться, но после нескольких запусков разных скриптов снова стала вылетать... Рекомендации БЦ все применил, перепроверял - все соответствует. На Базис-Онлайн такая же ситуация. Только Демо версии не вызывают ошибки.
Цитата:
Сообщение от andronf
- выполнил- ошибка на месте.
Есть демка 10,3, запустил там var a = 23; ошибок не было. Но там и пути к скриптам в папку по умолчанию настроены.
Кажется нашел причину и решение...
Удалил абсолютно все из папки Settings, что в корне установленного Базиса.
Через штатную команду Настройка-Восстановить настройки восстановил из ранее сохраненного файла. После этого в папке Settigs образовались все файлы соответствующих настроек... После этого решил протестировать. Все скрипты, которыми пользуюсь в программе постоянно, привязаны к горячим клавишам. Обнаруживаю, что некоторые скрипты запускаются с назначенных ранее горячих клавишь, а некоторые нет. Решил настроить по новой. И ту обнаружилась интересная штука. Выбираю один из скриптов, у которого раньше была своя клавиша, назначаю ему ту самую что и была раньше и тут мне выскакивает предупреждение, что эта клавиша (сочетание клавиш) уже назначено этому скрипту и при этом выводится путь, где лежит этот скрипт и оказывается, что путь идет не к папке со скриптами для Базис 10, а к папке, которая была раньше для скриптов для Базис 9. То есть, когда переходил с девятки на десятку, я эту папку просто скопировал в папку для Базис 10. Аналогично и папка Settings у меня перекочевала из корня Базис 9 в корень Базис 10... Скорее всего, где то в файлах настроек путь к запуску того или иного скрипта остался прописанным и после завершения работы такого скрипта в Базис 10 происходил какой то конфликт, связанный с этим и программа завершала работу с ошибкой...
В общем, протестировал на основных рабочих скриптах после вышеописанных манипуляций - ошибка после завершения работы Базиса пока не появлялась...
__________________ Уж лучше беспокойство в сомнении, чем успокоенность в заблуждении. . (Мандзони Алессандро)
------------------------------------
Троллей не кормлю...
У объекта отверстия есть свойства: Position - положение в ЛСК фурнитуры Direction - направление в ЛСК фурнитуры Radius - радиус отверстия. Depth - Глубина отверстия.
Добрый день!
это я так понимаю значения относительно ЛСК фурнитуры... а как узнать что у панели в принципе есть отверстия и его координаты именно на панели?
Добрый день!
это я так понимаю значения относительно ЛСК фурнитуры... а как узнать что у панели в принципе есть отверстия и его координаты именно на панели?
Узнать какие именно отверстия на панели можно только вручную - встроенной базисной функции нет. Есть лишь функция FindConnectedFasteners у панели, которая возвращает список фурнитуры, которая сверлится в панель. Можно почитать в этом посте (ответ на первую цитату с ссылкой на ещё один пост) как определять отверстия в конкретной панели. Для определения координат отверстия на панели нужно всего лишь перевести координаты отверстия из ЛСК фурнитуры в ЛСК панели:
Абстрактный пример перевода координат
PHP код:
// Точка из ЛСК fast в ЛСК panel
function FromFastTOPanel(fast, panel, v){
return panel.ToObject(fast.ToGlobal(v))
}
// Вектор из ЛСК fast в ЛСК panel
function NFromFastTOPanel(fast, panel, v){
return panel.NToObject(fast.NToGlobal(v))
}
var p1 = Model.Selected.AsPanel;
var fasts = p1.FindConnectedFasteners();
alert(fasts);
// фурнитура
var f = fasts[0];
// Отвертсие
var fHole = f.Holes[0];
// Положение
var pos = FromFastTOPanel(f, p1, fHole.Position);
// Направление
var dir = NFromFastTOPanel(f, p1, fHole.Direction);