@gedit/editor-2d 0.3.10 → 0.3.12

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.
Files changed (52) hide show
  1. package/lib/browser/model/editor2d-document.d.ts +3 -1
  2. package/lib/browser/model/editor2d-document.d.ts.map +1 -1
  3. package/lib/browser/model/editor2d-document.js +18 -12
  4. package/lib/browser/model/editor2d-document.js.map +1 -1
  5. package/lib/browser/model/utils/anim.utils.d.ts +1 -0
  6. package/lib/browser/model/utils/anim.utils.d.ts.map +1 -1
  7. package/lib/browser/model/utils/anim.utils.js +22 -0
  8. package/lib/browser/model/utils/anim.utils.js.map +1 -1
  9. package/lib/browser/playground/anim-path-edit-layer.d.ts.map +1 -1
  10. package/lib/browser/playground/anim-path-edit-layer.js +5 -3
  11. package/lib/browser/playground/anim-path-edit-layer.js.map +1 -1
  12. package/lib/browser/playground/canvas-draw.d.ts.map +1 -1
  13. package/lib/browser/playground/canvas-draw.js +7 -4
  14. package/lib/browser/playground/canvas-draw.js.map +1 -1
  15. package/lib/browser/playground/canvas-layer.d.ts +1 -2
  16. package/lib/browser/playground/canvas-layer.d.ts.map +1 -1
  17. package/lib/browser/playground/canvas-layer.js +53 -44
  18. package/lib/browser/playground/canvas-layer.js.map +1 -1
  19. package/lib/browser/playground/extend-edit/gradient-conic-node.js +4 -4
  20. package/lib/browser/playground/extend-edit/gradient-conic-node.js.map +1 -1
  21. package/lib/browser/playground/extend-edit/gradient-node.d.ts.map +1 -1
  22. package/lib/browser/playground/extend-edit/gradient-node.js +3 -3
  23. package/lib/browser/playground/extend-edit/gradient-node.js.map +1 -1
  24. package/lib/browser/playground/path-edit/utils.d.ts +2 -2
  25. package/lib/browser/playground/path-edit/utils.d.ts.map +1 -1
  26. package/lib/browser/playground/path-edit/utils.js +55 -45
  27. package/lib/browser/playground/path-edit/utils.js.map +1 -1
  28. package/lib/browser/playground/path-edit-layer.d.ts +11 -1
  29. package/lib/browser/playground/path-edit-layer.d.ts.map +1 -1
  30. package/lib/browser/playground/path-edit-layer.js +242 -75
  31. package/lib/browser/playground/path-edit-layer.js.map +1 -1
  32. package/lib/browser/playground/selection-entity-manager.d.ts.map +1 -1
  33. package/lib/browser/playground/selection-entity-manager.js +60 -10
  34. package/lib/browser/playground/selection-entity-manager.js.map +1 -1
  35. package/lib/browser/utils/bounds.js +4 -4
  36. package/lib/browser/utils/snapshot.d.ts.map +1 -1
  37. package/lib/browser/utils/snapshot.js +2 -1
  38. package/lib/browser/utils/snapshot.js.map +1 -1
  39. package/package.json +9 -9
  40. package/src/browser/model/editor2d-document.ts +22 -12
  41. package/src/browser/model/utils/anim.utils.ts +24 -0
  42. package/src/browser/playground/anim-path-edit-layer.tsx +8 -4
  43. package/src/browser/playground/canvas-draw.ts +7 -4
  44. package/src/browser/playground/canvas-layer.ts +25 -14
  45. package/src/browser/playground/extend-edit/gradient-conic-node.tsx +4 -4
  46. package/src/browser/playground/extend-edit/gradient-node.tsx +3 -2
  47. package/src/browser/playground/path-edit/utils.tsx +56 -54
  48. package/src/browser/playground/path-edit-layer.tsx +310 -74
  49. package/src/browser/playground/selection-entity-manager.tsx +127 -30
  50. package/src/browser/utils/bounds.ts +4 -4
  51. package/src/browser/utils/snapshot.ts +1 -0
  52. package/LICENSE +0 -21
@@ -14,7 +14,7 @@ import { domUtils } from '@gedit/utils/lib/browser';
14
14
  import { GameObjectBaseType } from '@gedit/render-engine';
