@visactor/vrender-core 0.21.0-alpha.4 → 0.21.0-beta.0
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/cjs/animate/Ticker/default-ticker.d.ts +4 -2
- package/cjs/animate/Ticker/default-ticker.js +8 -5
- package/cjs/animate/Ticker/default-ticker.js.map +1 -1
- package/cjs/animate/custom-animate.d.ts +2 -0
- package/cjs/animate/custom-animate.js +11 -2
- package/cjs/animate/custom-animate.js.map +1 -1
- package/cjs/core/stage.d.ts +2 -0
- package/cjs/core/stage.js +9 -5
- package/cjs/core/stage.js.map +1 -1
- package/cjs/graphic/builtin-symbol/arrow.js +2 -2
- package/cjs/graphic/builtin-symbol/arrow.js.map +1 -1
- package/cjs/graphic/builtin-symbol/arrow2-down.js +2 -2
- package/cjs/graphic/builtin-symbol/arrow2-down.js.map +1 -1
- package/cjs/graphic/builtin-symbol/arrow2-left.js +2 -2
- package/cjs/graphic/builtin-symbol/arrow2-left.js.map +1 -1
- package/cjs/graphic/builtin-symbol/arrow2-right.js +2 -2
- package/cjs/graphic/builtin-symbol/arrow2-right.js.map +1 -1
- package/cjs/graphic/builtin-symbol/arrow2-up.js +2 -2
- package/cjs/graphic/builtin-symbol/arrow2-up.js.map +1 -1
- package/cjs/graphic/builtin-symbol/base.d.ts +1 -0
- package/cjs/graphic/builtin-symbol/base.js +3 -0
- package/cjs/graphic/builtin-symbol/base.js.map +1 -1
- package/cjs/graphic/builtin-symbol/circle.js +3 -3
- package/cjs/graphic/builtin-symbol/circle.js.map +1 -1
- package/cjs/graphic/builtin-symbol/close.js +3 -3
- package/cjs/graphic/builtin-symbol/close.js.map +1 -1
- package/cjs/graphic/builtin-symbol/cross.js +2 -2
- package/cjs/graphic/builtin-symbol/cross.js.map +1 -1
- package/cjs/graphic/builtin-symbol/diamond.js +3 -3
- package/cjs/graphic/builtin-symbol/diamond.js.map +1 -1
- package/cjs/graphic/builtin-symbol/line-h.js +3 -3
- package/cjs/graphic/builtin-symbol/line-h.js.map +1 -1
- package/cjs/graphic/builtin-symbol/line-v.js +3 -3
- package/cjs/graphic/builtin-symbol/line-v.js.map +1 -1
- package/cjs/graphic/builtin-symbol/square.js +2 -2
- package/cjs/graphic/builtin-symbol/square.js.map +1 -1
- package/cjs/graphic/builtin-symbol/star.js +2 -2
- package/cjs/graphic/builtin-symbol/star.js.map +1 -1
- package/cjs/graphic/builtin-symbol/stroke.js +2 -2
- package/cjs/graphic/builtin-symbol/stroke.js.map +1 -1
- package/cjs/graphic/builtin-symbol/thin-triangle.js +2 -2
- package/cjs/graphic/builtin-symbol/thin-triangle.js.map +1 -1
- package/cjs/graphic/builtin-symbol/triangle-down.js +2 -2
- package/cjs/graphic/builtin-symbol/triangle-down.js.map +1 -1
- package/cjs/graphic/builtin-symbol/triangle-left.js +2 -2
- package/cjs/graphic/builtin-symbol/triangle-left.js.map +1 -1
- package/cjs/graphic/builtin-symbol/triangle-right.js +2 -2
- package/cjs/graphic/builtin-symbol/triangle-right.js.map +1 -1
- package/cjs/graphic/builtin-symbol/triangle-up.js +2 -2
- package/cjs/graphic/builtin-symbol/triangle-up.js.map +1 -1
- package/cjs/graphic/builtin-symbol/utils.d.ts +1 -0
- package/cjs/graphic/builtin-symbol/utils.js +6 -3
- package/cjs/graphic/builtin-symbol/utils.js.map +1 -1
- package/cjs/graphic/builtin-symbol/wedge.js +2 -2
- package/cjs/graphic/builtin-symbol/wedge.js.map +1 -1
- package/cjs/graphic/builtin-symbol/wye.js +2 -2
- package/cjs/graphic/builtin-symbol/wye.js.map +1 -1
- package/cjs/graphic/config.js +2 -1
- package/cjs/graphic/config.js.map +1 -1
- package/cjs/graphic/richtext/paragraph.js +3 -1
- package/cjs/graphic/richtext/paragraph.js.map +1 -1
- package/cjs/interface/animate.d.ts +3 -1
- package/cjs/interface/animate.js.map +1 -1
- package/cjs/interface/context.d.ts +1 -0
- package/cjs/interface/context.js.map +1 -1
- package/cjs/interface/graphic.d.ts +1 -0
- package/cjs/interface/graphic.js.map +1 -1
- package/cjs/interface/stage.d.ts +1 -0
- package/cjs/interface/stage.js.map +1 -1
- package/cjs/render/contributions/render/contributions/arc-contribution-render.js +2 -2
- package/cjs/render/contributions/render/contributions/arc-contribution-render.js.map +1 -1
- package/cjs/render/contributions/render/contributions/circle-contribution-render.js +2 -2
- package/cjs/render/contributions/render/contributions/circle-contribution-render.js.map +1 -1
- package/cjs/render/contributions/render/contributions/image-contribution-render.d.ts +1 -1
- package/cjs/render/contributions/render/contributions/image-contribution-render.js +2 -3
- package/cjs/render/contributions/render/contributions/image-contribution-render.js.map +1 -1
- package/cjs/render/contributions/render/contributions/rect-contribution-render.js +2 -2
- package/cjs/render/contributions/render/contributions/rect-contribution-render.js.map +1 -1
- package/cjs/render/contributions/render/contributions/symbol-contribution-render.js +2 -2
- package/cjs/render/contributions/render/contributions/symbol-contribution-render.js.map +1 -1
- package/cjs/render/contributions/render/image-render.js +4 -6
- package/cjs/render/contributions/render/image-render.js.map +1 -1
- package/cjs/resource-loader/loader.js +1 -1
- package/cjs/resource-loader/loader.js.map +1 -1
- package/dist/index.es.js +128 -81
- package/es/animate/Ticker/default-ticker.d.ts +4 -2
- package/es/animate/Ticker/default-ticker.js +9 -6
- package/es/animate/Ticker/default-ticker.js.map +1 -1
- package/es/animate/custom-animate.d.ts +2 -0
- package/es/animate/custom-animate.js +11 -2
- package/es/animate/custom-animate.js.map +1 -1
- package/es/core/stage.d.ts +2 -0
- package/es/core/stage.js +9 -5
- package/es/core/stage.js.map +1 -1
- package/es/graphic/builtin-symbol/arrow.js +2 -2
- package/es/graphic/builtin-symbol/arrow.js.map +1 -1
- package/es/graphic/builtin-symbol/arrow2-down.js +2 -2
- package/es/graphic/builtin-symbol/arrow2-down.js.map +1 -1
- package/es/graphic/builtin-symbol/arrow2-left.js +2 -2
- package/es/graphic/builtin-symbol/arrow2-left.js.map +1 -1
- package/es/graphic/builtin-symbol/arrow2-right.js +2 -2
- package/es/graphic/builtin-symbol/arrow2-right.js.map +1 -1
- package/es/graphic/builtin-symbol/arrow2-up.js +2 -2
- package/es/graphic/builtin-symbol/arrow2-up.js.map +1 -1
- package/es/graphic/builtin-symbol/base.d.ts +1 -0
- package/es/graphic/builtin-symbol/base.js +3 -0
- package/es/graphic/builtin-symbol/base.js.map +1 -1
- package/es/graphic/builtin-symbol/circle.js +3 -3
- package/es/graphic/builtin-symbol/circle.js.map +1 -1
- package/es/graphic/builtin-symbol/close.js +3 -3
- package/es/graphic/builtin-symbol/close.js.map +1 -1
- package/es/graphic/builtin-symbol/cross.js +2 -2
- package/es/graphic/builtin-symbol/cross.js.map +1 -1
- package/es/graphic/builtin-symbol/diamond.js +3 -3
- package/es/graphic/builtin-symbol/diamond.js.map +1 -1
- package/es/graphic/builtin-symbol/line-h.js +3 -3
- package/es/graphic/builtin-symbol/line-h.js.map +1 -1
- package/es/graphic/builtin-symbol/line-v.js +3 -3
- package/es/graphic/builtin-symbol/line-v.js.map +1 -1
- package/es/graphic/builtin-symbol/square.js +2 -2
- package/es/graphic/builtin-symbol/square.js.map +1 -1
- package/es/graphic/builtin-symbol/star.js +2 -2
- package/es/graphic/builtin-symbol/star.js.map +1 -1
- package/es/graphic/builtin-symbol/stroke.js +2 -2
- package/es/graphic/builtin-symbol/stroke.js.map +1 -1
- package/es/graphic/builtin-symbol/thin-triangle.js +2 -2
- package/es/graphic/builtin-symbol/thin-triangle.js.map +1 -1
- package/es/graphic/builtin-symbol/triangle-down.js +2 -2
- package/es/graphic/builtin-symbol/triangle-down.js.map +1 -1
- package/es/graphic/builtin-symbol/triangle-left.js +2 -2
- package/es/graphic/builtin-symbol/triangle-left.js.map +1 -1
- package/es/graphic/builtin-symbol/triangle-right.js +2 -2
- package/es/graphic/builtin-symbol/triangle-right.js.map +1 -1
- package/es/graphic/builtin-symbol/triangle-up.js +2 -2
- package/es/graphic/builtin-symbol/triangle-up.js.map +1 -1
- package/es/graphic/builtin-symbol/utils.d.ts +1 -0
- package/es/graphic/builtin-symbol/utils.js +7 -4
- package/es/graphic/builtin-symbol/utils.js.map +1 -1
- package/es/graphic/builtin-symbol/wedge.js +2 -2
- package/es/graphic/builtin-symbol/wedge.js.map +1 -1
- package/es/graphic/builtin-symbol/wye.js +2 -2
- package/es/graphic/builtin-symbol/wye.js.map +1 -1
- package/es/graphic/config.js +2 -1
- package/es/graphic/config.js.map +1 -1
- package/es/graphic/richtext/paragraph.js +4 -2
- package/es/graphic/richtext/paragraph.js.map +1 -1
- package/es/interface/animate.d.ts +3 -1
- package/es/interface/animate.js.map +1 -1
- package/es/interface/context.d.ts +1 -0
- package/es/interface/context.js.map +1 -1
- package/es/interface/graphic.d.ts +1 -0
- package/es/interface/graphic.js.map +1 -1
- package/es/interface/stage.d.ts +1 -0
- package/es/interface/stage.js.map +1 -1
- package/es/render/contributions/render/contributions/arc-contribution-render.js +2 -2
- package/es/render/contributions/render/contributions/arc-contribution-render.js.map +1 -1
- package/es/render/contributions/render/contributions/circle-contribution-render.js +2 -2
- package/es/render/contributions/render/contributions/circle-contribution-render.js.map +1 -1
- package/es/render/contributions/render/contributions/image-contribution-render.d.ts +1 -1
- package/es/render/contributions/render/contributions/image-contribution-render.js +2 -3
- package/es/render/contributions/render/contributions/image-contribution-render.js.map +1 -1
- package/es/render/contributions/render/contributions/rect-contribution-render.js +2 -2
- package/es/render/contributions/render/contributions/rect-contribution-render.js.map +1 -1
- package/es/render/contributions/render/contributions/symbol-contribution-render.js +2 -2
- package/es/render/contributions/render/contributions/symbol-contribution-render.js.map +1 -1
- package/es/render/contributions/render/image-render.js +4 -6
- package/es/render/contributions/render/image-render.js.map +1 -1
- package/es/resource-loader/loader.js +1 -1
- package/es/resource-loader/loader.js.map +1 -1
- package/package.json +4 -3
package/dist/index.es.js
CHANGED
|
@@ -3055,7 +3055,7 @@ const DefaultConnectAttribute = {
|
|
|
3055
3055
|
const DefaultDebugAttribute = {
|
|
3056
3056
|
_debug_bounds: false
|
|
3057
3057
|
};
|
|
3058
|
-
const DefaultAttribute = Object.assign(Object.assign(Object.assign({ strokeSeg: null, renderable: true, pickable: true, shadowGraphic: undefined, childrenPickable: true, fillPickable: true, strokePickable: true, visible: true, zIndex: 0, layout: null, boundsPadding: 0, fillStrokeOrder: 0, renderStyle: 'default', pickMode: 'accurate', customPickShape: null, boundsMode: 'accurate', keepDirIn3d: true, shadowRootIdx: 1, globalZIndex: 1, globalCompositeOperation: '', overflow: 'hidden', shadowPickMode: 'graphic' }, DefaultDebugAttribute), DefaultStyle), DefaultTransform);
|
|
3058
|
+
const DefaultAttribute = Object.assign(Object.assign(Object.assign({ strokeSeg: null, renderable: true, pickable: true, shadowGraphic: undefined, childrenPickable: true, fillPickable: true, strokePickable: true, visible: true, zIndex: 0, layout: null, boundsPadding: 0, fillStrokeOrder: 0, renderStyle: 'default', pickMode: 'accurate', customPickShape: null, boundsMode: 'accurate', keepDirIn3d: true, shadowRootIdx: 1, globalZIndex: 1, globalCompositeOperation: '', overflow: 'hidden', shadowPickMode: 'graphic', keepStrokeScale: false }, DefaultDebugAttribute), DefaultStyle), DefaultTransform);
|
|
3059
3059
|
function addAttributeToPrototype(obj, c, keys) {
|
|
3060
3060
|
keys.forEach(key => {
|
|
3061
3061
|
c.prototype[key] = obj[key];
|
|
@@ -6841,7 +6841,7 @@ class TimeOutTickHandler {
|
|
|
6841
6841
|
}
|
|
6842
6842
|
}
|
|
6843
6843
|
|
|
6844
|
-
class DefaultTicker {
|
|
6844
|
+
class DefaultTicker extends EventEmitter {
|
|
6845
6845
|
set mode(m) {
|
|
6846
6846
|
if (this._mode === m) {
|
|
6847
6847
|
return;
|
|
@@ -6853,18 +6853,19 @@ class DefaultTicker {
|
|
|
6853
6853
|
return this._mode;
|
|
6854
6854
|
}
|
|
6855
6855
|
constructor(timelines = []) {
|
|
6856
|
+
super();
|
|
6856
6857
|
this.handleTick = (handler, params) => {
|
|
6857
6858
|
const { once = false } = params !== null && params !== void 0 ? params : {};
|
|
6858
6859
|
if (this.ifCanStop()) {
|
|
6859
6860
|
this.stop();
|
|
6860
6861
|
return;
|
|
6861
6862
|
}
|
|
6862
|
-
this._handlerTick(
|
|
6863
|
+
this._handlerTick();
|
|
6863
6864
|
if (!once) {
|
|
6864
6865
|
handler.tick(this.interval, this.handleTick);
|
|
6865
6866
|
}
|
|
6866
6867
|
};
|
|
6867
|
-
this._handlerTick = (
|
|
6868
|
+
this._handlerTick = () => {
|
|
6868
6869
|
const tickerHandler = this.tickerHandler;
|
|
6869
6870
|
const time = tickerHandler.getTime();
|
|
6870
6871
|
let delta = 0;
|
|
@@ -6879,6 +6880,7 @@ class DefaultTicker {
|
|
|
6879
6880
|
this.timelines.forEach(t => {
|
|
6880
6881
|
t.tick(delta);
|
|
6881
6882
|
});
|
|
6883
|
+
this.emit('afterTick');
|
|
6882
6884
|
};
|
|
6883
6885
|
this.init();
|
|
6884
6886
|
this.lastFrameTime = -1;
|
|
@@ -7018,6 +7020,11 @@ class DefaultTicker {
|
|
|
7018
7020
|
this.setupTickHandler();
|
|
7019
7021
|
this.lastFrameTime = -1;
|
|
7020
7022
|
}
|
|
7023
|
+
trySyncTickStatus() {
|
|
7024
|
+
if (this.status === STATUS$1.RUNNING) {
|
|
7025
|
+
this._handlerTick();
|
|
7026
|
+
}
|
|
7027
|
+
}
|
|
7021
7028
|
}
|
|
7022
7029
|
|
|
7023
7030
|
class ManualTickHandler {
|
|
@@ -8838,6 +8845,11 @@ class TagPointsUpdate extends ACustomAnimate {
|
|
|
8838
8845
|
this.clipRange =
|
|
8839
8846
|
this.toPoints[lastMatchedIndex][this.clipRangeByDimension] /
|
|
8840
8847
|
this.toPoints[this.toPoints.length - 1][this.clipRangeByDimension];
|
|
8848
|
+
if (this.clipRange === 1) {
|
|
8849
|
+
this.shrinkClipRange =
|
|
8850
|
+
this.toPoints[lastMatchedIndex][this.clipRangeByDimension] /
|
|
8851
|
+
this.fromPoints[this.fromPoints.length - 1][this.clipRangeByDimension];
|
|
8852
|
+
}
|
|
8841
8853
|
if (!isValidNumber(this.clipRange)) {
|
|
8842
8854
|
this.clipRange = 0;
|
|
8843
8855
|
}
|
|
@@ -8877,6 +8889,12 @@ class TagPointsUpdate extends ACustomAnimate {
|
|
|
8877
8889
|
return newPoint;
|
|
8878
8890
|
});
|
|
8879
8891
|
}
|
|
8892
|
+
onFirstRun() {
|
|
8893
|
+
const lastClipRange = this.target.attribute.clipRange;
|
|
8894
|
+
if (isValidNumber(lastClipRange * this.clipRange)) {
|
|
8895
|
+
this.clipRange *= lastClipRange;
|
|
8896
|
+
}
|
|
8897
|
+
}
|
|
8880
8898
|
onUpdate(end, ratio, out) {
|
|
8881
8899
|
this.points = this.points.map((point, index) => {
|
|
8882
8900
|
const newPoint = pointInterpolation(this.interpolatePoints[index][0], this.interpolatePoints[index][1], ratio);
|
|
@@ -8884,6 +8902,17 @@ class TagPointsUpdate extends ACustomAnimate {
|
|
|
8884
8902
|
return newPoint;
|
|
8885
8903
|
});
|
|
8886
8904
|
if (this.clipRange) {
|
|
8905
|
+
if (this.shrinkClipRange) {
|
|
8906
|
+
if (!end) {
|
|
8907
|
+
out.points = this.fromPoints;
|
|
8908
|
+
out.clipRange = this.clipRange - (this.clipRange - this.shrinkClipRange) * ratio;
|
|
8909
|
+
}
|
|
8910
|
+
else {
|
|
8911
|
+
out.points = this.toPoints;
|
|
8912
|
+
out.clipRange = 1;
|
|
8913
|
+
}
|
|
8914
|
+
return;
|
|
8915
|
+
}
|
|
8887
8916
|
out.clipRange = this.clipRange + (1 - this.clipRange) * ratio;
|
|
8888
8917
|
}
|
|
8889
8918
|
if (this.segmentsCache && this.to.segments) {
|
|
@@ -10810,10 +10839,10 @@ class ResourceLoader {
|
|
|
10810
10839
|
static GetFile(url, type) {
|
|
10811
10840
|
let data = ResourceLoader.cache.get(url);
|
|
10812
10841
|
if (data) {
|
|
10813
|
-
if (data.loadState === 'fail') {
|
|
10842
|
+
if (data.loadState === 'init' || data.loadState === 'fail') {
|
|
10814
10843
|
return Promise.reject();
|
|
10815
10844
|
}
|
|
10816
|
-
else if (data.loadState === '
|
|
10845
|
+
else if (data.loadState === 'loading') {
|
|
10817
10846
|
return data.dataPromise.then(data => data.data);
|
|
10818
10847
|
}
|
|
10819
10848
|
return Promise.resolve(data.data);
|
|
@@ -15409,14 +15438,14 @@ class DefaultArcRenderContribution {
|
|
|
15409
15438
|
if (!(doOuterBorder || doInnerBorder)) {
|
|
15410
15439
|
return;
|
|
15411
15440
|
}
|
|
15412
|
-
const { innerPadding = arcAttribute.innerPadding, outerPadding = arcAttribute.outerPadding, startAngle = arcAttribute.startAngle, endAngle = arcAttribute.endAngle, opacity = arcAttribute.opacity, x: originX = arcAttribute.x, y: originY = arcAttribute.y, scaleX = arcAttribute.scaleX, scaleY = arcAttribute.scaleY } = arc.attribute;
|
|
15441
|
+
const { innerPadding = arcAttribute.innerPadding, outerPadding = arcAttribute.outerPadding, startAngle = arcAttribute.startAngle, endAngle = arcAttribute.endAngle, opacity = arcAttribute.opacity, x: originX = arcAttribute.x, y: originY = arcAttribute.y, scaleX = arcAttribute.scaleX, scaleY = arcAttribute.scaleY, keepStrokeScale = arcAttribute.keepStrokeScale } = arc.attribute;
|
|
15413
15442
|
let { innerRadius = arcAttribute.innerRadius, outerRadius = arcAttribute.outerRadius } = arc.attribute;
|
|
15414
15443
|
outerRadius += outerPadding;
|
|
15415
15444
|
innerRadius -= innerPadding;
|
|
15416
15445
|
const renderBorder = (borderStyle, key) => {
|
|
15417
15446
|
const doStroke = !!(borderStyle && borderStyle.stroke);
|
|
15418
15447
|
const { distance = arcAttribute[key].distance } = borderStyle;
|
|
15419
|
-
const d = getScaledStroke(context, distance, context.dpr);
|
|
15448
|
+
const d = keepStrokeScale ? distance : getScaledStroke(context, distance, context.dpr);
|
|
15420
15449
|
const deltaAngle = distance / outerRadius;
|
|
15421
15450
|
const sign = key === 'outerBorder' ? 1 : -1;
|
|
15422
15451
|
arc.setAttributes({
|
|
@@ -15461,11 +15490,11 @@ class DefaultCircleRenderContribution {
|
|
|
15461
15490
|
if (!(doOuterBorder || doInnerBorder)) {
|
|
15462
15491
|
return;
|
|
15463
15492
|
}
|
|
15464
|
-
const { radius = circleAttribute.radius, startAngle = circleAttribute.startAngle, endAngle = circleAttribute.endAngle, opacity = circleAttribute.opacity, x: originX = circleAttribute.x, y: originY = circleAttribute.y, scaleX = circleAttribute.scaleX, scaleY = circleAttribute.scaleY } = circle.attribute;
|
|
15493
|
+
const { radius = circleAttribute.radius, startAngle = circleAttribute.startAngle, endAngle = circleAttribute.endAngle, opacity = circleAttribute.opacity, x: originX = circleAttribute.x, y: originY = circleAttribute.y, scaleX = circleAttribute.scaleX, scaleY = circleAttribute.scaleY, keepStrokeScale = circleAttribute.keepStrokeScale } = circle.attribute;
|
|
15465
15494
|
const renderBorder = (borderStyle, key) => {
|
|
15466
15495
|
const doStroke = !!(borderStyle && borderStyle.stroke);
|
|
15467
15496
|
const { distance = circleAttribute[key].distance } = borderStyle;
|
|
15468
|
-
const d = getScaledStroke(context, distance, context.dpr);
|
|
15497
|
+
const d = keepStrokeScale ? distance : getScaledStroke(context, distance, context.dpr);
|
|
15469
15498
|
const sign = key === 'outerBorder' ? 1 : -1;
|
|
15470
15499
|
context.beginPath();
|
|
15471
15500
|
context.arc(x, y, radius + sign * d, startAngle, endAngle);
|
|
@@ -15650,7 +15679,7 @@ class DefaultRectRenderContribution {
|
|
|
15650
15679
|
if (!(doOuterBorder || doInnerBorder)) {
|
|
15651
15680
|
return;
|
|
15652
15681
|
}
|
|
15653
|
-
const { cornerRadius = rectAttribute.cornerRadius, opacity = rectAttribute.opacity, x: originX = rectAttribute.x, y: originY = rectAttribute.y, scaleX = rectAttribute.scaleX, scaleY = rectAttribute.scaleY, x1, y1 } = rect.attribute;
|
|
15682
|
+
const { cornerRadius = rectAttribute.cornerRadius, opacity = rectAttribute.opacity, x: originX = rectAttribute.x, y: originY = rectAttribute.y, scaleX = rectAttribute.scaleX, scaleY = rectAttribute.scaleY, x1, y1, keepStrokeScale = rectAttribute.keepStrokeScale } = rect.attribute;
|
|
15654
15683
|
let { width, height } = rect.attribute;
|
|
15655
15684
|
width = (width !== null && width !== void 0 ? width : x1 - x) || 0;
|
|
15656
15685
|
height = (height !== null && height !== void 0 ? height : y1 - y) || 0;
|
|
@@ -15658,7 +15687,7 @@ class DefaultRectRenderContribution {
|
|
|
15658
15687
|
const doStroke = !!(borderStyle && borderStyle.stroke);
|
|
15659
15688
|
const sign = key === 'outerBorder' ? -1 : 1;
|
|
15660
15689
|
const { distance = rectAttribute[key].distance } = borderStyle;
|
|
15661
|
-
const d = getScaledStroke(context, distance, context.dpr);
|
|
15690
|
+
const d = keepStrokeScale ? distance : getScaledStroke(context, distance, context.dpr);
|
|
15662
15691
|
const nextX = x + sign * d;
|
|
15663
15692
|
const nextY = y + sign * d;
|
|
15664
15693
|
const dw = d * 2;
|
|
@@ -15874,13 +15903,8 @@ class DefaultImageRenderContribution extends DefaultRectRenderContribution {
|
|
|
15874
15903
|
this.useStyle = true;
|
|
15875
15904
|
this.order = 0;
|
|
15876
15905
|
}
|
|
15877
|
-
drawShape(
|
|
15878
|
-
|
|
15879
|
-
image.renderFrame(context, x, y);
|
|
15880
|
-
}
|
|
15881
|
-
else {
|
|
15882
|
-
return super.drawShape(image, context, x, y, doFill, doStroke, fVisible, sVisible, rectAttribute, drawContext, fillCb, strokeCb);
|
|
15883
|
-
}
|
|
15906
|
+
drawShape(rect, context, x, y, doFill, doStroke, fVisible, sVisible, rectAttribute, drawContext, fillCb, strokeCb) {
|
|
15907
|
+
return super.drawShape(rect, context, x, y, doFill, doStroke, fVisible, sVisible, rectAttribute, drawContext, fillCb, strokeCb);
|
|
15884
15908
|
}
|
|
15885
15909
|
}
|
|
15886
15910
|
const defaultImageRenderContribution = new DefaultImageRenderContribution();
|
|
@@ -15903,11 +15927,11 @@ class DefaultSymbolRenderContribution {
|
|
|
15903
15927
|
if (!(doOuterBorder || doInnerBorder)) {
|
|
15904
15928
|
return;
|
|
15905
15929
|
}
|
|
15906
|
-
const { size = symbolAttribute.size, opacity = symbolAttribute.opacity, x: originX = symbolAttribute.x, y: originY = symbolAttribute.y, scaleX = symbolAttribute.scaleX, scaleY = symbolAttribute.scaleY } = symbol.attribute;
|
|
15930
|
+
const { size = symbolAttribute.size, opacity = symbolAttribute.opacity, x: originX = symbolAttribute.x, y: originY = symbolAttribute.y, scaleX = symbolAttribute.scaleX, scaleY = symbolAttribute.scaleY, keepStrokeScale = symbolAttribute.keepStrokeScale } = symbol.attribute;
|
|
15907
15931
|
const renderBorder = (borderStyle, key) => {
|
|
15908
15932
|
const doStroke = !!(borderStyle && borderStyle.stroke);
|
|
15909
15933
|
const { distance = symbolAttribute[key].distance } = borderStyle;
|
|
15910
|
-
const d = getScaledStroke(context, distance, context.dpr);
|
|
15934
|
+
const d = keepStrokeScale ? distance : getScaledStroke(context, distance, context.dpr);
|
|
15911
15935
|
const sign = key === 'outerBorder' ? 1 : -1;
|
|
15912
15936
|
context.beginPath();
|
|
15913
15937
|
if (parsedPath.drawOffset(context, size, x, y, sign * d) === false) {
|
|
@@ -18455,18 +18479,16 @@ let DefaultCanvasImageRender = class DefaultCanvasImageRender extends BaseRender
|
|
|
18455
18479
|
}
|
|
18456
18480
|
draw(image, renderService, drawContext) {
|
|
18457
18481
|
const { image: url } = image.attribute;
|
|
18458
|
-
if (!image.
|
|
18459
|
-
|
|
18460
|
-
|
|
18461
|
-
|
|
18462
|
-
|
|
18463
|
-
|
|
18464
|
-
|
|
18465
|
-
|
|
18466
|
-
|
|
18467
|
-
|
|
18468
|
-
return;
|
|
18469
|
-
}
|
|
18482
|
+
if (!url || !image.resources) {
|
|
18483
|
+
return;
|
|
18484
|
+
}
|
|
18485
|
+
const res = image.resources.get(url);
|
|
18486
|
+
if (res.state === 'loading' && isString(url)) {
|
|
18487
|
+
ResourceLoader.improveImageLoading(url);
|
|
18488
|
+
return;
|
|
18489
|
+
}
|
|
18490
|
+
else if (res.state !== 'success') {
|
|
18491
|
+
return;
|
|
18470
18492
|
}
|
|
18471
18493
|
const { context } = renderService.drawParams;
|
|
18472
18494
|
if (!context) {
|
|
@@ -19876,6 +19898,9 @@ class BaseSymbol {
|
|
|
19876
19898
|
bounds.y2 = size[1] / 2;
|
|
19877
19899
|
}
|
|
19878
19900
|
}
|
|
19901
|
+
parseSize(size) {
|
|
19902
|
+
return isNumber(size) ? size : Math.min(size[0], size[1]);
|
|
19903
|
+
}
|
|
19879
19904
|
}
|
|
19880
19905
|
|
|
19881
19906
|
function circle(ctx, r, x, y, z) {
|
|
@@ -19894,15 +19919,15 @@ class CircleSymbol extends BaseSymbol {
|
|
|
19894
19919
|
this.pathStr = 'M0.5,0A0.5,0.5,0,1,1,-0.5,0A0.5,0.5,0,1,1,0.5,0';
|
|
19895
19920
|
}
|
|
19896
19921
|
draw(ctx, size, x, y, z) {
|
|
19897
|
-
const r = size / 2;
|
|
19922
|
+
const r = this.parseSize(size) / 2;
|
|
19898
19923
|
return circle(ctx, r, x, y, z);
|
|
19899
19924
|
}
|
|
19900
19925
|
drawOffset(ctx, size, x, y, offset, z) {
|
|
19901
|
-
const r = size / 2 + offset;
|
|
19926
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
19902
19927
|
return circle(ctx, r, x, y, z);
|
|
19903
19928
|
}
|
|
19904
19929
|
drawToSvgPath(size, x, y, z) {
|
|
19905
|
-
const r = size / 2;
|
|
19930
|
+
const r = this.parseSize(size) / 2;
|
|
19906
19931
|
return `M ${x - r}, ${y} a ${r},${r} 0 1,0 ${r * 2},0 a ${r},${r} 0 1,0 -${r * 2},0`;
|
|
19907
19932
|
}
|
|
19908
19933
|
}
|
|
@@ -19947,11 +19972,11 @@ class CrossSymbol extends BaseSymbol {
|
|
|
19947
19972
|
this.pathStr = 'M-0.5,-0.2L-0.5,0.2L-0.2,0.2L-0.2,0.5L0.2,0.5L0.2,0.2L0.5,0.2L0.5,-0.2L0.2,-0.2L0.2,-0.5L-0.2,-0.5L-0.2,-0.2Z';
|
|
19948
19973
|
}
|
|
19949
19974
|
draw(ctx, size, x, y, z) {
|
|
19950
|
-
const r = size / 6;
|
|
19975
|
+
const r = this.parseSize(size) / 6;
|
|
19951
19976
|
return cross(ctx, r, x, y, z);
|
|
19952
19977
|
}
|
|
19953
19978
|
drawOffset(ctx, size, x, y, offset, z) {
|
|
19954
|
-
const r = size / 6;
|
|
19979
|
+
const r = this.parseSize(size) / 6;
|
|
19955
19980
|
return crossOffset(ctx, r, x, y, offset, z);
|
|
19956
19981
|
}
|
|
19957
19982
|
}
|
|
@@ -19972,15 +19997,15 @@ class DiamondSymbol extends BaseSymbol {
|
|
|
19972
19997
|
this.pathStr = 'M-0.5,0L0,-0.5L0.5,0L0,0.5Z';
|
|
19973
19998
|
}
|
|
19974
19999
|
draw(ctx, size, x, y, z) {
|
|
19975
|
-
const r = size / 2;
|
|
20000
|
+
const r = this.parseSize(size) / 2;
|
|
19976
20001
|
return diamond(ctx, r, x, y, z);
|
|
19977
20002
|
}
|
|
19978
20003
|
drawFitDir(ctx, size, x, y, z) {
|
|
19979
|
-
const r = size / 2;
|
|
20004
|
+
const r = this.parseSize(size) / 2;
|
|
19980
20005
|
return diamond(ctx, r, x, y, z);
|
|
19981
20006
|
}
|
|
19982
20007
|
drawOffset(ctx, size, x, y, offset, z) {
|
|
19983
|
-
const r = size / 2 + offset;
|
|
20008
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
19984
20009
|
return diamond(ctx, r, x, y, z);
|
|
19985
20010
|
}
|
|
19986
20011
|
}
|
|
@@ -19998,11 +20023,11 @@ class SquareSymbol extends BaseSymbol {
|
|
|
19998
20023
|
this.pathStr = 'M-0.5,-0.5h1v1h-1Z';
|
|
19999
20024
|
}
|
|
20000
20025
|
draw(ctx, size, x, y) {
|
|
20001
|
-
const r = size / 2;
|
|
20026
|
+
const r = this.parseSize(size) / 2;
|
|
20002
20027
|
return square(ctx, r, x, y);
|
|
20003
20028
|
}
|
|
20004
20029
|
drawOffset(ctx, size, x, y, offset) {
|
|
20005
|
-
const r = size / 2 + offset;
|
|
20030
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20006
20031
|
return square(ctx, r, x, y);
|
|
20007
20032
|
}
|
|
20008
20033
|
}
|
|
@@ -20022,11 +20047,11 @@ class TriangleUpSymbol extends BaseSymbol {
|
|
|
20022
20047
|
this.pathStr = 'M0.5,0.5 L-0.5,0.5 L0,-0.5 Z';
|
|
20023
20048
|
}
|
|
20024
20049
|
draw(ctx, size, x, y) {
|
|
20025
|
-
const r = size / 2;
|
|
20050
|
+
const r = this.parseSize(size) / 2;
|
|
20026
20051
|
return trianglUpOffset(ctx, r, x, y);
|
|
20027
20052
|
}
|
|
20028
20053
|
drawOffset(ctx, size, x, y, offset) {
|
|
20029
|
-
const r = size / 2;
|
|
20054
|
+
const r = this.parseSize(size) / 2;
|
|
20030
20055
|
return trianglUpOffset(ctx, r, x, y, offset);
|
|
20031
20056
|
}
|
|
20032
20057
|
}
|
|
@@ -20065,11 +20090,11 @@ class StarSymbol extends BaseSymbol {
|
|
|
20065
20090
|
this.pathStr = 'M0 -1L0.22451398828979266 -0.3090169943749474L0.9510565162951535 -0.30901699437494745L0.3632712640026804 0.1180339887498948L0.5877852522924732 0.8090169943749473L8.326672684688674e-17 0.3819660112501051L-0.587785252292473 0.8090169943749476L-0.3632712640026804 0.11803398874989487L-0.9510565162951536 -0.30901699437494723L-0.22451398828979274 -0.30901699437494734Z';
|
|
20066
20091
|
}
|
|
20067
20092
|
draw(ctx, size, transX, transY) {
|
|
20068
|
-
const r = size / 2;
|
|
20093
|
+
const r = this.parseSize(size) / 2;
|
|
20069
20094
|
return star(ctx, r, transX, transY);
|
|
20070
20095
|
}
|
|
20071
20096
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20072
|
-
const r = size / 2 + offset;
|
|
20097
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20073
20098
|
return star(ctx, r, transX, transY);
|
|
20074
20099
|
}
|
|
20075
20100
|
}
|
|
@@ -20098,11 +20123,11 @@ class ArrowSymbol extends BaseSymbol {
|
|
|
20098
20123
|
this.pathStr = 'M-0.07142857142857142,0.5L0.07142857142857142,0.5L0.07142857142857142,-0.0625L0.2,-0.0625L0,-0.5L-0.2,-0.0625L-0.07142857142857142,-0.0625Z';
|
|
20099
20124
|
}
|
|
20100
20125
|
draw(ctx, size, transX, transY) {
|
|
20101
|
-
const r = size / 2;
|
|
20126
|
+
const r = this.parseSize(size) / 2;
|
|
20102
20127
|
return arrow(ctx, r, transX, transY);
|
|
20103
20128
|
}
|
|
20104
20129
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20105
|
-
const r = size / 2 + offset;
|
|
20130
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20106
20131
|
return arrow(ctx, r, transX, transY);
|
|
20107
20132
|
}
|
|
20108
20133
|
}
|
|
@@ -20123,11 +20148,11 @@ class WedgeSymbol extends BaseSymbol {
|
|
|
20123
20148
|
this.pathStr = 'M0,-0.5773502691896257L-0.125,0.28867513459481287L0.125,0.28867513459481287Z';
|
|
20124
20149
|
}
|
|
20125
20150
|
draw(ctx, size, transX, transY) {
|
|
20126
|
-
const r = size / 2;
|
|
20151
|
+
const r = this.parseSize(size) / 2;
|
|
20127
20152
|
return wedge(ctx, r, transX, transY);
|
|
20128
20153
|
}
|
|
20129
20154
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20130
|
-
const r = size / 2 + offset;
|
|
20155
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20131
20156
|
return wedge(ctx, r, transX, transY);
|
|
20132
20157
|
}
|
|
20133
20158
|
}
|
|
@@ -20145,11 +20170,11 @@ class StrokeSymbol extends BaseSymbol {
|
|
|
20145
20170
|
this.pathStr = '';
|
|
20146
20171
|
}
|
|
20147
20172
|
draw(ctx, size, transX, transY) {
|
|
20148
|
-
const r = size / 2;
|
|
20173
|
+
const r = this.parseSize(size) / 2;
|
|
20149
20174
|
return stroke(ctx, r, transX, transY);
|
|
20150
20175
|
}
|
|
20151
20176
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20152
|
-
const r = size / 2 + offset;
|
|
20177
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20153
20178
|
return stroke(ctx, r, transX, transY);
|
|
20154
20179
|
}
|
|
20155
20180
|
}
|
|
@@ -20184,11 +20209,11 @@ class WyeSymbol extends BaseSymbol {
|
|
|
20184
20209
|
this.pathStr = 'M0.25 0.14433756729740646L0.25 0.6443375672974064L-0.25 0.6443375672974064L-0.25 0.14433756729740643L-0.6830127018922193 -0.10566243270259357L-0.4330127018922193 -0.5386751345948129L0 -0.28867513459481287L0.4330127018922193 -0.5386751345948129L0.6830127018922193 -0.10566243270259357Z';
|
|
20185
20210
|
}
|
|
20186
20211
|
draw(ctx, size, transX, transY) {
|
|
20187
|
-
const r = size / 2;
|
|
20212
|
+
const r = this.parseSize(size) / 2;
|
|
20188
20213
|
return wye(ctx, r, transX, transY);
|
|
20189
20214
|
}
|
|
20190
20215
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20191
|
-
const r = size / 2 + offset;
|
|
20216
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20192
20217
|
return wye(ctx, r, transX, transY);
|
|
20193
20218
|
}
|
|
20194
20219
|
}
|
|
@@ -20208,11 +20233,11 @@ class TriangleLeftSymbol extends BaseSymbol {
|
|
|
20208
20233
|
this.pathStr = 'M-0.5,0 L0.5,0.5 L0.5,-0.5 Z';
|
|
20209
20234
|
}
|
|
20210
20235
|
draw(ctx, size, x, y) {
|
|
20211
|
-
const r = size / 2;
|
|
20236
|
+
const r = this.parseSize(size) / 2;
|
|
20212
20237
|
return trianglLeftOffset(ctx, r, x, y, 0);
|
|
20213
20238
|
}
|
|
20214
20239
|
drawOffset(ctx, size, x, y, offset) {
|
|
20215
|
-
const r = size / 2;
|
|
20240
|
+
const r = this.parseSize(size) / 2;
|
|
20216
20241
|
return trianglLeftOffset(ctx, r, x, y, offset);
|
|
20217
20242
|
}
|
|
20218
20243
|
}
|
|
@@ -20232,11 +20257,11 @@ class TriangleRightSymbol extends BaseSymbol {
|
|
|
20232
20257
|
this.pathStr = 'M-0.5,0.5 L0.5,0 L-0.5,-0.5 Z';
|
|
20233
20258
|
}
|
|
20234
20259
|
draw(ctx, size, x, y) {
|
|
20235
|
-
const r = size / 2;
|
|
20260
|
+
const r = this.parseSize(size) / 2;
|
|
20236
20261
|
return trianglRightOffset(ctx, r, x, y);
|
|
20237
20262
|
}
|
|
20238
20263
|
drawOffset(ctx, size, x, y, offset) {
|
|
20239
|
-
const r = size / 2;
|
|
20264
|
+
const r = this.parseSize(size) / 2;
|
|
20240
20265
|
return trianglRightOffset(ctx, r, x, y, offset);
|
|
20241
20266
|
}
|
|
20242
20267
|
}
|
|
@@ -20256,11 +20281,11 @@ class TriangleDownSymbol extends BaseSymbol {
|
|
|
20256
20281
|
this.pathStr = 'M-0.5,-0.5 L0.5,-0.5 L0,0.5 Z';
|
|
20257
20282
|
}
|
|
20258
20283
|
draw(ctx, size, x, y) {
|
|
20259
|
-
const r = size / 2;
|
|
20284
|
+
const r = this.parseSize(size) / 2;
|
|
20260
20285
|
return trianglDownOffset(ctx, r, x, y);
|
|
20261
20286
|
}
|
|
20262
20287
|
drawOffset(ctx, size, x, y, offset) {
|
|
20263
|
-
const r = size / 2;
|
|
20288
|
+
const r = this.parseSize(size) / 2;
|
|
20264
20289
|
return trianglDownOffset(ctx, r, x, y, offset);
|
|
20265
20290
|
}
|
|
20266
20291
|
}
|
|
@@ -20282,11 +20307,11 @@ class ThinTriangleSymbol extends BaseSymbol {
|
|
|
20282
20307
|
this.pathStr = 'M0,-0.5773502691896257L-0.5,0.28867513459481287L0.5,0.28867513459481287Z';
|
|
20283
20308
|
}
|
|
20284
20309
|
draw(ctx, size, x, y) {
|
|
20285
|
-
const r = size / 2 / sqrt3;
|
|
20310
|
+
const r = this.parseSize(size) / 2 / sqrt3;
|
|
20286
20311
|
return thinTriangle(ctx, r, x, y);
|
|
20287
20312
|
}
|
|
20288
20313
|
drawOffset(ctx, size, x, y, offset) {
|
|
20289
|
-
const r = size / 2 / sqrt3 + offset;
|
|
20314
|
+
const r = this.parseSize(size) / 2 / sqrt3 + offset;
|
|
20290
20315
|
return thinTriangle(ctx, r, x, y);
|
|
20291
20316
|
}
|
|
20292
20317
|
}
|
|
@@ -20306,11 +20331,11 @@ class Arrow2LeftSymbol extends BaseSymbol {
|
|
|
20306
20331
|
this.pathStr = 'M 0.25 -0.5 L -0.25 0 l 0.25 0.5';
|
|
20307
20332
|
}
|
|
20308
20333
|
draw(ctx, size, transX, transY) {
|
|
20309
|
-
const r = size / 4;
|
|
20334
|
+
const r = this.parseSize(size) / 4;
|
|
20310
20335
|
return arrow2Left(ctx, r, transX, transY);
|
|
20311
20336
|
}
|
|
20312
20337
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20313
|
-
const r = size / 4 + offset;
|
|
20338
|
+
const r = this.parseSize(size) / 4 + offset;
|
|
20314
20339
|
return arrow2Left(ctx, r, transX, transY);
|
|
20315
20340
|
}
|
|
20316
20341
|
}
|
|
@@ -20330,11 +20355,11 @@ class Arrow2RightSymbol extends BaseSymbol {
|
|
|
20330
20355
|
this.pathStr = 'M -0.25 -0.5 l 0.25 0 l -0.25 0.5';
|
|
20331
20356
|
}
|
|
20332
20357
|
draw(ctx, size, transX, transY) {
|
|
20333
|
-
const r = size / 4;
|
|
20358
|
+
const r = this.parseSize(size) / 4;
|
|
20334
20359
|
return arrow2Right(ctx, r, transX, transY);
|
|
20335
20360
|
}
|
|
20336
20361
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20337
|
-
const r = size / 4 + offset;
|
|
20362
|
+
const r = this.parseSize(size) / 4 + offset;
|
|
20338
20363
|
return arrow2Right(ctx, r, transX, transY);
|
|
20339
20364
|
}
|
|
20340
20365
|
}
|
|
@@ -20354,11 +20379,11 @@ class Arrow2UpSymbol extends BaseSymbol {
|
|
|
20354
20379
|
this.pathStr = 'M -0.5 0.25 L 0 -0.25 l 0.5 0.25';
|
|
20355
20380
|
}
|
|
20356
20381
|
draw(ctx, size, transX, transY) {
|
|
20357
|
-
const r = size / 4;
|
|
20382
|
+
const r = this.parseSize(size) / 4;
|
|
20358
20383
|
return arrow2Up(ctx, r, transX, transY);
|
|
20359
20384
|
}
|
|
20360
20385
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20361
|
-
const r = size / 4 + offset;
|
|
20386
|
+
const r = this.parseSize(size) / 4 + offset;
|
|
20362
20387
|
return arrow2Up(ctx, r, transX, transY);
|
|
20363
20388
|
}
|
|
20364
20389
|
}
|
|
@@ -20378,11 +20403,11 @@ class Arrow2DownSymbol extends BaseSymbol {
|
|
|
20378
20403
|
this.pathStr = 'M -0.5 -0.25 L 0 0.25 l 0.5 -0.25';
|
|
20379
20404
|
}
|
|
20380
20405
|
draw(ctx, size, transX, transY) {
|
|
20381
|
-
const r = size / 4;
|
|
20406
|
+
const r = this.parseSize(size) / 4;
|
|
20382
20407
|
return arrow2Down(ctx, r, transX, transY);
|
|
20383
20408
|
}
|
|
20384
20409
|
drawOffset(ctx, size, transX, transY, offset) {
|
|
20385
|
-
const r = size / 4 + offset;
|
|
20410
|
+
const r = this.parseSize(size) / 4 + offset;
|
|
20386
20411
|
return arrow2Down(ctx, r, transX, transY);
|
|
20387
20412
|
}
|
|
20388
20413
|
}
|
|
@@ -20400,15 +20425,15 @@ class LineVSymbol extends BaseSymbol {
|
|
|
20400
20425
|
this.pathStr = 'M0,-0.5L0,0.5';
|
|
20401
20426
|
}
|
|
20402
20427
|
draw(ctx, size, x, y, z) {
|
|
20403
|
-
const r = size / 2;
|
|
20428
|
+
const r = this.parseSize(size) / 2;
|
|
20404
20429
|
return lineV(ctx, r, x, y);
|
|
20405
20430
|
}
|
|
20406
20431
|
drawOffset(ctx, size, x, y, offset, z) {
|
|
20407
|
-
const r = size / 2 + offset;
|
|
20432
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20408
20433
|
return lineV(ctx, r, x, y);
|
|
20409
20434
|
}
|
|
20410
20435
|
drawToSvgPath(size, x, y, z) {
|
|
20411
|
-
const r = size / 2;
|
|
20436
|
+
const r = this.parseSize(size) / 2;
|
|
20412
20437
|
return `M ${x}, ${y - r} L ${x},${y + r}`;
|
|
20413
20438
|
}
|
|
20414
20439
|
}
|
|
@@ -20426,15 +20451,15 @@ class LineHSymbol extends BaseSymbol {
|
|
|
20426
20451
|
this.pathStr = 'M-0.5,0L0.5,0';
|
|
20427
20452
|
}
|
|
20428
20453
|
draw(ctx, size, x, y, z) {
|
|
20429
|
-
const r = size / 2;
|
|
20454
|
+
const r = this.parseSize(size) / 2;
|
|
20430
20455
|
return lineH(ctx, r, x, y);
|
|
20431
20456
|
}
|
|
20432
20457
|
drawOffset(ctx, size, x, y, offset, z) {
|
|
20433
|
-
const r = size / 2 + offset;
|
|
20458
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20434
20459
|
return lineH(ctx, r, x, y);
|
|
20435
20460
|
}
|
|
20436
20461
|
drawToSvgPath(size, x, y, z) {
|
|
20437
|
-
const r = size / 2;
|
|
20462
|
+
const r = this.parseSize(size) / 2;
|
|
20438
20463
|
return `M ${x - r}, ${y} L ${x + r},${y}`;
|
|
20439
20464
|
}
|
|
20440
20465
|
}
|
|
@@ -20454,15 +20479,15 @@ class CloseSymbol extends BaseSymbol {
|
|
|
20454
20479
|
this.pathStr = 'M-0.5,-0.5L0.5,0.5,M0.5,-0.5L-0.5,0.5';
|
|
20455
20480
|
}
|
|
20456
20481
|
draw(ctx, size, x, y, z) {
|
|
20457
|
-
const r = size / 2;
|
|
20482
|
+
const r = this.parseSize(size) / 2;
|
|
20458
20483
|
return close(ctx, r, x, y);
|
|
20459
20484
|
}
|
|
20460
20485
|
drawOffset(ctx, size, x, y, offset, z) {
|
|
20461
|
-
const r = size / 2 + offset;
|
|
20486
|
+
const r = this.parseSize(size) / 2 + offset;
|
|
20462
20487
|
return close(ctx, r, x, y);
|
|
20463
20488
|
}
|
|
20464
20489
|
drawToSvgPath(size, x, y, z) {
|
|
20465
|
-
const r = size / 2;
|
|
20490
|
+
const r = this.parseSize(size) / 2;
|
|
20466
20491
|
return `M ${x - r}, ${y - r} L ${x + r},${y + r} M ${x + r}, ${y - r} L ${x - r},${y + r}`;
|
|
20467
20492
|
}
|
|
20468
20493
|
}
|
|
@@ -20513,6 +20538,7 @@ class CustomSymbolClass {
|
|
|
20513
20538
|
this.isSvg = isSvg;
|
|
20514
20539
|
}
|
|
20515
20540
|
drawOffset(ctx, size, x, y, offset, z, cb) {
|
|
20541
|
+
size = this.parseSize(size);
|
|
20516
20542
|
if (this.isSvg) {
|
|
20517
20543
|
if (!this.svgCache) {
|
|
20518
20544
|
return false;
|
|
@@ -20528,9 +20554,14 @@ class CustomSymbolClass {
|
|
|
20528
20554
|
return false;
|
|
20529
20555
|
}
|
|
20530
20556
|
draw(ctx, size, x, y, z, cb) {
|
|
20557
|
+
size = this.parseSize(size);
|
|
20531
20558
|
return this.drawOffset(ctx, size, x, y, 0, z, cb);
|
|
20532
20559
|
}
|
|
20560
|
+
parseSize(size) {
|
|
20561
|
+
return isNumber(size) ? size : Math.min(size[0], size[1]);
|
|
20562
|
+
}
|
|
20533
20563
|
bounds(size, bounds) {
|
|
20564
|
+
size = this.parseSize(size);
|
|
20534
20565
|
if (this.isSvg) {
|
|
20535
20566
|
if (!this.svgCache) {
|
|
20536
20567
|
return;
|
|
@@ -21550,7 +21581,8 @@ class Paragraph {
|
|
|
21550
21581
|
left = 0;
|
|
21551
21582
|
baseline = 0;
|
|
21552
21583
|
}
|
|
21553
|
-
|
|
21584
|
+
const { lineWidth = 1 } = this.character;
|
|
21585
|
+
if (this.character.stroke && lineWidth) {
|
|
21554
21586
|
applyStrokeStyle(ctx, this.character);
|
|
21555
21587
|
ctx.strokeText(text, left, baseline);
|
|
21556
21588
|
}
|
|
@@ -24707,6 +24739,7 @@ class Stage extends Group {
|
|
|
24707
24739
|
constructor(params = {}) {
|
|
24708
24740
|
var _a;
|
|
24709
24741
|
super({});
|
|
24742
|
+
this.tickedBeforeRender = true;
|
|
24710
24743
|
this._onVisibleChange = (visible) => {
|
|
24711
24744
|
if (this._skipRender < 0) {
|
|
24712
24745
|
return;
|
|
@@ -24733,6 +24766,15 @@ class Stage extends Group {
|
|
|
24733
24766
|
this._afterRender && this._afterRender(stage);
|
|
24734
24767
|
this._afterNextRenderCbs && this._afterNextRenderCbs.forEach(cb => cb(stage));
|
|
24735
24768
|
this._afterNextRenderCbs = null;
|
|
24769
|
+
this.tickedBeforeRender = false;
|
|
24770
|
+
};
|
|
24771
|
+
this.afterTickCb = () => {
|
|
24772
|
+
var _a;
|
|
24773
|
+
this.tickedBeforeRender = true;
|
|
24774
|
+
if (((_a = this.params.optimize) === null || _a === void 0 ? void 0 : _a.tickRenderMode) === 'performance') ;
|
|
24775
|
+
else {
|
|
24776
|
+
this.state !== 'rendering' && this.render();
|
|
24777
|
+
}
|
|
24736
24778
|
};
|
|
24737
24779
|
this.params = params;
|
|
24738
24780
|
this.theme = new Theme();
|
|
@@ -24800,6 +24842,7 @@ class Stage extends Group {
|
|
|
24800
24842
|
if (params.background && isString(this._background) && this._background.includes('/')) {
|
|
24801
24843
|
this.setAttributes({ background: this._background });
|
|
24802
24844
|
}
|
|
24845
|
+
this.ticker.on('afterTick', this.afterTickCb);
|
|
24803
24846
|
}
|
|
24804
24847
|
pauseRender(sr = -1) {
|
|
24805
24848
|
this._skipRender = sr;
|
|
@@ -25113,6 +25156,9 @@ class Stage extends Group {
|
|
|
25113
25156
|
this.timeline.resume();
|
|
25114
25157
|
const state = this.state;
|
|
25115
25158
|
this.state = 'rendering';
|
|
25159
|
+
if (!this.tickedBeforeRender) {
|
|
25160
|
+
this.ticker.trySyncTickStatus();
|
|
25161
|
+
}
|
|
25116
25162
|
this.layerService.prepareStageLayer(this);
|
|
25117
25163
|
if (!this._skipRender) {
|
|
25118
25164
|
this.lastRenderparams = params;
|
|
@@ -25310,6 +25356,7 @@ class Stage extends Group {
|
|
|
25310
25356
|
}
|
|
25311
25357
|
this.window.release();
|
|
25312
25358
|
this.ticker.remTimeline(this.timeline);
|
|
25359
|
+
this.ticker.removeListener('afterTick', this.afterTickCb);
|
|
25313
25360
|
this.renderService.renderTreeRoots = [];
|
|
25314
25361
|
}
|
|
25315
25362
|
setStage(stage) {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { EventEmitter } from '@visactor/vutils';
|
|
1
2
|
import type { ITickHandler, ITimeline, ITicker } from '../../interface';
|
|
2
3
|
import type { TickerMode } from './type';
|
|
3
4
|
import { STATUS } from './type';
|
|
4
|
-
export declare class DefaultTicker implements ITicker {
|
|
5
|
+
export declare class DefaultTicker extends EventEmitter implements ITicker {
|
|
5
6
|
protected interval: number;
|
|
6
7
|
protected tickerHandler: ITickHandler;
|
|
7
8
|
protected _mode: TickerMode;
|
|
@@ -32,5 +33,6 @@ export declare class DefaultTicker implements ITicker {
|
|
|
32
33
|
protected handleTick: (handler: ITickHandler, params?: {
|
|
33
34
|
once?: boolean;
|
|
34
35
|
}) => void;
|
|
35
|
-
protected _handlerTick: (
|
|
36
|
+
protected _handlerTick: () => void;
|
|
37
|
+
trySyncTickStatus(): void;
|
|
36
38
|
}
|