leafer-draw 2.1.6 → 2.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/web.cjs +2 -1
- package/dist/web.esm.js +2 -1
- package/dist/web.esm.min.js +1 -1
- package/dist/web.esm.min.js.map +1 -1
- package/dist/web.js +98 -71
- package/dist/web.min.cjs +1 -1
- package/dist/web.min.cjs.map +1 -1
- package/dist/web.min.js +1 -1
- package/dist/web.min.js.map +1 -1
- package/dist/web.module.js +98 -71
- package/dist/web.module.min.js +1 -1
- package/dist/web.module.min.js.map +1 -1
- package/package.json +3 -3
package/dist/web.module.js
CHANGED
|
@@ -292,7 +292,7 @@ const FourNumberHelper = {
|
|
|
292
292
|
return to;
|
|
293
293
|
},
|
|
294
294
|
setTemp(top, right, bottom, left) {
|
|
295
|
-
return set$
|
|
295
|
+
return set$3(tempFour, top, right, bottom, left);
|
|
296
296
|
},
|
|
297
297
|
toTempAB(a, b, change) {
|
|
298
298
|
tempTo = change ? isNumber(a) ? b : a : [];
|
|
@@ -332,22 +332,22 @@ const FourNumberHelper = {
|
|
|
332
332
|
max(t, other, change) {
|
|
333
333
|
if (isNumber(t) && isNumber(other)) return max$4(t, other);
|
|
334
334
|
toTempAB(t, other, change);
|
|
335
|
-
return set$
|
|
335
|
+
return set$3(tempTo, max$4(tempA[0], tempB[0]), max$4(tempA[1], tempB[1]), max$4(tempA[2], tempB[2]), max$4(tempA[3], tempB[3]));
|
|
336
336
|
},
|
|
337
337
|
add(t, other, change) {
|
|
338
338
|
if (isNumber(t) && isNumber(other)) return t + other;
|
|
339
339
|
toTempAB(t, other, change);
|
|
340
|
-
return set$
|
|
340
|
+
return set$3(tempTo, tempA[0] + tempB[0], tempA[1] + tempB[1], tempA[2] + tempB[2], tempA[3] + tempB[3]);
|
|
341
341
|
},
|
|
342
342
|
swapAndScale(t, scaleX, scaleY, change) {
|
|
343
343
|
if (isNumber(t)) return scaleX === scaleY ? t * scaleX : [ t * scaleY, t * scaleX ];
|
|
344
344
|
const to = change ? t : [];
|
|
345
345
|
const [top, right, bottom, left] = t.length === 4 ? t : get$5(t);
|
|
346
|
-
return set$
|
|
346
|
+
return set$3(to, bottom * scaleY, left * scaleX, top * scaleY, right * scaleX);
|
|
347
347
|
}
|
|
348
348
|
};
|
|
349
349
|
|
|
350
|
-
const {set: set$
|
|
350
|
+
const {set: set$3, get: get$5, setTemp: setTemp, toTempAB: toTempAB} = FourNumberHelper;
|
|
351
351
|
|
|
352
352
|
const {round: round$3, pow: pow$1, max: max$3, floor: floor$2, PI: PI$3} = Math;
|
|
353
353
|
|
|
@@ -472,7 +472,7 @@ const {sin: sin$5, cos: cos$5, acos: acos, sqrt: sqrt$3} = Math;
|
|
|
472
472
|
|
|
473
473
|
const {float: float$2} = MathHelper;
|
|
474
474
|
|
|
475
|
-
const tempPoint$
|
|
475
|
+
const tempPoint$4 = {};
|
|
476
476
|
|
|
477
477
|
function getWorld() {
|
|
478
478
|
return Object.assign(Object.assign(Object.assign({}, getMatrixData()), getBoundsData()), {
|
|
@@ -531,8 +531,8 @@ const MatrixHelper = {
|
|
|
531
531
|
to.f = t.f * pixelRatio;
|
|
532
532
|
},
|
|
533
533
|
scaleOfOuter(t, origin, scaleX, scaleY) {
|
|
534
|
-
M$6.toInnerPoint(t, origin, tempPoint$
|
|
535
|
-
M$6.scaleOfInner(t, tempPoint$
|
|
534
|
+
M$6.toInnerPoint(t, origin, tempPoint$4);
|
|
535
|
+
M$6.scaleOfInner(t, tempPoint$4, scaleX, scaleY);
|
|
536
536
|
},
|
|
537
537
|
scaleOfInner(t, origin, scaleX, scaleY = scaleX) {
|
|
538
538
|
M$6.translateInner(t, origin.x, origin.y);
|
|
@@ -550,8 +550,8 @@ const MatrixHelper = {
|
|
|
550
550
|
t.d = c * sinR + d * cosR;
|
|
551
551
|
},
|
|
552
552
|
rotateOfOuter(t, origin, rotation) {
|
|
553
|
-
M$6.toInnerPoint(t, origin, tempPoint$
|
|
554
|
-
M$6.rotateOfInner(t, tempPoint$
|
|
553
|
+
M$6.toInnerPoint(t, origin, tempPoint$4);
|
|
554
|
+
M$6.rotateOfInner(t, tempPoint$4, rotation);
|
|
555
555
|
},
|
|
556
556
|
rotateOfInner(t, origin, rotation) {
|
|
557
557
|
M$6.translateInner(t, origin.x, origin.y);
|
|
@@ -572,8 +572,8 @@ const MatrixHelper = {
|
|
|
572
572
|
}
|
|
573
573
|
},
|
|
574
574
|
skewOfOuter(t, origin, skewX, skewY) {
|
|
575
|
-
M$6.toInnerPoint(t, origin, tempPoint$
|
|
576
|
-
M$6.skewOfInner(t, tempPoint$
|
|
575
|
+
M$6.toInnerPoint(t, origin, tempPoint$4);
|
|
576
|
+
M$6.skewOfInner(t, tempPoint$4, skewX, skewY);
|
|
577
577
|
},
|
|
578
578
|
skewOfInner(t, origin, skewX, skewY = 0) {
|
|
579
579
|
M$6.translateInner(t, origin.x, origin.y);
|
|
@@ -774,7 +774,7 @@ const {float: float$1} = MathHelper;
|
|
|
774
774
|
|
|
775
775
|
const {toInnerPoint: toInnerPoint$2, toOuterPoint: toOuterPoint$3} = MatrixHelper;
|
|
776
776
|
|
|
777
|
-
const {sin: sin$4, cos: cos$4, abs: abs$
|
|
777
|
+
const {sin: sin$4, cos: cos$4, abs: abs$5, sqrt: sqrt$2, atan2: atan2$2, min: min$1, round: round$2} = Math;
|
|
778
778
|
|
|
779
779
|
const PointHelper = {
|
|
780
780
|
defaultPoint: getPointData(),
|
|
@@ -811,15 +811,15 @@ const PointHelper = {
|
|
|
811
811
|
t.x += (t.x - origin.x) * (scaleX - 1);
|
|
812
812
|
t.y += (t.y - origin.y) * (scaleY - 1);
|
|
813
813
|
},
|
|
814
|
-
rotate(t, rotation, origin) {
|
|
814
|
+
rotate(t, rotation, origin, radiusX = 1, radiusY = 1) {
|
|
815
815
|
if (!origin) origin = P$5.defaultPoint;
|
|
816
816
|
rotation *= OneRadian;
|
|
817
817
|
const cosR = cos$4(rotation);
|
|
818
818
|
const sinR = sin$4(rotation);
|
|
819
|
-
const rx = t.x - origin.x;
|
|
820
|
-
const ry = t.y - origin.y;
|
|
821
|
-
t.x = origin.x + rx * cosR - ry * sinR;
|
|
822
|
-
t.y = origin.y + rx * sinR + ry * cosR;
|
|
819
|
+
const rx = (t.x - origin.x) / radiusX;
|
|
820
|
+
const ry = (t.y - origin.y) / radiusY;
|
|
821
|
+
t.x = origin.x + (rx * cosR - ry * sinR) * radiusX;
|
|
822
|
+
t.y = origin.y + (rx * sinR + ry * cosR) * radiusY;
|
|
823
823
|
},
|
|
824
824
|
tempToInnerOf(t, matrix) {
|
|
825
825
|
const {tempPoint: temp} = P$5;
|
|
@@ -872,15 +872,15 @@ const PointHelper = {
|
|
|
872
872
|
return getDistanceFrom(t.x, t.y, point.x, point.y);
|
|
873
873
|
},
|
|
874
874
|
getDistanceFrom(x1, y1, x2, y2) {
|
|
875
|
-
const x = abs$
|
|
876
|
-
const y = abs$
|
|
875
|
+
const x = abs$5(x2 - x1);
|
|
876
|
+
const y = abs$5(y2 - y1);
|
|
877
877
|
return sqrt$2(x * x + y * y);
|
|
878
878
|
},
|
|
879
879
|
getMinDistanceFrom(x1, y1, x2, y2, x3, y3) {
|
|
880
880
|
return min$1(getDistanceFrom(x1, y1, x2, y2), getDistanceFrom(x2, y2, x3, y3));
|
|
881
881
|
},
|
|
882
|
-
getAngle(t, to) {
|
|
883
|
-
return getAtan2(t, to) / OneRadian;
|
|
882
|
+
getAngle(t, to, radiusX, radiusY) {
|
|
883
|
+
return getAtan2(t, to, radiusX, radiusY) / OneRadian;
|
|
884
884
|
},
|
|
885
885
|
getRotation(t, origin, to, toOrigin) {
|
|
886
886
|
if (!toOrigin) toOrigin = origin;
|
|
@@ -894,8 +894,8 @@ const PointHelper = {
|
|
|
894
894
|
const d = toY - toOriginY;
|
|
895
895
|
return Math.atan2(a * d - b * c, a * c + b * d);
|
|
896
896
|
},
|
|
897
|
-
getAtan2(t, to) {
|
|
898
|
-
return atan2$2(to.y - t.y, to.x - t.x);
|
|
897
|
+
getAtan2(t, to, radiusX = 1, radiusY = 1) {
|
|
898
|
+
return atan2$2((to.y - t.y) / radiusY, (to.x - t.x) / radiusX);
|
|
899
899
|
},
|
|
900
900
|
getDistancePoint(t, to, distance, changeTo, fromTo) {
|
|
901
901
|
const r = getAtan2(t, to);
|
|
@@ -952,12 +952,12 @@ class Point {
|
|
|
952
952
|
PointHelper.scaleOf(this, origin, scaleX, scaleY);
|
|
953
953
|
return this;
|
|
954
954
|
}
|
|
955
|
-
rotate(rotation, origin) {
|
|
956
|
-
PointHelper.rotate(this, rotation, origin);
|
|
955
|
+
rotate(rotation, origin, radiusX, radiusY) {
|
|
956
|
+
PointHelper.rotate(this, rotation, origin, radiusX, radiusY);
|
|
957
957
|
return this;
|
|
958
958
|
}
|
|
959
|
-
rotateOf(origin, rotation) {
|
|
960
|
-
PointHelper.rotate(this, rotation, origin);
|
|
959
|
+
rotateOf(origin, rotation, radiusX, radiusY) {
|
|
960
|
+
PointHelper.rotate(this, rotation, origin, radiusX, radiusY);
|
|
961
961
|
return this;
|
|
962
962
|
}
|
|
963
963
|
getRotation(origin, to, toOrigin) {
|
|
@@ -980,11 +980,11 @@ class Point {
|
|
|
980
980
|
getDistancePoint(to, distance, changeTo, fromTo) {
|
|
981
981
|
return new Point(PointHelper.getDistancePoint(this, to, distance, changeTo, fromTo));
|
|
982
982
|
}
|
|
983
|
-
getAngle(to) {
|
|
984
|
-
return PointHelper.getAngle(this, to);
|
|
983
|
+
getAngle(to, radiusX, radiusY) {
|
|
984
|
+
return PointHelper.getAngle(this, to, radiusX, radiusY);
|
|
985
985
|
}
|
|
986
|
-
getAtan2(to) {
|
|
987
|
-
return PointHelper.getAtan2(this, to);
|
|
986
|
+
getAtan2(to, radiusX, radiusY) {
|
|
987
|
+
return PointHelper.getAtan2(this, to, radiusX, radiusY);
|
|
988
988
|
}
|
|
989
989
|
isSame(point, quick) {
|
|
990
990
|
return PointHelper.isSame(this, point, quick);
|
|
@@ -995,7 +995,7 @@ class Point {
|
|
|
995
995
|
}
|
|
996
996
|
}
|
|
997
997
|
|
|
998
|
-
const tempPoint$
|
|
998
|
+
const tempPoint$3 = new Point;
|
|
999
999
|
|
|
1000
1000
|
class Matrix {
|
|
1001
1001
|
constructor(a, b, c, d, e, f) {
|
|
@@ -2702,15 +2702,15 @@ const RectHelper = {
|
|
|
2702
2702
|
}
|
|
2703
2703
|
};
|
|
2704
2704
|
|
|
2705
|
-
const {sin: sin$3, cos: cos$3, hypot: hypot, atan2: atan2$1, ceil: ceil, abs: abs$
|
|
2705
|
+
const {sin: sin$3, cos: cos$3, hypot: hypot, atan2: atan2$1, ceil: ceil, abs: abs$4, PI: PI$2, sqrt: sqrt$1, pow: pow} = Math;
|
|
2706
2706
|
|
|
2707
2707
|
const {setPoint: setPoint$1, addPoint: addPoint$1} = TwoPointBoundsHelper;
|
|
2708
2708
|
|
|
2709
|
-
const {set: set$
|
|
2709
|
+
const {set: set$2, toNumberPoints: toNumberPoints} = PointHelper;
|
|
2710
2710
|
|
|
2711
2711
|
const {M: M$5, L: L$6, C: C$4, Q: Q$4, Z: Z$5} = PathCommandMap;
|
|
2712
2712
|
|
|
2713
|
-
const tempPoint$
|
|
2713
|
+
const tempPoint$2 = {};
|
|
2714
2714
|
|
|
2715
2715
|
const BezierHelper = {
|
|
2716
2716
|
points(data, originPoints, curve, close) {
|
|
@@ -2779,14 +2779,14 @@ const BezierHelper = {
|
|
|
2779
2779
|
const lenCB = hypot(CBx, CBy);
|
|
2780
2780
|
let totalRadian = endRadian - startRadian;
|
|
2781
2781
|
if (totalRadian < 0) totalRadian += PI2;
|
|
2782
|
-
if (lenBA < 1e-12 || lenCB < 1e-12 || totalRadian < 1e-12 || abs$
|
|
2782
|
+
if (lenBA < 1e-12 || lenCB < 1e-12 || totalRadian < 1e-12 || abs$4(totalRadian - PI$2) < 1e-12) {
|
|
2783
2783
|
if (data) data.push(L$6, x1, y1);
|
|
2784
2784
|
if (setPointBounds) {
|
|
2785
2785
|
setPoint$1(setPointBounds, fromX, fromY);
|
|
2786
2786
|
addPoint$1(setPointBounds, x1, y1);
|
|
2787
2787
|
}
|
|
2788
|
-
if (setStartPoint) set$
|
|
2789
|
-
if (setEndPoint) set$
|
|
2788
|
+
if (setStartPoint) set$2(setStartPoint, fromX, fromY);
|
|
2789
|
+
if (setEndPoint) set$2(setEndPoint, x1, y1);
|
|
2790
2790
|
return;
|
|
2791
2791
|
}
|
|
2792
2792
|
const anticlockwise = BAx * CBy - CBx * BAy < 0;
|
|
@@ -2812,7 +2812,7 @@ const BezierHelper = {
|
|
|
2812
2812
|
let totalRadian = endRadian - startRadian;
|
|
2813
2813
|
if (totalRadian < 0) totalRadian += PI2; else if (totalRadian > PI2) totalRadian -= PI2;
|
|
2814
2814
|
if (anticlockwise) totalRadian -= PI2;
|
|
2815
|
-
const parts = ceil(abs$
|
|
2815
|
+
const parts = ceil(abs$4(totalRadian / PI_2));
|
|
2816
2816
|
const partRadian = totalRadian / parts;
|
|
2817
2817
|
const partRadian4Sin = sin$3(partRadian / 4);
|
|
2818
2818
|
const control = 8 / 3 * partRadian4Sin * partRadian4Sin / sin$3(partRadian / 2);
|
|
@@ -2826,7 +2826,7 @@ const BezierHelper = {
|
|
|
2826
2826
|
let fromX = cx + x, fromY = cy + y;
|
|
2827
2827
|
if (data) data.push(data.length ? L$6 : M$5, fromX, fromY);
|
|
2828
2828
|
if (setPointBounds) setPoint$1(setPointBounds, fromX, fromY);
|
|
2829
|
-
if (setStartPoint) set$
|
|
2829
|
+
if (setStartPoint) set$2(setStartPoint, fromX, fromY);
|
|
2830
2830
|
for (let i = 0; i < parts; i++) {
|
|
2831
2831
|
endCos = cos$3(endRadian);
|
|
2832
2832
|
endSin = sin$3(endRadian);
|
|
@@ -2845,7 +2845,7 @@ const BezierHelper = {
|
|
|
2845
2845
|
startRadian = endRadian;
|
|
2846
2846
|
endRadian += partRadian;
|
|
2847
2847
|
}
|
|
2848
|
-
if (setEndPoint) set$
|
|
2848
|
+
if (setEndPoint) set$2(setEndPoint, cx + x, cy + y);
|
|
2849
2849
|
},
|
|
2850
2850
|
quadraticCurveTo(data, fromX, fromY, x1, y1, toX, toY) {
|
|
2851
2851
|
data.push(C$4, (fromX + 2 * x1) / 3, (fromY + 2 * y1) / 3, (toX + 2 * x1) / 3, (toY + 2 * y1) / 3, toX, toY);
|
|
@@ -2881,8 +2881,8 @@ const BezierHelper = {
|
|
|
2881
2881
|
addMode ? addPoint$1(pointBounds, fromX, fromY) : setPoint$1(pointBounds, fromX, fromY);
|
|
2882
2882
|
addPoint$1(pointBounds, toX, toY);
|
|
2883
2883
|
for (let i = 0, len = tList.length; i < len; i++) {
|
|
2884
|
-
getPointAndSet(tList[i], fromX, fromY, x1, y1, x2, y2, toX, toY, tempPoint$
|
|
2885
|
-
addPoint$1(pointBounds, tempPoint$
|
|
2884
|
+
getPointAndSet(tList[i], fromX, fromY, x1, y1, x2, y2, toX, toY, tempPoint$2);
|
|
2885
|
+
addPoint$1(pointBounds, tempPoint$2.x, tempPoint$2.y);
|
|
2886
2886
|
}
|
|
2887
2887
|
},
|
|
2888
2888
|
getPointAndSet(t, fromX, fromY, x1, y1, x2, y2, toX, toY, setPoint) {
|
|
@@ -3321,7 +3321,7 @@ const {M: M$3, L: L$4, C: C$2, Q: Q$2, Z: Z$3, N: N$2, D: D$2, X: X$2, G: G$2, F
|
|
|
3321
3321
|
|
|
3322
3322
|
const {getMinDistanceFrom: getMinDistanceFrom, getRadianFrom: getRadianFrom} = PointHelper;
|
|
3323
3323
|
|
|
3324
|
-
const {tan: tan, min: min, abs: abs$
|
|
3324
|
+
const {tan: tan, min: min, abs: abs$3} = Math;
|
|
3325
3325
|
|
|
3326
3326
|
const startPoint = {};
|
|
3327
3327
|
|
|
@@ -3381,7 +3381,7 @@ const PathCommandDataHelper = {
|
|
|
3381
3381
|
arcTo(data, x1, y1, x2, y2, radius, lastX, lastY, fullRadius) {
|
|
3382
3382
|
if (!isUndefined(lastX)) {
|
|
3383
3383
|
const r = getMinDistanceFrom(lastX, lastY, x1, y1, x2, y2) / (fullRadius ? 1 : 2);
|
|
3384
|
-
radius = min(radius, min(r, r * abs$
|
|
3384
|
+
radius = min(radius, min(r, r * abs$3(tan(getRadianFrom(lastX, lastY, x1, y1, x2, y2) / 2))));
|
|
3385
3385
|
}
|
|
3386
3386
|
data.push(U$2, x1, y1, x2, y2, radius);
|
|
3387
3387
|
},
|
|
@@ -4586,7 +4586,9 @@ function sortType(defaultValue) {
|
|
|
4586
4586
|
set(value) {
|
|
4587
4587
|
if (this.__setAttr(key, value)) {
|
|
4588
4588
|
this.waitParent(() => {
|
|
4589
|
-
this
|
|
4589
|
+
const {parent: parent} = this;
|
|
4590
|
+
parent.__layout.childrenSortChange();
|
|
4591
|
+
if (parent.__.flow) parent.__layout.boxChange();
|
|
4590
4592
|
});
|
|
4591
4593
|
}
|
|
4592
4594
|
}
|
|
@@ -4988,7 +4990,7 @@ const LeafHelper = {
|
|
|
4988
4990
|
p = p.parent;
|
|
4989
4991
|
}
|
|
4990
4992
|
},
|
|
4991
|
-
animateMove(t, move, speed = .3) {
|
|
4993
|
+
animateMove(t, move, speed = .3, onAnimate) {
|
|
4992
4994
|
if (!move.x && !move.y) return;
|
|
4993
4995
|
if (Math.abs(move.x) < 1 && Math.abs(move.y) < 1) {
|
|
4994
4996
|
t.move(move);
|
|
@@ -4996,8 +4998,9 @@ const LeafHelper = {
|
|
|
4996
4998
|
const x = move.x * speed, y = move.y * speed;
|
|
4997
4999
|
move.x -= x, move.y -= y;
|
|
4998
5000
|
t.move(x, y);
|
|
4999
|
-
Platform.requestRender(() => L.animateMove(t, move, speed));
|
|
5001
|
+
Platform.requestRender(() => L.animateMove(t, move, speed, onAnimate));
|
|
5000
5002
|
}
|
|
5003
|
+
onAnimate && onAnimate();
|
|
5001
5004
|
}
|
|
5002
5005
|
};
|
|
5003
5006
|
|
|
@@ -6038,7 +6041,7 @@ const LeafDataProxy = {
|
|
|
6038
6041
|
|
|
6039
6042
|
const {setLayout: setLayout, multiplyParent: multiplyParent$2, translateInner: translateInner, defaultWorld: defaultWorld} = MatrixHelper;
|
|
6040
6043
|
|
|
6041
|
-
const {toPoint: toPoint$3, tempPoint: tempPoint} = AroundHelper;
|
|
6044
|
+
const {toPoint: toPoint$3, tempPoint: tempPoint$1} = AroundHelper;
|
|
6042
6045
|
|
|
6043
6046
|
const LeafMatrix = {
|
|
6044
6047
|
__updateWorldMatrix() {
|
|
@@ -6059,8 +6062,8 @@ const LeafMatrix = {
|
|
|
6059
6062
|
local.e = data.x + data.offsetX;
|
|
6060
6063
|
local.f = data.y + data.offsetY;
|
|
6061
6064
|
if (data.around || data.origin) {
|
|
6062
|
-
toPoint$3(data.around || data.origin, layout.boxBounds, tempPoint);
|
|
6063
|
-
translateInner(local, -tempPoint.x, -tempPoint.y, !data.around);
|
|
6065
|
+
toPoint$3(data.around || data.origin, layout.boxBounds, tempPoint$1);
|
|
6066
|
+
translateInner(local, -tempPoint$1.x, -tempPoint$1.y, !data.around);
|
|
6064
6067
|
}
|
|
6065
6068
|
}
|
|
6066
6069
|
this.__layout.matrixChanged = undefined;
|
|
@@ -6169,6 +6172,7 @@ const LeafBounds = {
|
|
|
6169
6172
|
if (this.isBranch) {
|
|
6170
6173
|
this.__extraUpdate();
|
|
6171
6174
|
if (this.__.flow) {
|
|
6175
|
+
if (this.__layout.childrenSortChanged) this.__updateSortChildren();
|
|
6172
6176
|
if (this.__layout.boxChanged) this.__updateFlowLayout();
|
|
6173
6177
|
updateAllMatrix$2(this);
|
|
6174
6178
|
updateBounds$1(this, this);
|
|
@@ -6240,11 +6244,7 @@ const {excludeRenderBounds: excludeRenderBounds$1} = LeafBoundsHelper, {hasSize:
|
|
|
6240
6244
|
|
|
6241
6245
|
const BranchRender = {
|
|
6242
6246
|
__updateChange() {
|
|
6243
|
-
|
|
6244
|
-
if (layout.childrenSortChanged) {
|
|
6245
|
-
this.__updateSortChildren();
|
|
6246
|
-
layout.childrenSortChanged = false;
|
|
6247
|
-
}
|
|
6247
|
+
if (this.__layout.childrenSortChanged) this.__updateSortChildren();
|
|
6248
6248
|
this.__.__checkSingle();
|
|
6249
6249
|
},
|
|
6250
6250
|
__render(canvas, options) {
|
|
@@ -6748,6 +6748,7 @@ let Branch = class Branch extends Leaf {
|
|
|
6748
6748
|
children.sort(sort);
|
|
6749
6749
|
this.__layout.affectChildrenSort = affectSort;
|
|
6750
6750
|
}
|
|
6751
|
+
this.__layout.childrenSortChanged = false;
|
|
6751
6752
|
}
|
|
6752
6753
|
add(child, index) {
|
|
6753
6754
|
if (child === this || child.destroyed) return debug$5.warn("add self or destroyed");
|
|
@@ -6983,7 +6984,7 @@ class LeafLevelList {
|
|
|
6983
6984
|
}
|
|
6984
6985
|
}
|
|
6985
6986
|
|
|
6986
|
-
const version = "2.1.
|
|
6987
|
+
const version = "2.1.8";
|
|
6987
6988
|
|
|
6988
6989
|
const debug$4 = Debug.get("LeaferCanvas");
|
|
6989
6990
|
|
|
@@ -8543,6 +8544,7 @@ let UI = UI_1 = class UI extends Leaf {
|
|
|
8543
8544
|
this.set(keyframe);
|
|
8544
8545
|
return Plugin.need("animate");
|
|
8545
8546
|
}
|
|
8547
|
+
killAnimate(_type, _nextStyle) {}
|
|
8546
8548
|
export(_filename, _options) {
|
|
8547
8549
|
return Plugin.need("export");
|
|
8548
8550
|
}
|
|
@@ -9302,32 +9304,56 @@ __decorate([ affectRenderBoundsType("hide") ], Frame.prototype, "overflow", void
|
|
|
9302
9304
|
|
|
9303
9305
|
Frame = __decorate([ registerUI() ], Frame);
|
|
9304
9306
|
|
|
9305
|
-
const {moveTo: moveTo$3, closePath: closePath$2, ellipse: ellipse} = PathCommandDataHelper;
|
|
9307
|
+
const {moveTo: moveTo$3, closePath: closePath$2, ellipse: ellipse} = PathCommandDataHelper, {tempPoint: tempPoint, set: set$1, rotate: rotate$2} = PointHelper, {abs: abs$2} = Math, tempCenter = {};
|
|
9306
9308
|
|
|
9307
9309
|
let Ellipse = class Ellipse extends UI {
|
|
9308
9310
|
get __tag() {
|
|
9309
9311
|
return "Ellipse";
|
|
9310
9312
|
}
|
|
9311
9313
|
__updatePath() {
|
|
9312
|
-
const data = this.__, {width: width, height: height, innerRadius: innerRadius, startAngle: startAngle, endAngle: endAngle} = data;
|
|
9314
|
+
const data = this.__, {width: width, height: height, innerRadius: innerRadius, startAngle: startAngle, endAngle: endAngle, closed: closed} = data;
|
|
9313
9315
|
const rx = width / 2, ry = height / 2;
|
|
9314
9316
|
const path = data.path = [];
|
|
9315
|
-
let open;
|
|
9317
|
+
let open, hasAngle, closedAngle;
|
|
9318
|
+
if (startAngle || endAngle) hasAngle = true;
|
|
9319
|
+
if (hasAngle) closedAngle = abs$2(endAngle - startAngle) === 360;
|
|
9316
9320
|
if (innerRadius) {
|
|
9317
|
-
|
|
9318
|
-
|
|
9319
|
-
|
|
9321
|
+
const drawInnerEllipse = innerRadius < 1 || closed;
|
|
9322
|
+
let outerStartAngle = startAngle, outerEndAngle = endAngle, outerAnticlockwise;
|
|
9323
|
+
if (hasAngle) {
|
|
9324
|
+
if (drawInnerEllipse) {
|
|
9325
|
+
ellipse(path, rx, ry, rx * innerRadius, ry * innerRadius, 0, startAngle, endAngle);
|
|
9326
|
+
if (closedAngle) {
|
|
9327
|
+
set$1(tempPoint, width, ry);
|
|
9328
|
+
set$1(tempCenter, rx, ry);
|
|
9329
|
+
rotate$2(tempPoint, endAngle, tempCenter, rx, ry);
|
|
9330
|
+
moveTo$3(path, tempPoint.x, tempPoint.y);
|
|
9331
|
+
}
|
|
9332
|
+
outerStartAngle = endAngle;
|
|
9333
|
+
outerEndAngle = startAngle;
|
|
9334
|
+
outerAnticlockwise = true;
|
|
9335
|
+
} else {
|
|
9336
|
+
if (!closedAngle) open = true;
|
|
9337
|
+
}
|
|
9320
9338
|
} else {
|
|
9321
|
-
if (
|
|
9339
|
+
if (drawInnerEllipse) {
|
|
9322
9340
|
ellipse(path, rx, ry, rx * innerRadius, ry * innerRadius);
|
|
9341
|
+
closePath$2(path);
|
|
9323
9342
|
moveTo$3(path, width, ry);
|
|
9343
|
+
outerStartAngle = 360;
|
|
9344
|
+
outerAnticlockwise = true;
|
|
9345
|
+
} else {
|
|
9346
|
+
outerEndAngle = 360;
|
|
9324
9347
|
}
|
|
9325
|
-
ellipse(path, rx, ry, rx, ry, 0, 360, 0, true);
|
|
9326
9348
|
}
|
|
9349
|
+
ellipse(path, rx, ry, rx, ry, 0, outerStartAngle, outerEndAngle, outerAnticlockwise);
|
|
9327
9350
|
} else {
|
|
9328
|
-
if (
|
|
9329
|
-
|
|
9330
|
-
|
|
9351
|
+
if (hasAngle) {
|
|
9352
|
+
if (!closedAngle) {
|
|
9353
|
+
if (!closed) open = true;
|
|
9354
|
+
if (!open) moveTo$3(path, rx, ry);
|
|
9355
|
+
}
|
|
9356
|
+
ellipse(path, rx, ry, rx, ry, 0, startAngle, endAngle);
|
|
9331
9357
|
} else {
|
|
9332
9358
|
ellipse(path, rx, ry, rx, ry);
|
|
9333
9359
|
}
|
|
@@ -10194,6 +10220,7 @@ function checkSizeAndCreateData(ui, attrName, paint, image, leafPaint, boxBounds
|
|
|
10194
10220
|
if (data.__autoSide) {
|
|
10195
10221
|
ui.forceUpdate("width");
|
|
10196
10222
|
LeafHelper.updateBounds(ui);
|
|
10223
|
+
ui.__layout.boundsChanged = true;
|
|
10197
10224
|
if (ui.__proxyData) {
|
|
10198
10225
|
ui.setProxyAttr("width", data.width);
|
|
10199
10226
|
ui.setProxyAttr("height", data.height);
|
|
@@ -10201,7 +10228,7 @@ function checkSizeAndCreateData(ui, attrName, paint, image, leafPaint, boxBounds
|
|
|
10201
10228
|
needUpdate = false;
|
|
10202
10229
|
}
|
|
10203
10230
|
}
|
|
10204
|
-
if (paint.mode === "brush") PaintImage.brush(
|
|
10231
|
+
if (paint.mode === "brush") PaintImage.brush(ui, attrName, leafPaint);
|
|
10205
10232
|
if (!leafPaint.data) {
|
|
10206
10233
|
PaintImage.createData(leafPaint, image, paint, boxBounds);
|
|
10207
10234
|
const {transform: transform} = leafPaint.data, {opacity: opacity} = paint;
|
|
@@ -11467,4 +11494,4 @@ Object.assign(Effect, EffectModule);
|
|
|
11467
11494
|
|
|
11468
11495
|
useCanvas();
|
|
11469
11496
|
|
|
11470
|
-
export { AlignHelper, Answer, AroundHelper, AutoBounds, BezierHelper, Bounds, BoundsEvent, BoundsHelper, Box, BoxData, Branch, BranchHelper, BranchRender, Canvas, CanvasData, CanvasManager, ChildEvent, ColorConvert, Creator, DataHelper, Debug, Direction4, Direction9, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, FourNumberHelper, Frame, FrameData, Group, GroupData, Image$1 as Image, ImageData, ImageEvent, ImageManager, IncrementId, LayoutEvent, Layouter, Leaf, LeafBounds, LeafBoundsHelper, LeafData, LeafDataProxy, LeafEventer, LeafHelper, LeafLayout, LeafLevelList, LeafList, LeafMatrix, LeafRender, Leafer, LeaferCanvas, LeaferCanvasBase, LeaferData, LeaferEvent, LeaferFilm, LeaferImage, LeaferVideo, Line, LineData, MathHelper, Matrix, MatrixHelper, MyImage, NeedConvertToCanvasCommandMap, OneRadian, PI2, PI_2, Paint, PaintGradient, PaintImage, Path, PathArrow, PathBounds, PathCommandDataHelper, PathCommandMap, PathCommandNodeHelper, PathConvert, PathCorner, PathCreator, PathData, PathDrawer, PathHelper, PathNodeHandleType, PathNumberCommandLengthMap, PathNumberCommandMap, Pen, PenData, Platform, Plugin, Point, PointHelper, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, Run, Star, StarData, State, StringNumberMap, TaskItem, TaskProcessor, Text, TextConvert, TextData, Transition, TwoPointBoundsHelper, UI, UIBounds, UICreator, UIData, UIRender, UnitConvert, UnitConvertHelper, WaitHelper, WatchEvent, Watcher, affectRenderBoundsType, affectStrokeBoundsType, attr, autoLayoutType, boundsType, canvasPatch, canvasSizeAttrs, createAttr, createDescriptor, cursorType, dataProcessor, dataType, decorateLeafAttr, defineDataProcessor, defineKey, defineLeafAttr, dimType, doBoundsType, doStrokeType, effectType, emptyData, eraserType, extraPropertyEventMap, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$
|
|
11497
|
+
export { AlignHelper, Answer, AroundHelper, AutoBounds, BezierHelper, Bounds, BoundsEvent, BoundsHelper, Box, BoxData, Branch, BranchHelper, BranchRender, Canvas, CanvasData, CanvasManager, ChildEvent, ColorConvert, Creator, DataHelper, Debug, Direction4, Direction9, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, FourNumberHelper, Frame, FrameData, Group, GroupData, Image$1 as Image, ImageData, ImageEvent, ImageManager, IncrementId, LayoutEvent, Layouter, Leaf, LeafBounds, LeafBoundsHelper, LeafData, LeafDataProxy, LeafEventer, LeafHelper, LeafLayout, LeafLevelList, LeafList, LeafMatrix, LeafRender, Leafer, LeaferCanvas, LeaferCanvasBase, LeaferData, LeaferEvent, LeaferFilm, LeaferImage, LeaferVideo, Line, LineData, MathHelper, Matrix, MatrixHelper, MyImage, NeedConvertToCanvasCommandMap, OneRadian, PI2, PI_2, Paint, PaintGradient, PaintImage, Path, PathArrow, PathBounds, PathCommandDataHelper, PathCommandMap, PathCommandNodeHelper, PathConvert, PathCorner, PathCreator, PathData, PathDrawer, PathHelper, PathNodeHandleType, PathNumberCommandLengthMap, PathNumberCommandMap, Pen, PenData, Platform, Plugin, Point, PointHelper, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, Run, Star, StarData, State, StringNumberMap, TaskItem, TaskProcessor, Text, TextConvert, TextData, Transition, TwoPointBoundsHelper, UI, UIBounds, UICreator, UIData, UIRender, UnitConvert, UnitConvertHelper, WaitHelper, WatchEvent, Watcher, affectRenderBoundsType, affectStrokeBoundsType, attr, autoLayoutType, boundsType, canvasPatch, canvasSizeAttrs, createAttr, createDescriptor, cursorType, dataProcessor, dataType, decorateLeafAttr, defineDataProcessor, defineKey, defineLeafAttr, dimType, doBoundsType, doStrokeType, effectType, emptyData, eraserType, extraPropertyEventMap, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$3 as tempPoint, tryToNumber, useCanvas, useModule, version, visibleType, zoomLayerType };
|