15
15
  import { TreeSelection } from '@gedit/tree';
16
16
  import { PATH_FUNC_TYPE, toFixedValue, } from '@gedit/canvas-draw';
17
- import { deepClone, generateUuid } from '@gedit/utils';
17
+ import { deepClone, DisposableCollection, generateUuid, } from '@gedit/utils';
18
18
  import { SvgPath, getNewPoint, setBezierMovePoint, updatePathNodeData, inverseTransformToData, transformToData, } from './path-edit';
19
19
  export const PathEditLayerEventContext = React.createContext({});
20
20
  /**
@@ -25,6 +25,8 @@ export class PathEditLayer extends Layer {
25
25
  super(...arguments);
26
26
  this.node = domUtils.createDivWithClass('gedit-path-edit-layer');
27
27
  this.id = 'pathEditLayer';
28
+ // 访录当前图层在 timeline 里的监听事件
29
+ this.layerDisposeMap = new Map();
28
30
  }
29
31
  get document() {
30
32
  return this.documentEntity.config.document;
@@ -41,46 +43,54 @@ export class PathEditLayer extends Layer {
41
43
  this.toDispose.pushAll(disposable);
42
44
  }
43
45
  reNodeData() {
46
+ var _a;
44
47
  this.currentPathNode = undefined;
45
48
  this.startPos = undefined;
46
49
  this.pathPointSelection.clearSelection();
47
50
  this.pathPointSelection.selectMode = PathSelectMode.ADD_PATH;
51
+ (_a = this.docDispose) === null || _a === void 0 ? void 0 : _a.dispose();
48
52
  }
49
53
  updateNodeData() {
50
- var _a;
51
- const nodeData = updatePathNodeData(this.currentPathNode);
52
- (_a = this.document) === null || _a === void 0 ? void 0 : _a.updateNode(this.currentPathNode, nodeData, true);
53
- }
54
- updateNodePathData() {
55
54
  var _a;
56
55
  if (!this.currentPathNode) {
57
56
  return;
58
57
  }
59
- const { origin = { x: 0.5, y: 0.5 }, size, path } = this.currentPathNode;
60
- const { origin: oldOrigin = { x: 0.5, y: 0.5 }, paths } = path;
61
- const diff = {
62
- x: toFixedValue((oldOrigin.x - origin.x) * ((size === null || size === void 0 ? void 0 : size.width) || 0), 4),
63
- y: toFixedValue((oldOrigin.y - origin.y) * ((size === null || size === void 0 ? void 0 : size.height) || 0), 4),
64
- };
65
- paths.forEach(item => {
66
- item.x += diff.x;
67
- item.y += diff.y;
68
- if (typeof item.x1 === 'number') {
69
- item.x1 += diff.x;
70
- }
71
- if (typeof item.x2 === 'number') {
72
- item.x2 += diff.x;
73
- }
74
- if (typeof item.y1 === 'number') {
75
- item.y1 += diff.y;
76
- }
77
- if (typeof item.y2 === 'number') {
78
- item.y2 += diff.y;
79
- }
80
- });
81
- path.origin = origin;
82
- (_a = this.document) === null || _a === void 0 ? void 0 : _a.updateNode(this.currentPathNode, { path }, true);
58
+ const nodeData = updatePathNodeData(this.currentPathNode);
59
+ // console.log('updateNodeData', nodeData);
60
+ // 直接更新数据,,动画 updateAnimationNode 里会把数据删了;
61
+ this.currentPathNode.path = nodeData.path;
62
+ (_a = this.document) === null || _a === void 0 ? void 0 : _a.updateNode(this.currentPathNode, nodeData, true);
83
63
  }
64
+ // updateNodePathData(): void {
65
+ // if (!this.currentPathNode) {
66
+ // return;
67
+ // }
68
+ // const { origin = { x: 0.5, y: 0.5 }, size, path } = this.currentPathNode;
69
+ // const { origin: oldOrigin = { x: 0.5, y: 0.5 }, paths } = path;
70
+ // const diff = {
71
+ // x: toFixedValue((oldOrigin.x - origin.x) * (size?.width || 0), 4),
72
+ // y: toFixedValue((oldOrigin.y - origin.y) * (size?.height || 0), 4),
73
+ // };
74
+ // paths.forEach(item => {
75
+ // item.x += diff.x;
76
+ // item.y += diff.y;
77
+ // if (typeof item.x1 === 'number') {
78
+ // item.x1 += diff.x;
79
+ // }
80
+ // if (typeof item.x2 === 'number') {
81
+ // item.x2 += diff.x;
82
+ // }
83
+ // if (typeof item.y1 === 'number') {
84
+ // item.y1 += diff.y;
85
+ // }
86
+ // if (typeof item.y2 === 'number') {
87
+ // item.y2 += diff.y;
88
+ // }
89
+ // });
90
+ // path.origin = origin;
91
+ // console.log(path);
92
+ // this.document?.updateNode(this.currentPathNode, { path }, true);
93
+ // }
84
94
  // 选中的是第一个点
85
95
  isOnePoint(point) {
86
96
  var _a;
@@ -114,6 +124,46 @@ export class PathEditLayer extends Layer {
114
124
  (selection[0].pointId === paths[0].id ||
115
125
  selection[0].pointId === paths[paths.length - 1].id)));
116
126
  }
127
+ updateTimelineCurrentFrameDataToCurrentNode() {
128
+ var _a, _b, _c, _d;
129
+ if (!this.currentPathNode) {
130
+ return;
131
+ }
132
+ const timelineData = (_b = (_a = this.document) === null || _a === void 0 ? void 0 : _a.timelineService) === null || _b === void 0 ? void 0 : _b.currentTimelineData;
133
+ if (!timelineData) {
134
+ return;
135
+ }
136
+ const { frames = [] } = timelineData;
137
+ const currentFrame = frames.find(c => { var _a; return c.id === ((_a = this.currentPathNode) === null || _a === void 0 ? void 0 : _a.id); });
138
+ if (currentFrame) {
139
+ const currentValues = (_d = (_c = this.document) === null || _c === void 0 ? void 0 : _c.timelineService) === null || _d === void 0 ? void 0 : _d.getNodeCurrentFrame(currentFrame);
140
+ if (currentValues && currentValues['path.paths']) {
141
+ this.currentPathNode.path.paths = deepClone(currentValues['path.paths']);
142
+ }
143
+ }
144
+ }
145
+ // 注册监听时间轴事件
146
+ onRegisterTimelineEvent() {
147
+ var _a;
148
+ if (!this.currentPathNode || !((_a = this.document) === null || _a === void 0 ? void 0 : _a.timelineService)) {
149
+ return;
150
+ }
151
+ const currentDisposeCache = this.layerDisposeMap.get(this.currentPathNode.id);
152
+ if (!currentDisposeCache) {
153
+ const currentDispose = new DisposableCollection();
154
+ currentDispose.pushAll([
155
+ this.document.timelineService.onTimelineCurrentTimeChange(() => {
156
+ this.updateTimelineCurrentFrameDataToCurrentNode();
157
+ this.draw();
158
+ }),
159
+ this.document.timelineService.onTimelineChangeData(() => {
160
+ this.updateTimelineCurrentFrameDataToCurrentNode();
161
+ this.draw();
162
+ }),
163
+ ]);
164
+ this.layerDisposeMap.set(this.currentPathNode.id, currentDispose);
165
+ }
166
+ }
117
167
  onReady() {
118
168
  var _a;
119
169
  this.addDispose([
@@ -124,7 +174,7 @@ export class PathEditLayer extends Layer {
124
174
  this.editorState.toDefaultState();
125
175
  }),
126
176
  this.editorState.onStateChange(e => {
127
- var _a;
177
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
128
178
  /**
129
179
  * 1. 不是路径编辑状态时,清空数据
130
180
  * 2. 是路径编辑状态时
@@ -133,6 +183,7 @@ export class PathEditLayer extends Layer {
133
183
  * -- 2. 非闭合路径时,切换编辑模式;
134
184
  * - 2. 未选中时节点时, 设置编辑模式;
135
185
  */
