|
|
@ -184,7 +184,7 @@ export class Contour
|
|
|
|
unionList.push(targetOutline);
|
|
|
|
unionList.push(targetOutline);
|
|
|
|
intersectionList.push(sourceOutline);
|
|
|
|
intersectionList.push(sourceOutline);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else if (interPts.length === 0)//分离
|
|
|
|
else if (interPts.length <= 1)//分离
|
|
|
|
{
|
|
|
|
{
|
|
|
|
unionList.push(sourceOutline, targetOutline);
|
|
|
|
unionList.push(sourceOutline, targetOutline);
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -263,11 +263,11 @@ export class Contour
|
|
|
|
let sourceContainerTarget = this.CuInOutline(targetOutline);
|
|
|
|
let sourceContainerTarget = this.CuInOutline(targetOutline);
|
|
|
|
|
|
|
|
|
|
|
|
//包含.相交.分离(三种状态)
|
|
|
|
//包含.相交.分离(三种状态)
|
|
|
|
if (sourceContainerTarget && interPts.length === 0)//源包含目标
|
|
|
|
if (sourceContainerTarget && interPts.length <= 1)//源包含目标
|
|
|
|
{
|
|
|
|
{
|
|
|
|
return [sourceOutline, targetOutline];
|
|
|
|
return [sourceOutline, targetOutline];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else if (interPts.length === 0)//分离
|
|
|
|
else if (interPts.length <= 1)//分离
|
|
|
|
{
|
|
|
|
{
|
|
|
|
return [sourceOutline];
|
|
|
|
return [sourceOutline];
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -303,7 +303,6 @@ export class Contour
|
|
|
|
subtractList.push(pl);
|
|
|
|
subtractList.push(pl);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return subtractList;
|
|
|
|
return subtractList;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|