@leafer-game/worker 2.1.4 → 2.1.6
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/worker.esm.min.js.map +1 -1
- package/dist/worker.js +28 -192
- package/dist/worker.min.cjs.map +1 -1
- package/dist/worker.min.js +1 -1
- package/dist/worker.min.js.map +1 -1
- package/dist/worker.module.js +28 -193
- package/dist/worker.module.min.js +1 -1
- package/dist/worker.module.min.js.map +1 -1
- package/package.json +12 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.esm.min.js","sources":["../../../../../../../src/leafer/packages/interface/src/path/IPathCommand.ts"],"sourcesContent":["import { IPointData } from '../math/IMath'\nimport { IWindingRule } from '../canvas/ICanvas'\n\ntype Command = number\ntype x = number\ntype y = number\ntype x1 = number\ntype y1 = number\ntype x2 = number\ntype y2 = number\ntype radiusX = number\ntype radiusY = number\ntype xAxisRotation = number\ntype largeArcFlag = number\ntype sweepFlag = number\n\n\nexport type MCommandData = [Command, x, y]\nexport type HCommandData = [Command, x]\nexport type VCommandData = [Command, y]\nexport type LCommandData = MCommandData\n\nexport type CCommandData = [Command, x1, y1, x2, y2, x, y]\nexport type SCommandData = [Command, x2, y2, x, y]\n\nexport type QCommandData = [Command, x1, y1, x, y]\nexport type TCommandData = [Command, x, y]\n\nexport type ZCommandData = [Command]\n\nexport type ACommandData = [Command, radiusX, radiusY, xAxisRotation, largeArcFlag, sweepFlag, x, y]\n\n\n// 非svg标准的canvas绘图命令\ntype width = number\ntype height = number\ntype rotation = number\ntype startAngle = number\ntype endAngle = number\ntype anticlockwise = boolean\ntype cornerRadius = number | number[]\ntype radius = number\n\nexport type RectCommandData = [Command, x, y, width, height]\nexport type RoundRectCommandData = [Command, x, y, width, height, cornerRadius]\nexport type EllipseCommandData = [Command, x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise]\nexport type ArcCommandData = [Command, x, y, radius, startAngle, endAngle, anticlockwise]\nexport type ArcToCommandData = [Command, x1, y1, x2, y2, radius]\n\n\nexport type CanvasPathCommand = 1 | 2 | 5 | 7 | 11 // M | L | C | Q | Z canvas可以绘制的命令\n\nexport type IPathCommandData = number[] // ...(MCommandData | LCommandData | CCommandData | QCommandData | ZCommandData)\n\nexport interface IPathCommandDataWithRadius {\n data: IPathCommandData\n radius: number[]\n}\n\nexport interface IPathCommandDataWithWindingRule {\n data: IPathCommandData\n windingRule?: IWindingRule\n}\n\n// 路径命令对象\nexport interface MoveToCommandObject {\n name: 'M'\n x: number\n y: number\n}\nexport interface LineToCommandObject {\n name: 'L'\n x: number\n y: number\n}\n\nexport interface BezierCurveToCommandObject {\n name: 'C'\n x1: number\n y1: number\n x2: number\n y2: number\n x: number\n y: number\n}\n\nexport interface QuadraticCurveToCommandObject {\n name: 'Q'\n x1: number\n y1: number\n x: number\n y: number\n}\n\nexport interface ClosePathCommandObject {\n name: 'Z'\n}\n\nexport type IPathCommandObject = MoveToCommandObject | LineToCommandObject | BezierCurveToCommandObject | QuadraticCurveToCommandObject | ClosePathCommandObject // M | L | C | Q | Z canvas可以绘制的命令\n\n\n// 可视化路径节点\n\nexport interface IPathCommandNodeBase {\n name: 'M^' | 'L^' | 'C^' | 'Z^'\n x: number\n y: number\n r?: number // 圆角半径\n a?: IPointData // 第一个手柄,连接上一个节点\n b?: IPointData // 第二个手柄,连接下一个节点\n ab?: PathNodeHandleType // 手柄类型\n}\n\nexport interface MoveToCommandNode extends IPathCommandNodeBase {\n name: 'M^'\n}\nexport interface LineToCommandNode extends IPathCommandNodeBase {\n name: 'L^'\n}\n\nexport interface BezierCurveToCommandNode extends IPathCommandNodeBase {\n name: 'C^'\n}\n\nexport interface ClosePathCommandNode {\n name: 'Z^'\n x?: number\n y?: number\n r?: number // 圆角半径\n a?: IPointData\n b?: IPointData\n ab?: PathNodeHandleType\n}\n\nexport type IPathCommandNode = MoveToCommandNode | LineToCommandNode | BezierCurveToCommandNode | ClosePathCommandNode // M | L | C | Z 路径节点命令(适合可视化编辑)\n\nexport enum PathNodeHandleType { // 手柄类型\n none = 1, // 无手柄\n free = 2, // 每个手柄自由控制\n mirrorAngle = 3, // 仅镜像角度\n mirror = 4, // 镜像角度和长度\n}\n\nexport type PathNodeHandleName = 'a' | 'b' // 手柄名称\n\nexport interface IPathNodeBase {\n pathNode: IPathCommandNode\n}"],"names":["PathNodeHandleType"],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker.esm.min.js","sources":["../../../../../../../src/leafer/packages/interface/src/path/IPathCommand.ts"],"sourcesContent":["import { IPointData } from '../math/IMath'\nimport { IWindingRule } from '../canvas/ICanvas'\n\ntype Command = number\ntype x = number\ntype y = number\ntype x1 = number\ntype y1 = number\ntype x2 = number\ntype y2 = number\ntype radiusX = number\ntype radiusY = number\ntype xAxisRotation = number\ntype largeArcFlag = number\ntype sweepFlag = number\n\n\nexport type MCommandData = [Command, x, y]\nexport type HCommandData = [Command, x]\nexport type VCommandData = [Command, y]\nexport type LCommandData = MCommandData\n\nexport type CCommandData = [Command, x1, y1, x2, y2, x, y]\nexport type SCommandData = [Command, x2, y2, x, y]\n\nexport type QCommandData = [Command, x1, y1, x, y]\nexport type TCommandData = [Command, x, y]\n\nexport type ZCommandData = [Command]\n\nexport type ACommandData = [Command, radiusX, radiusY, xAxisRotation, largeArcFlag, sweepFlag, x, y]\n\n\n// 非svg标准的canvas绘图命令\ntype width = number\ntype height = number\ntype rotation = number\ntype startAngle = number\ntype endAngle = number\ntype anticlockwise = boolean\ntype cornerRadius = number | number[]\ntype radius = number\n\nexport type RectCommandData = [Command, x, y, width, height]\nexport type RoundRectCommandData = [Command, x, y, width, height, cornerRadius]\nexport type EllipseCommandData = [Command, x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise]\nexport type ArcCommandData = [Command, x, y, radius, startAngle, endAngle, anticlockwise]\nexport type ArcToCommandData = [Command, x1, y1, x2, y2, radius]\n\n\nexport type CanvasPathCommand = 1 | 2 | 5 | 7 | 11 // M | L | C | Q | Z canvas可以绘制的命令\n\nexport type IPathCommandData = number[] // ...(MCommandData | LCommandData | CCommandData | QCommandData | ZCommandData)\n\nexport interface IPathCommandDataWithRadius {\n data: IPathCommandData\n radius: number[]\n}\n\nexport interface IPathCommandDataWithWindingRule {\n data: IPathCommandData\n windingRule?: IWindingRule\n}\n\n// 路径命令对象\nexport interface MoveToCommandObject {\n name: 'M'\n x: number\n y: number\n pressure?: number // 压感\n}\nexport interface LineToCommandObject {\n name: 'L'\n x: number\n y: number\n pressure?: number\n}\n\nexport interface BezierCurveToCommandObject {\n name: 'C'\n x1: number\n y1: number\n x2: number\n y2: number\n x: number\n y: number\n pressure?: number\n}\n\nexport interface QuadraticCurveToCommandObject {\n name: 'Q'\n x1: number\n y1: number\n x: number\n y: number\n pressure?: number\n}\n\nexport interface ClosePathCommandObject {\n name: 'Z'\n}\n\nexport type IPathCommandObject = MoveToCommandObject | LineToCommandObject | BezierCurveToCommandObject | QuadraticCurveToCommandObject | ClosePathCommandObject // M | L | C | Q | Z canvas可以绘制的命令\n\n\n// 可视化路径节点\n\nexport interface IPathCommandNodeBase {\n name: 'M^' | 'L^' | 'C^' | 'Z^'\n x: number\n y: number\n r?: number // 圆角半径\n a?: IPointData // 第一个手柄,连接上一个节点\n b?: IPointData // 第二个手柄,连接下一个节点\n ab?: PathNodeHandleType // 手柄类型\n pressure?: number // 压感\n}\n\nexport interface MoveToCommandNode extends IPathCommandNodeBase {\n name: 'M^'\n}\nexport interface LineToCommandNode extends IPathCommandNodeBase {\n name: 'L^'\n}\n\nexport interface BezierCurveToCommandNode extends IPathCommandNodeBase {\n name: 'C^'\n}\n\nexport interface ClosePathCommandNode {\n name: 'Z^'\n x?: number\n y?: number\n r?: number // 圆角半径\n a?: IPointData\n b?: IPointData\n ab?: PathNodeHandleType\n}\n\nexport type IPathCommandNode = MoveToCommandNode | LineToCommandNode | BezierCurveToCommandNode | ClosePathCommandNode // M | L | C | Z 路径节点命令(适合可视化编辑)\n\nexport enum PathNodeHandleType { // 手柄类型\n none = 1, // 无手柄\n free = 2, // 每个手柄自由控制\n mirrorAngle = 3, // 仅镜像角度\n mirror = 4, // 镜像角度和长度\n}\n\nexport type PathNodeHandleName = 'a' | 'b' // 手柄名称\n\nexport interface IPathNodeBase {\n pathNode: IPathCommandNode\n}"],"names":["PathNodeHandleType"],"mappings":"gMA6IYA,GAAZ,SAAYA,GACRA,EAAAA,EAAA,KAAA,GAAA,OACAA,EAAAA,EAAA,KAAA,GAAA,OACAA,EAAAA,EAAA,YAAA,GAAA,cACAA,EAAAA,EAAA,OAAA,GAAA,QACH,CALD,CAAYA,IAAAA,EAAkB,CAAA"}
|
package/dist/worker.js
CHANGED
|
@@ -240,7 +240,7 @@ var LeaferUI = function(exports) {
|
|
|
240
240
|
RUNTIME: "runtime",
|
|
241
241
|
LEAF: "leaf",
|
|
242
242
|
TASK: "task",
|
|
243
|
-
|
|
243
|
+
CANVAS: "canvas",
|
|
244
244
|
IMAGE: "image",
|
|
245
245
|
types: {},
|
|
246
246
|
create(typeName) {
|
|
@@ -869,7 +869,7 @@ var LeaferUI = function(exports) {
|
|
|
869
869
|
return quick ? t.x === point.x && t.y === point.y : float$4(t.x) === float$4(point.x) && float$4(t.y) === float$4(point.y);
|
|
870
870
|
},
|
|
871
871
|
reset(t) {
|
|
872
|
-
|
|
872
|
+
t.x = t.y = 0;
|
|
873
873
|
}
|
|
874
874
|
};
|
|
875
875
|
const P$5 = PointHelper;
|
|
@@ -1073,6 +1073,7 @@ var LeaferUI = function(exports) {
|
|
|
1073
1073
|
}
|
|
1074
1074
|
reset() {
|
|
1075
1075
|
MatrixHelper.reset(this);
|
|
1076
|
+
return this;
|
|
1076
1077
|
}
|
|
1077
1078
|
}
|
|
1078
1079
|
const tempMatrix$2 = new Matrix;
|
|
@@ -2177,7 +2178,7 @@ var LeaferUI = function(exports) {
|
|
|
2177
2178
|
this.worldTransform = {};
|
|
2178
2179
|
if (!config) config = minSize;
|
|
2179
2180
|
this.manager = manager;
|
|
2180
|
-
this.innerId = IncrementId.create(IncrementId.
|
|
2181
|
+
this.innerId = IncrementId.create(IncrementId.CANVAS);
|
|
2181
2182
|
const {width: width, height: height, pixelRatio: pixelRatio} = config;
|
|
2182
2183
|
this.autoLayout = !width || !height;
|
|
2183
2184
|
this.size.pixelRatio = pixelRatio || Platform.devicePixelRatio;
|
|
@@ -2327,6 +2328,7 @@ var LeaferUI = function(exports) {
|
|
|
2327
2328
|
}
|
|
2328
2329
|
useGrayscaleAlpha(bounds) {
|
|
2329
2330
|
this.setTempPixelBounds(bounds, true, true);
|
|
2331
|
+
if (!tempPixelBounds.width || !tempPixelBounds.height) return;
|
|
2330
2332
|
let alpha, pixel;
|
|
2331
2333
|
const {context: context} = this, imageData = context.getImageData(tempPixelBounds.x, tempPixelBounds.y, tempPixelBounds.width, tempPixelBounds.height), {data: data} = imageData;
|
|
2332
2334
|
for (let i = 0, len = data.length; i < len; i += 4) {
|
|
@@ -3497,7 +3499,7 @@ var LeaferUI = function(exports) {
|
|
|
3497
3499
|
const {arcTo: arcTo} = PathCommandDataHelper;
|
|
3498
3500
|
const PathCorner = {
|
|
3499
3501
|
smooth(data, cornerRadius, _cornerSmoothing) {
|
|
3500
|
-
let command, lastCommand, commandLen;
|
|
3502
|
+
let command, lastCommand, commandLen, startXIndex, startYIndex, smoothLen;
|
|
3501
3503
|
let i = 0, x = 0, y = 0, startX = 0, startY = 0, secondX = 0, secondY = 0, lastX = 0, lastY = 0;
|
|
3502
3504
|
if (isArray(cornerRadius)) cornerRadius = cornerRadius[0] || 0;
|
|
3503
3505
|
const len = data.length, three = len === 9;
|
|
@@ -3506,6 +3508,11 @@ var LeaferUI = function(exports) {
|
|
|
3506
3508
|
command = data[i];
|
|
3507
3509
|
switch (command) {
|
|
3508
3510
|
case M$1:
|
|
3511
|
+
smoothLen = smooth.length;
|
|
3512
|
+
if (smoothLen && lastCommand !== Z$1) {
|
|
3513
|
+
smooth[startXIndex] = startX;
|
|
3514
|
+
smooth[startYIndex] = startY;
|
|
3515
|
+
}
|
|
3509
3516
|
startX = lastX = data[i + 1];
|
|
3510
3517
|
startY = lastY = data[i + 2];
|
|
3511
3518
|
i += 3;
|
|
@@ -3516,6 +3523,8 @@ var LeaferUI = function(exports) {
|
|
|
3516
3523
|
} else {
|
|
3517
3524
|
smooth.push(M$1, startX, startY);
|
|
3518
3525
|
}
|
|
3526
|
+
startXIndex = smoothLen + 1;
|
|
3527
|
+
startYIndex = smoothLen + 2;
|
|
3519
3528
|
break;
|
|
3520
3529
|
|
|
3521
3530
|
case L$2:
|
|
@@ -3554,8 +3563,8 @@ var LeaferUI = function(exports) {
|
|
|
3554
3563
|
lastCommand = command;
|
|
3555
3564
|
}
|
|
3556
3565
|
if (command !== Z$1) {
|
|
3557
|
-
smooth[
|
|
3558
|
-
smooth[
|
|
3566
|
+
smooth[startXIndex] = startX;
|
|
3567
|
+
smooth[startYIndex] = startY;
|
|
3559
3568
|
}
|
|
3560
3569
|
return smooth;
|
|
3561
3570
|
}
|
|
@@ -5207,6 +5216,7 @@ var LeaferUI = function(exports) {
|
|
|
5207
5216
|
this.renderChanged = true;
|
|
5208
5217
|
this.renderSpread || (this.renderSpread = 1);
|
|
5209
5218
|
this.boundsChanged = true;
|
|
5219
|
+
this.hitCanvasChanged = true;
|
|
5210
5220
|
}
|
|
5211
5221
|
scaleChange() {
|
|
5212
5222
|
this.scaleChanged = true;
|
|
@@ -6053,10 +6063,6 @@ var LeaferUI = function(exports) {
|
|
|
6053
6063
|
}
|
|
6054
6064
|
}
|
|
6055
6065
|
}
|
|
6056
|
-
set(_data, _isTemp) {}
|
|
6057
|
-
get(_name) {
|
|
6058
|
-
return undefined;
|
|
6059
|
-
}
|
|
6060
6066
|
setAttr(name, value) {
|
|
6061
6067
|
this[name] = value;
|
|
6062
6068
|
}
|
|
@@ -6073,37 +6079,10 @@ var LeaferUI = function(exports) {
|
|
|
6073
6079
|
toString(options) {
|
|
6074
6080
|
return JSON.stringify(this.toJSON(options));
|
|
6075
6081
|
}
|
|
6076
|
-
|
|
6077
|
-
|
|
6078
|
-
|
|
6079
|
-
__SVG(_data) {}
|
|
6080
|
-
toHTML() {
|
|
6081
|
-
return undefined;
|
|
6082
|
-
}
|
|
6083
|
-
__setAttr(_attrName, _newValue) {
|
|
6084
|
-
return true;
|
|
6085
|
-
}
|
|
6086
|
-
__getAttr(_attrName) {
|
|
6087
|
-
return undefined;
|
|
6088
|
-
}
|
|
6089
|
-
setProxyAttr(_attrName, _newValue) {}
|
|
6090
|
-
getProxyAttr(_attrName) {
|
|
6091
|
-
return undefined;
|
|
6092
|
-
}
|
|
6093
|
-
find(_condition, _options) {
|
|
6094
|
-
return undefined;
|
|
6095
|
-
}
|
|
6096
|
-
findTag(_tag) {
|
|
6097
|
-
return undefined;
|
|
6098
|
-
}
|
|
6099
|
-
findOne(_condition, _options) {
|
|
6100
|
-
return undefined;
|
|
6101
|
-
}
|
|
6102
|
-
findId(_id) {
|
|
6103
|
-
return undefined;
|
|
6082
|
+
scaleResize(scaleX, scaleY = scaleX, _noResize, _boundsType) {
|
|
6083
|
+
this.scaleX *= scaleX;
|
|
6084
|
+
this.scaleY *= scaleY;
|
|
6104
6085
|
}
|
|
6105
|
-
focus(_value) {}
|
|
6106
|
-
updateState() {}
|
|
6107
6086
|
updateLayout() {
|
|
6108
6087
|
this.__layout.update();
|
|
6109
6088
|
}
|
|
@@ -6119,27 +6098,6 @@ var LeaferUI = function(exports) {
|
|
|
6119
6098
|
__extraUpdate() {
|
|
6120
6099
|
if (this.leaferIsReady) this.leafer.layouter.addExtra(this);
|
|
6121
6100
|
}
|
|
6122
|
-
__updateWorldMatrix() {}
|
|
6123
|
-
__updateLocalMatrix() {}
|
|
6124
|
-
__updateWorldBounds() {}
|
|
6125
|
-
__updateLocalBounds() {}
|
|
6126
|
-
__updateLocalBoxBounds() {}
|
|
6127
|
-
__updateLocalStrokeBounds() {}
|
|
6128
|
-
__updateLocalRenderBounds() {}
|
|
6129
|
-
__updateBoxBounds(_secondLayout, _bounds) {}
|
|
6130
|
-
__updateContentBounds() {}
|
|
6131
|
-
__updateStrokeBounds(_bounds) {}
|
|
6132
|
-
__updateRenderBounds(_bounds) {}
|
|
6133
|
-
__updateAutoLayout() {}
|
|
6134
|
-
__updateFlowLayout() {}
|
|
6135
|
-
__updateNaturalSize() {}
|
|
6136
|
-
__updateStrokeSpread() {
|
|
6137
|
-
return 0;
|
|
6138
|
-
}
|
|
6139
|
-
__updateRenderSpread() {
|
|
6140
|
-
return 0;
|
|
6141
|
-
}
|
|
6142
|
-
__onUpdateSize() {}
|
|
6143
6101
|
__updateEraser(value) {
|
|
6144
6102
|
this.__hasEraser = value ? true : this.children.some(item => item.__.eraser);
|
|
6145
6103
|
}
|
|
@@ -6153,7 +6111,6 @@ var LeaferUI = function(exports) {
|
|
|
6153
6111
|
__updateMask(_value) {
|
|
6154
6112
|
this.__hasMask = this.children.some(item => item.__.mask && item.__.visible && item.__.opacity);
|
|
6155
6113
|
}
|
|
6156
|
-
__renderMask(_canvas, _options) {}
|
|
6157
6114
|
__getNowWorld(options) {
|
|
6158
6115
|
if (options.matrix) {
|
|
6159
6116
|
if (!this.__cameraWorld) this.__cameraWorld = {};
|
|
@@ -6309,76 +6266,12 @@ var LeaferUI = function(exports) {
|
|
|
6309
6266
|
flip(axis, transition) {
|
|
6310
6267
|
transform(this, getFlipTransform(this, axis), false, transition);
|
|
6311
6268
|
}
|
|
6312
|
-
scaleResize(scaleX, scaleY = scaleX, _noResize, _boundsType) {
|
|
6313
|
-
this.scaleX *= scaleX;
|
|
6314
|
-
this.scaleY *= scaleY;
|
|
6315
|
-
}
|
|
6316
|
-
__scaleResize(_scaleX, _scaleY) {}
|
|
6317
|
-
resizeWidth(_width) {}
|
|
6318
|
-
resizeHeight(_height) {}
|
|
6319
|
-
hit(_world, _hitRadius) {
|
|
6320
|
-
return true;
|
|
6321
|
-
}
|
|
6322
|
-
__hitWorld(_point, _forceHitFill) {
|
|
6323
|
-
return true;
|
|
6324
|
-
}
|
|
6325
|
-
__hit(_local, _forceHitFill) {
|
|
6326
|
-
return true;
|
|
6327
|
-
}
|
|
6328
|
-
__hitFill(_inner) {
|
|
6329
|
-
return true;
|
|
6330
|
-
}
|
|
6331
|
-
__hitStroke(_inner, _strokeWidth) {
|
|
6332
|
-
return true;
|
|
6333
|
-
}
|
|
6334
|
-
__hitPixel(_inner) {
|
|
6335
|
-
return true;
|
|
6336
|
-
}
|
|
6337
|
-
__drawHitPath(_canvas) {}
|
|
6338
|
-
__updateHitCanvas() {}
|
|
6339
|
-
__render(_canvas, _options) {}
|
|
6340
|
-
__drawFast(_canvas, _options) {}
|
|
6341
|
-
__draw(_canvas, _options, _originCanvas) {}
|
|
6342
|
-
__clip(_canvas, _options) {}
|
|
6343
|
-
__renderShape(_canvas, _options) {}
|
|
6344
|
-
__drawShape(_canvas, _options) {}
|
|
6345
|
-
__updateWorldOpacity() {}
|
|
6346
|
-
__updateChange() {}
|
|
6347
|
-
__drawPath(_canvas) {}
|
|
6348
|
-
__drawRenderPath(_canvas) {}
|
|
6349
|
-
__updatePath() {}
|
|
6350
|
-
__updateRenderPath(_updateCache) {}
|
|
6351
|
-
getMotionPathData() {
|
|
6352
|
-
return Plugin.need("path");
|
|
6353
|
-
}
|
|
6354
|
-
getMotionPoint(_motionDistance) {
|
|
6355
|
-
return Plugin.need("path");
|
|
6356
|
-
}
|
|
6357
|
-
getMotionTotal() {
|
|
6358
|
-
return 0;
|
|
6359
|
-
}
|
|
6360
|
-
__updateMotionPath() {}
|
|
6361
|
-
__runAnimation(_type, _complete) {}
|
|
6362
|
-
__updateSortChildren() {}
|
|
6363
|
-
add(_child, _index) {}
|
|
6364
6269
|
remove(_child, destroy) {
|
|
6365
6270
|
if (this.parent) this.parent.remove(this, destroy);
|
|
6366
6271
|
}
|
|
6367
6272
|
dropTo(parent, index, resize) {
|
|
6368
6273
|
drop(this, parent, index, resize);
|
|
6369
6274
|
}
|
|
6370
|
-
on(_type, _listener, _options) {}
|
|
6371
|
-
off(_type, _listener, _options) {}
|
|
6372
|
-
on_(_type, _listener, _bind, _options) {
|
|
6373
|
-
return undefined;
|
|
6374
|
-
}
|
|
6375
|
-
off_(_id) {}
|
|
6376
|
-
once(_type, _listener, _captureOrBind, _capture) {}
|
|
6377
|
-
emit(_type, _event, _capture) {}
|
|
6378
|
-
emitEvent(_event, _capture) {}
|
|
6379
|
-
hasEvent(_type, _capture) {
|
|
6380
|
-
return false;
|
|
6381
|
-
}
|
|
6382
6275
|
static changeAttr(attrName, defaultValue, fn) {
|
|
6383
6276
|
fn ? this.addAttr(attrName, defaultValue, fn) : defineDataProcessor(this.prototype, attrName, defaultValue);
|
|
6384
6277
|
}
|
|
@@ -6674,7 +6567,7 @@ var LeaferUI = function(exports) {
|
|
|
6674
6567
|
this.levelMap = null;
|
|
6675
6568
|
}
|
|
6676
6569
|
}
|
|
6677
|
-
const version = "2.1.
|
|
6570
|
+
const version = "2.1.6";
|
|
6678
6571
|
class LeaferCanvas extends LeaferCanvasBase {
|
|
6679
6572
|
get allowBackgroundColor() {
|
|
6680
6573
|
return true;
|
|
@@ -8080,17 +7973,12 @@ var LeaferUI = function(exports) {
|
|
|
8080
7973
|
if (!path) this.__drawPathByBox(pen);
|
|
8081
7974
|
return pen;
|
|
8082
7975
|
}
|
|
8083
|
-
reset(_data) {}
|
|
8084
7976
|
set(data, _transition) {
|
|
8085
7977
|
if (data) Object.assign(this, data);
|
|
8086
7978
|
}
|
|
8087
7979
|
get(name) {
|
|
8088
7980
|
return isString(name) ? this.__.__getInput(name) : this.__.__getInputData(name);
|
|
8089
7981
|
}
|
|
8090
|
-
createProxyData() {
|
|
8091
|
-
return undefined;
|
|
8092
|
-
}
|
|
8093
|
-
clearProxyData() {}
|
|
8094
7982
|
find(_condition, _options) {
|
|
8095
7983
|
return Plugin.need("find");
|
|
8096
7984
|
}
|
|
@@ -8128,6 +8016,7 @@ var LeaferUI = function(exports) {
|
|
|
8128
8016
|
data.lazy && !this.__inLazyBounds && !Export.running ? data.__needComputePaint = true : data.__computePaint();
|
|
8129
8017
|
}
|
|
8130
8018
|
}
|
|
8019
|
+
__updatePath() {}
|
|
8131
8020
|
__updateRenderPath(updateCache) {
|
|
8132
8021
|
const data = this.__;
|
|
8133
8022
|
if (data.path) {
|
|
@@ -8163,7 +8052,6 @@ var LeaferUI = function(exports) {
|
|
|
8163
8052
|
this.set(keyframe);
|
|
8164
8053
|
return Plugin.need("animate");
|
|
8165
8054
|
}
|
|
8166
|
-
killAnimate(_type, _nextStyle) {}
|
|
8167
8055
|
export(_filename, _options) {
|
|
8168
8056
|
return Plugin.need("export");
|
|
8169
8057
|
}
|
|
@@ -8266,7 +8154,6 @@ var LeaferUI = function(exports) {
|
|
|
8266
8154
|
__decorate([ surfaceType() ], exports.UI.prototype, "placeholderColor", void 0);
|
|
8267
8155
|
__decorate([ dataType(100) ], exports.UI.prototype, "placeholderDelay", void 0);
|
|
8268
8156
|
__decorate([ dataType({}) ], exports.UI.prototype, "data", void 0);
|
|
8269
|
-
__decorate([ rewrite(exports.Leaf.prototype.reset) ], exports.UI.prototype, "reset", null);
|
|
8270
8157
|
exports.UI = UI_1 = __decorate([ useModule(UIBounds), useModule(UIRender), rewriteAble() ], exports.UI);
|
|
8271
8158
|
exports.Group = class Group extends exports.UI {
|
|
8272
8159
|
get __tag() {
|
|
@@ -8302,9 +8189,6 @@ var LeaferUI = function(exports) {
|
|
|
8302
8189
|
}
|
|
8303
8190
|
return data;
|
|
8304
8191
|
}
|
|
8305
|
-
pick(_hitPoint, _options) {
|
|
8306
|
-
return undefined;
|
|
8307
|
-
}
|
|
8308
8192
|
addAt(child, index) {
|
|
8309
8193
|
this.add(child, index);
|
|
8310
8194
|
}
|
|
@@ -8314,11 +8198,6 @@ var LeaferUI = function(exports) {
|
|
|
8314
8198
|
addBefore(child, before) {
|
|
8315
8199
|
this.add(child, this.children.indexOf(before));
|
|
8316
8200
|
}
|
|
8317
|
-
add(_child, _index) {}
|
|
8318
|
-
addMany(..._children) {}
|
|
8319
|
-
remove(_child, _destroy) {}
|
|
8320
|
-
removeAll(_destroy) {}
|
|
8321
|
-
clear() {}
|
|
8322
8201
|
};
|
|
8323
8202
|
__decorate([ dataProcessor(GroupData) ], exports.Group.prototype, "__", void 0);
|
|
8324
8203
|
__decorate([ boundsType(0) ], exports.Group.prototype, "width", void 0);
|
|
@@ -9172,51 +9051,6 @@ var LeaferUI = function(exports) {
|
|
|
9172
9051
|
this.add(path);
|
|
9173
9052
|
return this;
|
|
9174
9053
|
}
|
|
9175
|
-
beginPath() {
|
|
9176
|
-
return this;
|
|
9177
|
-
}
|
|
9178
|
-
moveTo(_x, _y) {
|
|
9179
|
-
return this;
|
|
9180
|
-
}
|
|
9181
|
-
lineTo(_x, _y) {
|
|
9182
|
-
return this;
|
|
9183
|
-
}
|
|
9184
|
-
bezierCurveTo(_x1, _y1, _x2, _y2, _x, _y) {
|
|
9185
|
-
return this;
|
|
9186
|
-
}
|
|
9187
|
-
quadraticCurveTo(_x1, _y1, _x, _y) {
|
|
9188
|
-
return this;
|
|
9189
|
-
}
|
|
9190
|
-
closePath() {
|
|
9191
|
-
return this;
|
|
9192
|
-
}
|
|
9193
|
-
rect(_x, _y, _width, _height) {
|
|
9194
|
-
return this;
|
|
9195
|
-
}
|
|
9196
|
-
roundRect(_x, _y, _width, _height, _cornerRadius) {
|
|
9197
|
-
return this;
|
|
9198
|
-
}
|
|
9199
|
-
ellipse(_x, _y, _radiusX, _radiusY, _rotation, _startAngle, _endAngle, _anticlockwise) {
|
|
9200
|
-
return this;
|
|
9201
|
-
}
|
|
9202
|
-
arc(_x, _y, _radius, _startAngle, _endAngle, _anticlockwise) {
|
|
9203
|
-
return this;
|
|
9204
|
-
}
|
|
9205
|
-
arcTo(_x1, _y1, _x2, _y2, _radius) {
|
|
9206
|
-
return this;
|
|
9207
|
-
}
|
|
9208
|
-
drawEllipse(_x, _y, _radiusX, _radiusY, _rotation, _startAngle, _endAngle, _anticlockwise) {
|
|
9209
|
-
return this;
|
|
9210
|
-
}
|
|
9211
|
-
drawArc(_x, _y, _radius, _startAngle, _endAngle, _anticlockwise) {
|
|
9212
|
-
return this;
|
|
9213
|
-
}
|
|
9214
|
-
drawPoints(_points, _curve, _close) {
|
|
9215
|
-
return this;
|
|
9216
|
-
}
|
|
9217
|
-
clearPath() {
|
|
9218
|
-
return this;
|
|
9219
|
-
}
|
|
9220
9054
|
paint() {
|
|
9221
9055
|
const {pathElement: pathElement} = this;
|
|
9222
9056
|
if (!pathElement.__layout.boxChanged) pathElement.forceUpdate("path");
|
|
@@ -11042,7 +10876,7 @@ var LeaferUI = function(exports) {
|
|
|
11042
10876
|
needUpdate = false;
|
|
11043
10877
|
}
|
|
11044
10878
|
}
|
|
11045
|
-
if (paint.mode === "brush") PaintImage.brush(leafPaint, ui);
|
|
10879
|
+
if (paint.mode === "brush") PaintImage.brush(leafPaint, ui, attrName);
|
|
11046
10880
|
if (!leafPaint.data) {
|
|
11047
10881
|
PaintImage.createData(leafPaint, image, paint, boxBounds);
|
|
11048
10882
|
const {transform: transform} = leafPaint.data, {opacity: opacity} = paint;
|
|
@@ -11126,8 +10960,9 @@ var LeaferUI = function(exports) {
|
|
|
11126
10960
|
break;
|
|
11127
10961
|
|
|
11128
10962
|
case "repeat":
|
|
11129
|
-
case "brush":
|
|
11130
10963
|
if (!sameBox || scaleX || rotation || skew) PaintImage.repeatMode(data, box, width, height, tempImage.x, tempImage.y, scaleX, scaleY, rotation, skew, align, paint.freeTransform);
|
|
10964
|
+
|
|
10965
|
+
case "brush":
|
|
11131
10966
|
if (!repeat) data.repeat = "repeat";
|
|
11132
10967
|
const count = isObject(repeat);
|
|
11133
10968
|
if (gap || count) data.gap = getGapData(gap, count && repeat, tempImage.width, tempImage.height, box);
|
|
@@ -11138,7 +10973,7 @@ var LeaferUI = function(exports) {
|
|
|
11138
10973
|
default:
|
|
11139
10974
|
if (scaleX) PaintImage.fillOrFitMode(data, box, tempImage.x, tempImage.y, scaleX, scaleY, rotation);
|
|
11140
10975
|
}
|
|
11141
|
-
if (!data.transform) {
|
|
10976
|
+
if (!data.transform && mode !== "brush") {
|
|
11142
10977
|
if (box.x || box.y) translate$1(data.transform = get$3(), box.x, box.y);
|
|
11143
10978
|
}
|
|
11144
10979
|
if (scaleX) {
|
|
@@ -11254,8 +11089,9 @@ var LeaferUI = function(exports) {
|
|
|
11254
11089
|
let {scaleX: scaleX, scaleY: scaleY} = PaintImage.getImageRenderScaleData(paint, ui, canvas, renderOptions), id = paint.film ? paint.nowIndex : scaleX + "-" + scaleY;
|
|
11255
11090
|
if (paint.patternId !== id && !ui.destroyed) {
|
|
11256
11091
|
if (!(Platform.image.isLarge(paint.image, scaleX, scaleY) && !paint.data.repeat)) {
|
|
11257
|
-
const {image: image, brush: brush, data: data} = paint, {
|
|
11258
|
-
let imageMatrix, xGap, yGap, {width: width, height: height} = image;
|
|
11092
|
+
const {image: image, brush: brush, data: data} = paint, {transform: transform, gap: gap} = data, fixScale = PaintImage.getPatternFixScale(paint, scaleX, scaleY);
|
|
11093
|
+
let imageMatrix, xGap, yGap, {width: width, height: height} = image, {opacity: opacity} = paint.originPaint;
|
|
11094
|
+
if (brush || opacity === 1) opacity = undefined;
|
|
11259
11095
|
if (fixScale) scaleX *= fixScale, scaleY *= fixScale;
|
|
11260
11096
|
width *= scaleX;
|
|
11261
11097
|
height *= scaleY;
|
package/dist/worker.min.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.min.cjs","sources":["../../../../../../../src/leafer/packages/interface/src/path/IPathCommand.ts"],"sourcesContent":["import { IPointData } from '../math/IMath'\nimport { IWindingRule } from '../canvas/ICanvas'\n\ntype Command = number\ntype x = number\ntype y = number\ntype x1 = number\ntype y1 = number\ntype x2 = number\ntype y2 = number\ntype radiusX = number\ntype radiusY = number\ntype xAxisRotation = number\ntype largeArcFlag = number\ntype sweepFlag = number\n\n\nexport type MCommandData = [Command, x, y]\nexport type HCommandData = [Command, x]\nexport type VCommandData = [Command, y]\nexport type LCommandData = MCommandData\n\nexport type CCommandData = [Command, x1, y1, x2, y2, x, y]\nexport type SCommandData = [Command, x2, y2, x, y]\n\nexport type QCommandData = [Command, x1, y1, x, y]\nexport type TCommandData = [Command, x, y]\n\nexport type ZCommandData = [Command]\n\nexport type ACommandData = [Command, radiusX, radiusY, xAxisRotation, largeArcFlag, sweepFlag, x, y]\n\n\n// 非svg标准的canvas绘图命令\ntype width = number\ntype height = number\ntype rotation = number\ntype startAngle = number\ntype endAngle = number\ntype anticlockwise = boolean\ntype cornerRadius = number | number[]\ntype radius = number\n\nexport type RectCommandData = [Command, x, y, width, height]\nexport type RoundRectCommandData = [Command, x, y, width, height, cornerRadius]\nexport type EllipseCommandData = [Command, x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise]\nexport type ArcCommandData = [Command, x, y, radius, startAngle, endAngle, anticlockwise]\nexport type ArcToCommandData = [Command, x1, y1, x2, y2, radius]\n\n\nexport type CanvasPathCommand = 1 | 2 | 5 | 7 | 11 // M | L | C | Q | Z canvas可以绘制的命令\n\nexport type IPathCommandData = number[] // ...(MCommandData | LCommandData | CCommandData | QCommandData | ZCommandData)\n\nexport interface IPathCommandDataWithRadius {\n data: IPathCommandData\n radius: number[]\n}\n\nexport interface IPathCommandDataWithWindingRule {\n data: IPathCommandData\n windingRule?: IWindingRule\n}\n\n// 路径命令对象\nexport interface MoveToCommandObject {\n name: 'M'\n x: number\n y: number\n}\nexport interface LineToCommandObject {\n name: 'L'\n x: number\n y: number\n}\n\nexport interface BezierCurveToCommandObject {\n name: 'C'\n x1: number\n y1: number\n x2: number\n y2: number\n x: number\n y: number\n}\n\nexport interface QuadraticCurveToCommandObject {\n name: 'Q'\n x1: number\n y1: number\n x: number\n y: number\n}\n\nexport interface ClosePathCommandObject {\n name: 'Z'\n}\n\nexport type IPathCommandObject = MoveToCommandObject | LineToCommandObject | BezierCurveToCommandObject | QuadraticCurveToCommandObject | ClosePathCommandObject // M | L | C | Q | Z canvas可以绘制的命令\n\n\n// 可视化路径节点\n\nexport interface IPathCommandNodeBase {\n name: 'M^' | 'L^' | 'C^' | 'Z^'\n x: number\n y: number\n r?: number // 圆角半径\n a?: IPointData // 第一个手柄,连接上一个节点\n b?: IPointData // 第二个手柄,连接下一个节点\n ab?: PathNodeHandleType // 手柄类型\n}\n\nexport interface MoveToCommandNode extends IPathCommandNodeBase {\n name: 'M^'\n}\nexport interface LineToCommandNode extends IPathCommandNodeBase {\n name: 'L^'\n}\n\nexport interface BezierCurveToCommandNode extends IPathCommandNodeBase {\n name: 'C^'\n}\n\nexport interface ClosePathCommandNode {\n name: 'Z^'\n x?: number\n y?: number\n r?: number // 圆角半径\n a?: IPointData\n b?: IPointData\n ab?: PathNodeHandleType\n}\n\nexport type IPathCommandNode = MoveToCommandNode | LineToCommandNode | BezierCurveToCommandNode | ClosePathCommandNode // M | L | C | Z 路径节点命令(适合可视化编辑)\n\nexport enum PathNodeHandleType { // 手柄类型\n none = 1, // 无手柄\n free = 2, // 每个手柄自由控制\n mirrorAngle = 3, // 仅镜像角度\n mirror = 4, // 镜像角度和长度\n}\n\nexport type PathNodeHandleName = 'a' | 'b' // 手柄名称\n\nexport interface IPathNodeBase {\n pathNode: IPathCommandNode\n}"],"names":["PathNodeHandleType"],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker.min.cjs","sources":["../../../../../../../src/leafer/packages/interface/src/path/IPathCommand.ts"],"sourcesContent":["import { IPointData } from '../math/IMath'\nimport { IWindingRule } from '../canvas/ICanvas'\n\ntype Command = number\ntype x = number\ntype y = number\ntype x1 = number\ntype y1 = number\ntype x2 = number\ntype y2 = number\ntype radiusX = number\ntype radiusY = number\ntype xAxisRotation = number\ntype largeArcFlag = number\ntype sweepFlag = number\n\n\nexport type MCommandData = [Command, x, y]\nexport type HCommandData = [Command, x]\nexport type VCommandData = [Command, y]\nexport type LCommandData = MCommandData\n\nexport type CCommandData = [Command, x1, y1, x2, y2, x, y]\nexport type SCommandData = [Command, x2, y2, x, y]\n\nexport type QCommandData = [Command, x1, y1, x, y]\nexport type TCommandData = [Command, x, y]\n\nexport type ZCommandData = [Command]\n\nexport type ACommandData = [Command, radiusX, radiusY, xAxisRotation, largeArcFlag, sweepFlag, x, y]\n\n\n// 非svg标准的canvas绘图命令\ntype width = number\ntype height = number\ntype rotation = number\ntype startAngle = number\ntype endAngle = number\ntype anticlockwise = boolean\ntype cornerRadius = number | number[]\ntype radius = number\n\nexport type RectCommandData = [Command, x, y, width, height]\nexport type RoundRectCommandData = [Command, x, y, width, height, cornerRadius]\nexport type EllipseCommandData = [Command, x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise]\nexport type ArcCommandData = [Command, x, y, radius, startAngle, endAngle, anticlockwise]\nexport type ArcToCommandData = [Command, x1, y1, x2, y2, radius]\n\n\nexport type CanvasPathCommand = 1 | 2 | 5 | 7 | 11 // M | L | C | Q | Z canvas可以绘制的命令\n\nexport type IPathCommandData = number[] // ...(MCommandData | LCommandData | CCommandData | QCommandData | ZCommandData)\n\nexport interface IPathCommandDataWithRadius {\n data: IPathCommandData\n radius: number[]\n}\n\nexport interface IPathCommandDataWithWindingRule {\n data: IPathCommandData\n windingRule?: IWindingRule\n}\n\n// 路径命令对象\nexport interface MoveToCommandObject {\n name: 'M'\n x: number\n y: number\n pressure?: number // 压感\n}\nexport interface LineToCommandObject {\n name: 'L'\n x: number\n y: number\n pressure?: number\n}\n\nexport interface BezierCurveToCommandObject {\n name: 'C'\n x1: number\n y1: number\n x2: number\n y2: number\n x: number\n y: number\n pressure?: number\n}\n\nexport interface QuadraticCurveToCommandObject {\n name: 'Q'\n x1: number\n y1: number\n x: number\n y: number\n pressure?: number\n}\n\nexport interface ClosePathCommandObject {\n name: 'Z'\n}\n\nexport type IPathCommandObject = MoveToCommandObject | LineToCommandObject | BezierCurveToCommandObject | QuadraticCurveToCommandObject | ClosePathCommandObject // M | L | C | Q | Z canvas可以绘制的命令\n\n\n// 可视化路径节点\n\nexport interface IPathCommandNodeBase {\n name: 'M^' | 'L^' | 'C^' | 'Z^'\n x: number\n y: number\n r?: number // 圆角半径\n a?: IPointData // 第一个手柄,连接上一个节点\n b?: IPointData // 第二个手柄,连接下一个节点\n ab?: PathNodeHandleType // 手柄类型\n pressure?: number // 压感\n}\n\nexport interface MoveToCommandNode extends IPathCommandNodeBase {\n name: 'M^'\n}\nexport interface LineToCommandNode extends IPathCommandNodeBase {\n name: 'L^'\n}\n\nexport interface BezierCurveToCommandNode extends IPathCommandNodeBase {\n name: 'C^'\n}\n\nexport interface ClosePathCommandNode {\n name: 'Z^'\n x?: number\n y?: number\n r?: number // 圆角半径\n a?: IPointData\n b?: IPointData\n ab?: PathNodeHandleType\n}\n\nexport type IPathCommandNode = MoveToCommandNode | LineToCommandNode | BezierCurveToCommandNode | ClosePathCommandNode // M | L | C | Z 路径节点命令(适合可视化编辑)\n\nexport enum PathNodeHandleType { // 手柄类型\n none = 1, // 无手柄\n free = 2, // 每个手柄自由控制\n mirrorAngle = 3, // 仅镜像角度\n mirror = 4, // 镜像角度和长度\n}\n\nexport type PathNodeHandleName = 'a' | 'b' // 手柄名称\n\nexport interface IPathNodeBase {\n pathNode: IPathCommandNode\n}"],"names":["PathNodeHandleType"],"mappings":"iBA6IYA,8LAAAA,QAAAA,wBAAAA,GAAAA,EAAAA,QAAAA,qBAAAA,2BAAkB,CAAA,IAC1BA,EAAA,KAAA,GAAA,OACAA,EAAAA,EAAA,KAAA,GAAA,OACAA,EAAAA,EAAA,YAAA,GAAA,cACAA,EAAAA,EAAA,OAAA,GAAA"}
|