修正对空线段补圆弧的问题,修正错误的精简代码

pull/839186/MERGE
ChenX 6 years ago
parent 16eb03f519
commit 978270000e

@ -318,7 +318,10 @@ export class PolyOffsetUtil
//#region 1.中间丢失线段的情况下且循环到尾部,补圆弧.
let isFillArc = FixIndex(startIndex + 1, this.m_PtCount) !== endIndex;
let isFillArc = !equal(
this.m_Polyline.GetPoint2dAt(FixIndex(startIndex + 1, this.m_PtCount)),
this.m_Polyline.GetPoint2dAt(endIndex)
);
if (isFillArc)
{
@ -507,7 +510,8 @@ export class PolyOffsetUtil
//找到和frontline存在离源线段距离大于偏移距离的交点的圆,跳过这个圆前面的圆计算
let iPts: Vector3[];
for (let index = 1; index < cirs.length; index++)
let index = 1;
for (; index < cirs.length; index++)
{
let pts = frontLine.IntersectWith(cirs[index], 0).filter(p =>
{
@ -516,13 +520,14 @@ export class PolyOffsetUtil
});
if (pts.length === 0)
{
cirs.splice(0, index - 1);
break;
}
else
iPts = pts;
}
if (!iPts)
if (iPts)
cirs.splice(0, index - 1);
else
iPts = [frontLine.EndPoint];
let iPt = this.selectFitInterPt(iPts, frontLine.EndPoint);

Loading…
Cancel
Save