|
|
|
@ -813,13 +813,13 @@ export function PolylineSpliteRect(outline: Polyline): Polyline[]
|
|
|
|
|
|
|
|
|
|
for (let c of cus)
|
|
|
|
|
{
|
|
|
|
|
if (c instanceof Arc) return [outline];
|
|
|
|
|
let derv = c.GetFistDeriv(0).normalize();
|
|
|
|
|
if (isParallelTo(derv, YAxis, PolylineSpliteRectFuzz))
|
|
|
|
|
yCus.push(c);
|
|
|
|
|
else
|
|
|
|
|
if (!isParallelTo(derv, XAxis, PolylineSpliteRectFuzz) || c instanceof Arc)
|
|
|
|
|
if (!isParallelTo(derv, XAxis, PolylineSpliteRectFuzz))
|
|
|
|
|
{
|
|
|
|
|
console.log(derv.clone().cross(XAxis).lengthSq());
|
|
|
|
|
return [outline];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -852,7 +852,7 @@ export function PolylineSpliteRect(outline: Polyline): Polyline[]
|
|
|
|
|
let ys: number[] = [];
|
|
|
|
|
for (let par of pars)
|
|
|
|
|
{
|
|
|
|
|
let c = outline.GetCurveAtIndex(par);
|
|
|
|
|
let c = outline.GetCurveAtParam(par);
|
|
|
|
|
let derv = c.GetFistDeriv(0).normalize();
|
|
|
|
|
if (isParallelTo(derv, XAxis, PolylineSpliteRectFuzz))
|
|
|
|
|
{
|
|
|
|
|