优化:偏移算法修改,提前移除小线段,避免小线段陷入曲线裁剪

pull/1308/MERGE
ChenX 4 years ago
parent fa83d5323e
commit 72b10b7384

@ -542,7 +542,8 @@ export class OffsetPolyline
for (let d of this._SubOffsetedCurves)
{
let c = d.curve;
this._CurveTreeNodes.push(new CurveTreeNode(c));
if (c.Length > 1e-5)
this._CurveTreeNodes.push(new CurveTreeNode(c));
if (d.paddingCurve)
this._CurveTreeNodes.push(...d.paddingCurve.map(c => new CurveTreeNode(c)));
}
@ -567,8 +568,7 @@ export class OffsetPolyline
let ns = n.Nodes;
for (let sn of ns)
{
let p = sn.curve.GetPointAtParam(0.5);
if (sn.curve.Length > 1e-5 && this.CheckPointDir(p))
if (this.CheckPointDir(sn.curve.GetPointAtParam(0.5)))
this._CurveTrimedTreeNodes.push(sn);
}
}

Loading…
Cancel
Save