cx = k * rx * y / ry + (x1 + x2) / 2,
cy = k * -ry * x / rx + (y1 + y2) / 2,
f1 = math.asin(((y1 - cy) / ry).toFixed(7)),
cx = k * rx * y / ry + (x1 + x2) / 2,
cy = k * -ry * x / rx + (y1 + y2) / 2,
f1 = math.asin(((y1 - cy) / ry).toFixed(7)),
if (t1 > 0 && t1 < 1) {
dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t1);
x[push](dot.x);
if (t1 > 0 && t1 < 1) {
dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t1);
x[push](dot.x);
if (t1 > 0 && t1 < 1) {
dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t1);
x[push](dot.x);
if (t1 > 0 && t1 < 1) {
dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t1);
x[push](dot.x);
return null;
}
var vector = [0, 0, math.cos(angle * math.PI / 180), math.sin(angle * math.PI / 180)],
return null;
}
var vector = [0, 0, math.cos(angle * math.PI / 180), math.sin(angle * math.PI / 180)],
var bb = this.getBBox(),
rcx = bb.x + bb.width / 2,
rcy = bb.y + bb.height / 2,
var bb = this.getBBox(),
rcx = bb.x + bb.width / 2,
rcy = bb.y + bb.height / 2,
- ncx = cx + (rcx - cx) * kx,
- ncy = cy + (rcy - cy) * ky;
+ ncx = cx - abs(rcx - cx) * dkx,
+ ncy = cy - abs(rcy - cy) * dky;
- p[path[i][length] - 2] *= kx;
- p[path[i][length] - 1] *= ky;
- p[1] *= dirx * kx;
- p[2] *= diry * ky;
- p[5] = +(dirx + diry ? !!+p[5] : !+p[5]);
+ p[path[i][length] - 2] = abs(p[path[i][length] - 2]) * dkx;
+ p[path[i][length] - 1] = abs(p[path[i][length] - 1]) * dky;
+ p[1] *= kx;
+ p[2] *= ky;
+ p[5] = +(dirx + diry ? !+p[4] : !!+p[4]);