double[] p2 = new double[]{b.P1.getX(), b.P1.getY()};
double[] p3 = b.cp1();
Point2D p = lineIntersection(p0[0],p0[1],p1[0],p1[1],p2[0],p2[1],p3[0],p3[1], true);
if( p == null || insideP == null )
a.add(new LineSegment(a.last.P2, b.P1));
else if((p.distance(insideP)/width) < limit)
{
a.add(new LineSegment(a.last.P2, p));
a.add(new LineSegment(p, b.P1));
}
else