Цитата:
Сообщение от Uncle
А можно сделать так, что бы после подсветки, запустив снова скрипт, выключить подсветку крепежа выделенной панели? Что бы панель осталась выделенной, а крепёж погас ).
|
легко))
но с этим аккуратно нужно. допустим каким то образом один из крепежей оказался подсвечен или выделен, а другие нет. при работе скрипта вся фурнитура выделенной панели меняет свое состояние и получится что все подсветятся а ранее подсвеченный погаснет и т.д...
тут предложено два варианта, подсвечивать или выделять фурнитуру. используйте какой нужно, но желательно не использовать оба одновременно.. если фурнитуру и выделить и подсветить, она выглядит подсвеченной на рабочем экране, и отображается выделенной в дереве модели. может и ничего страшного, но вдруг какие нибудь глюки в дальнейшем..
if (Model.SelectionCount < 1) { //есть ли выделенные панели
alert('Нет выделенных панелей!');
Action.Finish();
}
for (var i = 0; i < Model.SelectionCount; i++) {
if (Model.Selections[i] instanceof TFurnPanel){
var mass = Model.Selections[i].FindConnectedFasteners();
for (var r = 0; r < mass.length; r++) {
//эта часть подсвечивает или отключает подсветку фурнитуры
if (mass[r].Highlighted){
mass[r].Highlighted = false;
}
else {
mass[r].Highlighted = true;
}
//конец части посвечивания
//эта часть выделяет или снимает выделение фурнитуры
if (mass[r].Selected){
mass[r].Selected = false;
}
else {
mass[r].Selected = true;
}
//конец части выделения
}
}
}