Цитата:
Сообщение от bbb i ko
Да, совершенно верно.
|
Изобрёлся вот такой метод:
PHP код:
Panel = Model.Selected;
Result = 0;
// Делаем копию контура, чтобы изменения не затронули исходную панель
var Cnt = Panel.Contour.MakeCopy();
// Расширяем контур на 0.1 мм в каждую сторону, чтобы прошли проверку траектории
// пазов, лежащих на границе
Cnt.Fit(Cnt.Min.x - 0.1, Cnt.Min.y - 0.1, Cnt.Max.x + 0.1, Cnt.Max.y + 0.1);
for (var i = 0; i < Panel.Cuts.Count; i++){
TCut = Panel.Cuts[i].Trajectory;
if(TCut.IsInContour(Cnt)){
Result += 1
}
}
alert(Result);