异形优化:避免圆形孔洞或者圆形轮廓被过滤或者优化成矩形

pull/1275/MERGE
ChenX 4 years ago
parent 0238a629cd
commit 6dc7a8625d

@ -101,9 +101,12 @@ export function ConverBoard2Part(board: Board, knifRadius = 3.5): Part
arrayRemoveDuplicateBySort(pts, (p1, p2) => equalv2(p1, p2, 1e-2));
path = new Path(pts);
let area = path.BoundingBox.area - path.Area;
if (area < 15000 && pts.length > 6)
path = NestCache.CreatePath(board.Width, board.Height, knifRadius);
if (!(board.ContourCurve instanceof Circle))//如果是圆则不用优化成矩形
{
let area = path.BoundingBox.area - path.Area;
if (area < 15000 && pts.length > 6)
path = NestCache.CreatePath(board.Width, board.Height, knifRadius);
}
}
part.Init2(path, DefaultBin, Rotations[board.BoardProcessOption.lines]);
for (let m of board.BoardModeling)
@ -116,7 +119,7 @@ export function ConverBoard2Part(board: Board, knifRadius = 3.5): Part
part.UserData.push(m.shape.Outline.Curve.Clone());
let path = new Path(pts);
if (path.Area > 15000)
if ((m.shape.Outline.Curve instanceof Circle) || path.Area > 15000)//如果是圆,则不优化过滤小孔洞
part.AppendHole(path);
}
}

Loading…
Cancel
Save