186
+ // console.log('path edit state change', e);
136
187
  if (!this.isEnabled) {
137
188
  this.reNodeData();
138
189
  }
@@ -141,10 +192,17 @@ export class PathEditLayer extends Layer {
141
192
  return;
142
193
  }
143
194
  const selectNodes = ((_a = this.document) === null || _a === void 0 ? void 0 : _a.getSelectedNodes()) || [];
144
- if (selectNodes.length &&
145
- selectNodes[0].displayType === GameObjectBaseType.PATH) {
195
+ const pathSelectsNodes = selectNodes.filter(c => c.displayType === GameObjectBaseType.PATH);
196
+ if (selectNodes.length && pathSelectsNodes.length) {
146
197
  // 选中一个 path 路径时;
147
- this.currentPathNode = selectNodes[0];
198
+ this.currentPathNode = deepClone(pathSelectsNodes[0]);
199
+ if (this.currentPathNode.useAnimationId &&
200
+ ((_c = (_b = this.document) === null || _b === void 0 ? void 0 : _b.timelineService) === null || _c === void 0 ? void 0 : _c.currentTimelineData) &&
201
+ this.document.timelineService.currentTimelineData.id ===
202
+ this.currentPathNode.useAnimationId) {
203
+ this.updateTimelineCurrentFrameDataToCurrentNode();
204
+ this.onRegisterTimelineEvent();
205
+ }
148
206
  const selectionNode = [
149
207
  {
150
208
  pointId: this.currentPathNode.path.paths[this.currentPathNode.path.paths.length - 1].id,
@@ -154,7 +212,39 @@ export class PathEditLayer extends Layer {
154
212
  ? this.pathPointSelection.enterSelectBezierMode(selectionNode)
155
213
  : this.pathPointSelection.enterPathMode(selectionNode);
156
214
  // 如果中心点不同,更新数据;
157
- this.updateNodePathData();
215
+ if ((((_d = this.currentPathNode.origin) === null || _d === void 0 ? void 0 : _d.x) ||
216
+ ((_e = this.currentPathNode.origin) === null || _e === void 0 ? void 0 : _e.y)) &&
217
+ !this.currentPathNode.path.originChangeBeforeSize) {
218
+ // 初始 origin 是照这个宽度算的;计算偏差使用;
219
+ this.currentPathNode.path.originChangeBeforeSize = {
220
+ width: ((_f = this.currentPathNode.size) === null || _f === void 0 ? void 0 : _f.width) || 0,
221
+ height: ((_g = this.currentPathNode.size) === null || _g === void 0 ? void 0 : _g.height) || 0,
222
+ };
223
+ (_h = this.document) === null || _h === void 0 ? void 0 : _h.updateNode(this.currentPathNode, this.currentPathNode, true);
224
+ }
225
+ else if (!((_j = this.currentPathNode.origin) === null || _j === void 0 ? void 0 : _j.x) &&
226
+ !((_k = this.currentPathNode.origin) === null || _k === void 0 ? void 0 : _k.y) &&
227
+ this.currentPathNode.path.originChangeBeforeSize) {
228
+ delete this.currentPathNode.path.originChangeBeforeSize;
229
+ (_l = this.document) === null || _l === void 0 ? void 0 : _l.updateNode(this.currentPathNode, this.currentPathNode, true);
230
+ }
231
+ this.docDispose = (_m = this.document) === null || _m === void 0 ? void 0 : _m.onContentChanged(c => {
232
+ var _a, _b, _c, _d;
233
+ const newNode = (_a = c.nodes) === null || _a === void 0 ? void 0 : _a.find(c => { var _a; return c.id === ((_a = this.currentPathNode) === null || _a === void 0 ? void 0 : _a.id); });
234
+ if (newNode &&
235
+ JSON.stringify(newNode.path.paths) !==
236
+ JSON.stringify((_b = this.currentPathNode) === null || _b === void 0 ? void 0 : _b.path.paths)) {
237
+ // 属性栏修改数据时,数据源不是同一个,需要手动更新数据
238
+ this.currentPathNode = newNode;
239
+ if (this.currentPathNode.useAnimationId &&
240
+ ((_d = (_c = this.document) === null || _c === void 0 ? void 0 : _c.timelineService) === null || _d === void 0 ? void 0 : _d.currentTimelineData) &&
241
+ this.document.timelineService.currentTimelineData.id ===
242
+ this.currentPathNode.useAnimationId) {
243
+ this.updateTimelineCurrentFrameDataToCurrentNode();
244
+ this.draw();
245
+ }
246
+ }
247
+ });
158
248
  }
159
249
  else if (!selectNodes.length) {
160
250
  // 未选中时,清空数据
@@ -173,11 +263,16 @@ export class PathEditLayer extends Layer {
173
263
  const { paths = [], closed } = ((_a = this.currentPathNode) === null || _a === void 0 ? void 0 : _a.path) || {};
174
264
  const pathSelects = [];
175
265
  const { position = { x: 0, y: 1 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode;
266
+ const offset = this.getBoundsOffset();
267
+ const center = {
268
+ x: -offset.x,
269
+ y: -offset.y,
270
+ };
176
271
  paths.forEach(p => {
177
272
  const { x: $x, y: $y } = p;
178
273
  let x = $x;
179
274
  let y = $y;
180
- const r = transformToData({ x, y }, { scale, rotation });
275
+ const r = transformToData({ x, y }, { scale, rotation }, center);
181
276
  x = r.x + position.x;
182
277
  y = r.y + position.y;
183
278
  const wh = (4 / this.config.finalScale) * 2;
@@ -242,9 +337,18 @@ export class PathEditLayer extends Layer {
242
337
  return;
243
338
  }
244
339
  const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
245
- let x = e.endPos.x / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) - position.x;
246
- let y = e.endPos.y / (((_c = this.config) === null || _c === void 0 ? void 0 : _c.finalScale) || 1) - position.y;
247
- const { x: rx, y: ry } = inverseTransformToData({ x, y }, { scale, rotation });
340
+ const offset = this.getBoundsOffset();
341
+ let x = e.endPos.x / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) -
342
+ position.x -
343
+ offset.x;
344
+ let y = e.endPos.y / (((_c = this.config) === null || _c === void 0 ? void 0 : _c.finalScale) || 1) -
345
+ position.y -
346
+ offset.y;
347
+ const center = {
348
+ x: -offset.x,
349
+ y: -offset.y,
350
+ };
351
+ const { x: rx, y: ry } = inverseTransformToData({ x, y }, { scale, rotation }, center);
248
352
  x = rx;
249
353
  y = ry;
250
354
  this.startPos = {
@@ -268,9 +372,18 @@ export class PathEditLayer extends Layer {
268
372
  }
269
373
  // const pos = this.getPosFromMouseEvent(e);
270
374
  const { path, position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
271
- let x = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) - position.x;
272
- let y = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) - position.y;
273
- const { x: rx, y: ry } = inverseTransformToData({ x, y }, { scale, rotation });
375
+ const offset = this.getBoundsOffset();
376
+ let x = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) -
377
+ position.x -
378
+ offset.x;
379
+ let y = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) -
380
+ position.y -
381
+ offset.y;
382
+ const center = {
383
+ x: -offset.x,
384
+ y: -offset.y,
385
+ };
386
+ const { x: rx, y: ry } = inverseTransformToData({ x, y }, { scale, rotation }, center);
274
387
  x = rx;
275
388
  y = ry;
276
389
  const pathNode = path === null || path === void 0 ? void 0 : path.paths.find(c => { var _a; return c.id === ((_a = this.startPos) === null || _a === void 0 ? void 0 : _a.id); });
@@ -280,10 +393,10 @@ export class PathEditLayer extends Layer {
280
393
  const x1 = pathNode.x * 2 - x;
281
394
  const y1 = pathNode.y * 2 - y;
282
395
  const reverse = this.isOnePoint();
283
- pathNode.x2 = toFixedValue(reverse ? x1 : x, 4);
284
- pathNode.y2 = toFixedValue(reverse ? y1 : y, 4);
285
- pathNode.x1 = toFixedValue(reverse ? x : x1, 4);
286
- pathNode.y1 = toFixedValue(reverse ? y : y1, 4);
396
+ pathNode.x2 = toFixedValue(reverse ? x1 : x, 2);
397
+ pathNode.y2 = toFixedValue(reverse ? y1 : y, 2);
398
+ pathNode.x1 = toFixedValue(reverse ? x : x1, 2);
399
+ pathNode.y1 = toFixedValue(reverse ? y : y1, 2);
287
400
  pathNode.type = PATH_FUNC_TYPE.EQUAL;
288
401
  // console.log(this.startPos, path?.paths);
289
402
  this.updateNodeData();
@@ -311,7 +424,7 @@ export class PathEditLayer extends Layer {
311
424
  }),
312
425
  // 图层发生变化时退出模式
313
426
  (_a = this.selectionService) === null || _a === void 0 ? void 0 : _a.onSelectionChanged(e => {
314
- var _a;
427
+ var _a, _b, _c;
315
428
  // todo: pahtSelection 跟随 playground
316
429
  const { isEnabled, pathPointSelection } = this;
317
430
  if (isEnabled) {
@@ -327,6 +440,13 @@ export class PathEditLayer extends Layer {
327
440
  selectNodes[0].id !== this.currentPathNode.id) {
328
441
  // 选中的不是当前的 path 路径, 切换 currentPathNode;
329
442
  this.currentPathNode = selectNodes[0];
443
+ if (this.currentPathNode.useAnimationId &&
444
+ ((_c = (_b = this.document) === null || _b === void 0 ? void 0 : _b.timelineService) === null || _c === void 0 ? void 0 : _c.currentTimelineData) &&
445
+ this.document.timelineService.currentTimelineData.id ===
446
+ this.currentPathNode.useAnimationId) {
447
+ this.updateTimelineCurrentFrameDataToCurrentNode();
448
+ this.onRegisterTimelineEvent();
449
+ }
330
450
  const selectionNode = [
331
451
  {
332
452
  pointId: this.currentPathNode.path.paths[this.currentPathNode.path.paths.length - 1].id,
@@ -336,7 +456,7 @@ export class PathEditLayer extends Layer {
336
456
  this.currentPathNode.path.closed
337
457
  ? pathPointSelection.enterSelectBezierMode(selectionNode)
338
458
  : pathPointSelection.enterPathMode(selectionNode);
339
- this.updateNodePathData();
459
+ // this.updateNodePathData();
340
460
  }
341
461
  return;
342
462
  }
@@ -356,6 +476,28 @@ export class PathEditLayer extends Layer {
356
476
  }),
357
477
  ]);
358
478
  }
479
+ /**
480
+ * 获取偏差
481
+ */
482
+ getBoundsOffset() {
483
+ const { size = { width: 0, height: 0 }, origin = { x: 0, y: 0 }, path } = this.currentPathNode || {};
484
+ const { originChangeBeforeSize } = path || {};
485
+ const offset = {
486
+ x: 0,
487
+ y: 0,
488
+ };
489
+ if (originChangeBeforeSize) {
490
+ offset.x = -origin.x * size.width;
491
+ offset.y = -origin.y * size.height;
492
+ if (originChangeBeforeSize.width !== size.width) {
493
+ offset.x += (size.width - originChangeBeforeSize.width) * origin.x;
494
+ }
495
+ if (originChangeBeforeSize.height !== size.height) {
496
+ offset.y += (size.height - originChangeBeforeSize.height) * origin.y;
497
+ }
498
+ }
499
+ return offset;
500
+ }
359
501
  /**
360
502
  * 创建路径
361
503
  * @param pos - 当前鼠标点击的位置
@@ -383,9 +525,9 @@ export class PathEditLayer extends Layer {
383
525
  this.currentPathNode.path.paths.push(pos);
384
526
  }
385
527
  // 创建时坐标是 0, 需要换线更新坐标;
386
- setTimeout(() => {
387
- this.updateNodeData();
388
- });
528
+ // setTimeout(() => {
529
+ // this.updateNodeData();
530
+ // });
389
531
  }
390
532
  onBezierPointMove(pos) {
391
533
  const { key, path: p } = this.bezierStartPos;
@@ -421,9 +563,14 @@ export class PathEditLayer extends Layer {
421
563
  var _a, _b;
422
564
  if (this.bezierStartPos) {
423
565
  const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
424
- let x = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) - position.x;
425
- let y = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) - position.y;
426
- const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation });
566
+ const offset = this.getBoundsOffset();
567
+ let x = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) - position.x - offset.x;
568
+ let y = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) - position.y - offset.y;
569
+ const center = {
570
+ x: -offset.x,
571
+ y: -offset.y,
572
+ };
573
+ const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation }, center);
427
574
  x = currentX;
428
575
  y = currentY;
429
576
  this.onBezierPointMove({ x, y });
@@ -529,9 +676,18 @@ export class PathEditLayer extends Layer {
529
676
  });
530
677
  const startNode = selectionNodes.map((s) => startNodeClone.find((c) => c.id === s.id));
531
678
  const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
532
- let x = dragEvent.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) - position.x;
533
- let y = dragEvent.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) - position.y;
534
- const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation });
679
+ const offset = this.getBoundsOffset();
680
+ let x = dragEvent.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) -
681
+ position.x -
682
+ offset.x;
683
+ let y = dragEvent.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) -
684
+ position.y -
685
+ offset.y;
686
+ const center = {
687
+ x: -offset.x,
688
+ y: -offset.y,
689
+ };
690
+ const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation }, center);
535
691
  x = currentX;
536
692
  y = currentY;
537
693
  selectionNodes.forEach((p, i) => {
@@ -540,19 +696,19 @@ export class PathEditLayer extends Layer {
540
696
  const deltaX = x - start.x + d.x;
541
697
  const deltaY = y - start.y + d.y;
542
698
  if (typeof p.x1 === 'number') {
543
- p.x1 = toFixedValue(start.x1 + deltaX, 4);
699
+ p.x1 = toFixedValue(start.x1 + deltaX, 2);
544
700
  }
545
701
  if (typeof p.x2 === 'number') {
546
- p.x2 = toFixedValue(start.x2 + deltaX, 4);
702
+ p.x2 = toFixedValue(start.x2 + deltaX, 2);
547
703
  }
548
704
  if (typeof p.y1 === 'number') {
549
- p.y1 = toFixedValue(start.y1 + deltaY, 4);
705
+ p.y1 = toFixedValue(start.y1 + deltaY, 2);
550
706
  }
551
707
  if (typeof p.y2 === 'number') {
552
- p.y2 = toFixedValue(start.y2 + deltaY, 4);
708
+ p.y2 = toFixedValue(start.y2 + deltaY, 2);
553
709
  }
554
- p.x = toFixedValue(x + d.x, 4);
555
- p.y = toFixedValue(y + d.y, 4);
710
+ p.x = toFixedValue(x + d.x, 2);
711
+ p.y = toFixedValue(y + d.y, 2);
556
712
  });
557
713
  this.updateNodeData();
558
714
  },
@@ -566,9 +722,14 @@ export class PathEditLayer extends Layer {
566
722
  const { path, position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
567
723
  const { paths = [] } = path;
568
724
  const p = this.getPosFromMouseEvent(e);
569
- let x = p.x - position.x;
570
- let y = p.y - position.y;
571
- const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation });
725
+ const offset = this.getBoundsOffset();
726
+ let x = p.x - position.x - offset.x;
727
+ let y = p.y - position.y - offset.y;
728
+ const center = {
729
+ x: -offset.x,
730
+ y: -offset.y,
731
+ };
732
+ const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation }, center);
572
733
  x = currentX;
573
734
  y = currentY;
574
735
  const pos = {
@@ -591,6 +752,7 @@ export class PathEditLayer extends Layer {
591
752
  return;
592
753
  }
593
754
  this.currentPathNode.path.closed = true;
755
+ this.currentPathNode.path.paths[this.currentPathNode.path.paths.length - 1].closed = true;
594
756
  this.pathPointSelection.enterSelectBezierMode([
595
757
  {
596
758
  pointId: this.currentPathNode.path.paths[0].id,
@@ -610,20 +772,25 @@ export class PathEditLayer extends Layer {
610
772
  }
611
773
  const { path = {}, position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
612
774
  const { paths: p = [] } = path;
775
+ const offset = this.getBoundsOffset();
776
+ const center = {
777
+ x: -offset.x,
778
+ y: -offset.y,
779
+ };
613
780
  const paths = [...p].map(c => {
614
781
  const item = Object.assign(Object.assign({}, c), { x: c.x, y: c.y });
615
- const { x, y } = transformToData({ x: c.x, y: c.y }, { scale, rotation });
616
- item.x = x + position.x;
617
- item.y = y + position.y;
782
+ const { x, y } = transformToData({ x: c.x, y: c.y }, { scale, rotation }, center);
783
+ item.x = x + position.x + offset.x;
784
+ item.y = y + position.y + offset.y;
618
785
  if (typeof c.x1 === 'number' || typeof c.y1 === 'number') {
619
- const { x: x1, y: y1 } = transformToData({ x: c.x1 || c.x, y: c.y1 || c.y }, { scale, rotation });
620
- item.x1 = x1 + position.x;
621
- item.y1 = y1 + position.y;
786
+ const { x: x1, y: y1 } = transformToData({ x: c.x1 || c.x, y: c.y1 || c.y }, { scale, rotation }, center);
787
+ item.x1 = x1 + position.x + offset.x;
788
+ item.y1 = y1 + position.y + offset.y;
622
789
  }
623
790
  if (typeof c.x2 === 'number' || typeof c.y2 === 'number') {
624
- const { x: x2, y: y2 } = transformToData({ x: c.x2 || c.x, y: c.y2 || c.y }, { scale, rotation });
625
- item.x2 = x2 + position.x;
626
- item.y2 = y2 + position.y;
791
+ const { x: x2, y: y2 } = transformToData({ x: c.x2 || c.x, y: c.y2 || c.y }, { scale, rotation }, center);
792
+ item.x2 = x2 + position.x + offset.x;
793
+ item.y2 = y2 + position.y + offset.y;
627
794
  }
628
795
  return item;
629
796
  });
@@ -1 +1 @@
1
- {"version":3,"file":"path-edit-layer.js","sourceRoot":"","sources":["../../../src/browser/playground/path-edit-layer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-edit-layer.js","sourceRoot":"","sources":["../../../src/browser/playground/path-edit-layer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"selection-entity-manager.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAIL,aAAa,EAKd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAoBlD;;GAEG;AACH,qBAAa,sBAAsB;IAGxB,aAAa,EAAE,aAAa;IACnC,SAAS,CAAC,OAAO,EAAE,mBAAmB;IACtC,SAAS,CAAC,OAAO,EAAE,MAAM,OAAO;IAChC,SAAS,CAAC,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS;IACzD,SAAS,CAAC,SAAS,EAAE,MAAM,OAAO;IANpC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;gBAElD,aAAa,EAAE,aAAa,EACzB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,MAAM,OAAO,EACtB,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS,EAC/C,SAAS,EAAE,MAAM,OAAO;IAqCpC,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI;IAmBrF;;;;;;;OAOG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS;IAmHhJ,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMpC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAwC5E,mBAAmB,IAAI,cAAc,EAAE;IAUvC;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAkB7B;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS;IAStE,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAKtD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAKjD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;CAKlD"}
1
+ {"version":3,"file":"selection-entity-manager.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAIL,aAAa,EAKd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAsB,MAAM,sBAAsB,CAAC;AAyBtE;;GAEG;AACH,qBAAa,sBAAsB;IAGxB,aAAa,EAAE,aAAa;IACnC,SAAS,CAAC,OAAO,EAAE,mBAAmB;IACtC,SAAS,CAAC,OAAO,EAAE,MAAM,OAAO;IAChC,SAAS,CAAC,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS;IACzD,SAAS,CAAC,SAAS,EAAE,MAAM,OAAO;IANpC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;gBAElD,aAAa,EAAE,aAAa,EACzB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,MAAM,OAAO,EACtB,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS,EAC/C,SAAS,EAAE,MAAM,OAAO;IA6CpC,gBAAgB,CACd,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,YAAY,GAClB,IAAI;IAmBP;;;;;;;OAOG;IACH,YAAY,CACV,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,OAAO,EACnB,UAAU,EAAE,OAAO,GAClB,cAAc,GAAG,SAAS;IAwK7B,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMpC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAuD5E,mBAAmB,IAAI,cAAc,EAAE;IAUvC;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAwB7B;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS;IAStE,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAKtD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAKjD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;CAKlD"}