@gedit/editor-2d 0.3.16 → 0.3.17

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.
@@ -1 +1 @@
1
- {"version":3,"file":"path-edit-layer-move-point.d.ts","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/path-edit-layer-move-point.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,SAAS,EAIV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAInD,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,oBAAoB,EAAE,CACpB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EACD,QAAQ,CAAC,EAAE,OAAO,KACf,cAAc,CAAC;IACpB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAID,eAAO,MAAM,gBAAgB,uEAM1B,iBAAiB,6BA8GnB,CAAC"}
1
+ {"version":3,"file":"path-edit-layer-move-point.d.ts","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/path-edit-layer-move-point.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,SAAS,EAIV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKnD,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,oBAAoB,EAAE,CACpB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EACD,QAAQ,CAAC,EAAE,OAAO,KACf,cAAc,CAAC;IACpB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,gBAAgB,uEAM1B,iBAAiB,6BA0HnB,CAAC"}
@@ -2,10 +2,10 @@ import * as React from 'react';
2
2
  import { PATH_FUNC_TYPE, getPointsToPath, asVec, } from '@gedit/canvas-draw';
3
3
  import { PathEditLayerEventContext } from '../path-edit-layer';
4
4
  import clsx from 'clsx';
5
- const angleArray = [0, 45, 90, 135, 180, 225, 270, 315, 360];
5
+ import { shiftAngleArray } from './utils';
6
6
  export const PointMoveDefault = ({ getPosFromMouseEvent, paths, scale, closePath, currentPointId, }) => {
7
7
  const [movePoint, setMovePoint] = React.useState();
8
- const { onSceneAddEvent, isShiftKey } = React.useContext(PathEditLayerEventContext);
8
+ const { onSceneAddEvent, isShiftKey, isCtrlKey } = React.useContext(PathEditLayerEventContext);
9
9
  const shiftKeyRef = React.useRef(isShiftKey);
10
10
  const endPoint = paths[paths.length - 1];
11
11
  const startPoint = paths[0];
@@ -37,9 +37,9 @@ export const PointMoveDefault = ({ getPosFromMouseEvent, paths, scale, closePath
37
37
  const arc = asVec(lineStartPoint, pos);
38
38
  let angle = (arc.ang / Math.PI) * 180;
39
39
  angle = angle < 0 ? 360 + angle : angle;
40
- const angleIndex = angleArray.findIndex(a => a > angle);
41
- const prevAngle = (_a = angleArray[angleIndex - 1]) !== null && _a !== void 0 ? _a : angleArray[angleArray.length - 1];
42
- const nextAngle = angleArray[angleIndex];
40
+ const angleIndex = shiftAngleArray.findIndex(a => a > angle);
41
+ const prevAngle = (_a = shiftAngleArray[angleIndex - 1]) !== null && _a !== void 0 ? _a : shiftAngleArray[shiftAngleArray.length - 1];
42
+ const nextAngle = shiftAngleArray[angleIndex];
43
43
  const convertAngle = Math.abs(angle - prevAngle) > Math.abs(nextAngle - angle)
44
44
  ? nextAngle
45
45
  : prevAngle;
@@ -65,10 +65,18 @@ export const PointMoveDefault = ({ getPosFromMouseEvent, paths, scale, closePath
65
65
  event.dispose();
66
66
  event2.dispose();
67
67
  };
68
- }, []);
68
+ }, [lineStartPoint]);
69
69
  if (!movePoint) {
70
70
  return null;
71
71
  }
72
+ // 按住 ctrl 键,绘制直线
73
+ if (isCtrlKey &&
74
+ lineStartPoint &&
75
+ lineStartPoint.type !== PATH_FUNC_TYPE.STRAIGHT) {
76
+ lineStartPoint.type = PATH_FUNC_TYPE.BREAK;
77
+ lineStartPoint.x2 = lineStartPoint.x;
78
+ lineStartPoint.y2 = lineStartPoint.y;
79
+ }
72
80
  const line = lineStartPoint &&
73
81
  getPointsToPath([lineStartPoint, closePath ? lineEndPoint : movePoint]);
74
82
  return (React.createElement(React.Fragment, null,
@@ -1 +1 @@
1
- {"version":3,"file":"path-edit-layer-move-point.js","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/path-edit-layer-move-point.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-edit-layer-move-point.js","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/path-edit-layer-move-point.tsx"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { Bezier } from 'bezier-js';
4
4
  import { PositionSchema, ScaleSchema, SizeSchema } from '@gedit/utils';
5
5
  import { PointSchema } from './path-edit-layer-move-point';
6
6
  import { Editor2dPathNode } from '../../model';
7
+ export declare const shiftAngleArray: number[];
7
8
  export declare const transformRotation: (p1: Point, p2: Point, rotation: number) => Point;
8
9
  export declare const pathFuncIcon: {
9
10
  icon: React.JSX.Element;
@@ -39,7 +40,7 @@ export declare const getBezierPointArray: (point: PathChild, nextPoint: PathChil
39
40
  * 获取点击线上的新增点
40
41
  */
41
42
  export declare const getNewPoint: (point: PathChild, nextPoint: PathChild, pos: PointSchema, isShiftKey?: boolean) => PathChild;
42
- export declare const setBezierMovePoint: (path: PathChild, key: 'left' | 'right', pos: PointSchema, keybinding?: {
43
+ export declare const setBezierMovePoint: (path: PathChild, key: 'left' | 'right', pos: PointSchema, startPos?: PointSchema, keybinding?: {
43
44
  shiftKey: boolean;
44
45
  ctrlKey: boolean;
45
46
  }) => PathChild;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/utils.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,SAAS,EACT,KAAK,EAEL,cAAc,EAMd,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAEL,cAAc,EACd,WAAW,EACX,UAAU,EACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,eAAO,MAAM,iBAAiB,OAAQ,KAAK,MAAM,KAAK,YAAY,MAAM,UAYvE,CAAC;AAEF,eAAO,MAAM,YAAY;;;;GA8CxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,SAAU,SAAS;;;;CAUtD,CAAC;AAEF,eAAO,MAAM,YAAY,8GAAiD,CAAC;AAE3E,eAAO,MAAM,aAAa,UAAW,MAAM,WAqB1C,CAAC;AACF,eAAO,MAAM,qBAAqB,0GAE3B,KAAK,KACT;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAA;CAGpC,CAAC;AAEF,eAAO,MAAM,kBAAkB,0GAExB,KAAK,eACE,OAAO,KAClB;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAkB1B,CAAC;AACF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,MAAO,KAAK,KAAK,KAAK,KAAG,KAG5D,CAAC;AAEH,eAAO,MAAM,yBAAyB,MACjC,SAAS,KACT,SAAS,KACT,MAAM,KACR,SAOF,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,SAAS,aAAa,SAAS,6FA4CzE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,UACf,SAAS,aACL,SAAS,OACf,WAAW,eACJ,OAAO,KAClB,SAuCF,CAAC;AAEF,eAAO,MAAM,kBAAkB,SACvB,SAAS,OACV,MAAM,GAAG,OAAO,OAChB,WAAW,eACJ;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,KAIlD,SAgDF,CAAC;AAEF,eAAO,MAAM,eAAe,UACnB,WAAW,aACP;IAAE,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,UAC7C,WAAW;;;CAapB,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAC1B,WAAW,aACP;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,UAC3C,WAAW;;;CAUpB,CAAC;AAEF,eAAO,MAAM,kBAAkB,SACvB,gBAAgB;UACb,UAAU;;UAAmC,UAAU;CA8DjE,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/utils.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,SAAS,EACT,KAAK,EAEL,cAAc,EAMd,UAAU,EAGX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAEL,cAAc,EACd,WAAW,EACX,UAAU,EACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,eAAO,MAAM,eAAe,UAA4C,CAAC;AAEzE,eAAO,MAAM,iBAAiB,OAAQ,KAAK,MAAM,KAAK,YAAY,MAAM,UAYvE,CAAC;AAEF,eAAO,MAAM,YAAY;;;;GA8CxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,SAAU,SAAS;;;;CAUtD,CAAC;AAEF,eAAO,MAAM,YAAY,8GAAiD,CAAC;AAE3E,eAAO,MAAM,aAAa,UAAW,MAAM,WAqB1C,CAAC;AACF,eAAO,MAAM,qBAAqB,0GAE3B,KAAK,KACT;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAA;CAGpC,CAAC;AAEF,eAAO,MAAM,kBAAkB,0GAExB,KAAK,eACE,OAAO,KAClB;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAkB1B,CAAC;AACF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,MAAO,KAAK,KAAK,KAAK,KAAG,KAG5D,CAAC;AAEH,eAAO,MAAM,yBAAyB,MACjC,SAAS,KACT,SAAS,KACT,MAAM,KACR,SAOF,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,SAAS,aAAa,SAAS,6FA4CzE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,UACf,SAAS,aACL,SAAS,OACf,WAAW,eACJ,OAAO,KAClB,SAuCF,CAAC;AAEF,eAAO,MAAM,kBAAkB,SACvB,SAAS,OACV,MAAM,GAAG,OAAO,OAChB,WAAW,aACL,WAAW,eACV;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,KAIlD,SA+CF,CAAC;AAEF,eAAO,MAAM,eAAe,UACnB,WAAW,aACP;IAAE,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,UAC7C,WAAW;;;CAapB,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAC1B,WAAW,aACP;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,UAC3C,WAAW;;;CAUpB,CAAC;AAEF,eAAO,MAAM,kBAAkB,SACvB,gBAAgB;UACb,UAAU;;UAAmC,UAAU;CA8DjE,CAAC"}
@@ -4,6 +4,7 @@ import { toFixedValue, PATH_FUNC_TYPE, getLineWidth, quadraticToCubic, cubicToQu
4
4
  import { Bezier } from 'bezier-js';
5
5
  import { generateUuid, } from '@gedit/utils';
6
6
  const cloneDeep = require('lodash.clonedeep');
7
+ export const shiftAngleArray = [0, 45, 90, 135, 180, 225, 270, 315, 360];
7
8
  export const transformRotation = (p1, p2, rotation) => {
8
9
  if (!rotation) {
9
10
  return p1;
@@ -206,7 +207,7 @@ export const getNewPoint = (point, nextPoint, pos, isShiftKey = false) => {
206
207
  }
207
208
  return newPoint;
208
209
  };
209
- export const setBezierMovePoint = (path, key, pos, keybinding = {
210
+ export const setBezierMovePoint = (path, key, pos, startPos, keybinding = {
210
211
  shiftKey: false,
211
212
  ctrlKey: false,
212
213
  }) => {
@@ -218,13 +219,12 @@ export const setBezierMovePoint = (path, key, pos, keybinding = {
218
219
  const y1 = key === 'left' ? 'y2' : 'y1';
219
220
  const center = { x: path.x, y: path.y };
220
221
  let currentPoint = { x: toFixedValue(pos.x, 2), y: toFixedValue(pos.y, 2) };
221
- const start = { x: path[x] || 0, y: path[y] || 0 };
222
222
  path[x] = currentPoint.x;
223
223
  path[y] = currentPoint.y;
224
224
  // 按信 shift 键,锁定水平移动
225
225
  if (shiftKey) {
226
226
  // 垂直点
227
- const end = pedalPoint(center, start, currentPoint);
227
+ const end = pedalPoint(center, startPos || { x: 0, y: 0 }, currentPoint);
228
228
  path[x] = end.x;
229
229
  path[y] = end.y;
230
230
  currentPoint = { x: end.x, y: end.y };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/utils.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/browser/playground/path-edit/utils.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"path-edit-layer.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/path-edit-layer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-edit-layer.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/path-edit-layer.tsx"],"names":[],"mappings":"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"}
@@ -13,9 +13,9 @@ import { DocumentEntity } from './entities/document-entity';
13
13
  import { domUtils } from '@gedit/utils/lib/browser';
14
14
  import { GameObjectBaseType } from '@gedit/render-engine';
15
15
  import { TreeSelection } from '@gedit/tree';
16
- import { PATH_FUNC_TYPE, toFixedValue, } from '@gedit/canvas-draw';
16
+ import { asVec, PATH_FUNC_TYPE, toFixedValue, } from '@gedit/canvas-draw';
17
17
  import { deepClone, DisposableCollection, generateUuid, } from '@gedit/utils';
18
- import { SvgPath, getNewPoint, setBezierMovePoint, updatePathNodeData, inverseTransformToData, transformToData, } from './path-edit';
18
+ import { SvgPath, getNewPoint, setBezierMovePoint, updatePathNodeData, inverseTransformToData, transformToData, shiftAngleArray, } from './path-edit';
19
19
  import { isOSX } from '@gedit/application-common';
20
20
  import { getParallelPositionByPoint } from '../utils/bezier.path.utils';
21
21
  export const PathEditLayerEventContext = React.createContext({});
@@ -563,23 +563,13 @@ export class PathEditLayer extends Layer {
563
563
  const selectBound = this.selectorConfig.toRectangle(this.config.finalScale);
564
564
  const { paths = [], closed } = ((_a = this.currentPathNode) === null || _a === void 0 ? void 0 : _a.path) || {};
565
565
  const pathSelects = [];
566
- const { position = { x: 0, y: 1 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode;
567
- const offset = this.getBoundsOffset();
568
- const center = {
569
- x: -offset.x,
570
- y: -offset.y,
571
- };
572
566
  paths.forEach(p => {
573
- const { x: $x, y: $y } = p;
574
- let x = $x;
575
- let y = $y;
576
- const r = transformToData({ x, y }, { scale, rotation }, center);
577
- x = r.x + position.x;
578
- y = r.y + position.y;
579
- const wh = (4 / this.config.finalScale) * 2;
580
- if (x >= selectBound.x && // 左
567
+ const { x, y } = this.pathPosToCanvasPos(p);
568
+ // 半径
569
+ const wh = 4 * this.config.finalScale;
570
+ if (x - wh >= selectBound.x && //
581
571
  x + wh <= selectBound.x + selectBound.width && // 右
582
- y >= selectBound.y && // 上
572
+ y - wh >= selectBound.y && // 上
583
573
  y + wh <= selectBound.y + selectBound.height // 下
584
574
  ) {
585
575
  pathSelects.push({
@@ -629,8 +619,8 @@ export class PathEditLayer extends Layer {
629
619
  event.stopPropagation();
630
620
  this.startDrag(event.clientX, event.clientY, {
631
621
  onDragStart: e => {
632
- var _a, _b, _c;
633
- const { selectMode } = this.pathPointSelection || {};
622
+ var _a, _b, _c, _d, _e, _f;
623
+ const { selectMode, selection } = this.pathPointSelection || {};
634
624
  /**
635
625
  * 拦截画布点击事件,不处理绘制;
636
626
  * 1. 闭合路径时;
@@ -641,25 +631,48 @@ export class PathEditLayer extends Layer {
641
631
  // 判断当前 select 是否 path 路径
642
632
  (this.currentPathNode && this.currentPathNode.path.closed) ||
643
633
  selectMode !== PathSelectMode.ADD_PATH ||
644
- (((_a = this.pathPointSelection) === null || _a === void 0 ? void 0 : _a.selection) &&
645
- this.pathPointSelection.selection.length > 1)) {
634
+ (selection && selection.length > 1)) {
646
635
  return;
647
636
  }
648
- const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
649
- const offset = this.getBoundsOffset();
650
- let x = e.endPos.x / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) -
651
- position.x -
652
- offset.x;
653
- let y = e.endPos.y / (((_c = this.config) === null || _c === void 0 ? void 0 : _c.finalScale) || 1) -
654
- position.y -
655
- offset.y;
656
- const center = {
657
- x: -offset.x,
658
- y: -offset.y,
659
- };
660
- const { x: rx, y: ry } = inverseTransformToData({ x, y }, { scale, rotation }, center);
661
- x = rx;
662
- y = ry;
637
+ let { x, y } = this.canvasPosToPathPos({
638
+ x: e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1),
639
+ y: e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1),
640
+ });
641
+ if (selection) {
642
+ const selectionPoint = selection[0];
643
+ const index = (_d = (_c = this.currentPathNode) === null || _c === void 0 ? void 0 : _c.path.paths.findIndex(c => c.id === selectionPoint.pointId)) !== null && _d !== void 0 ? _d : -1;
644
+ const node = (_e = this.currentPathNode) === null || _e === void 0 ? void 0 : _e.path.paths[index];
645
+ if (node) {
646
+ // 按住 ctrl 加点时;
647
+ if (this.ctrlKey && node.type !== PATH_FUNC_TYPE.STRAIGHT) {
648
+ const isReverse = index === 0;
649
+ if (isReverse) {
650
+ node.x1 = node.x;
651
+ node.y1 = node.y;
652
+ }
653
+ else {
654
+ node.x2 = node.x;
655
+ node.y2 = node.y;
656
+ }
657
+ }
658
+ // 按住 shift 时,生成固定角度的点;
659
+ if (this.shiftKey) {
660
+ const arc = asVec(node, { x, y });
661
+ let angle = (arc.ang / Math.PI) * 180;
662
+ angle = angle < 0 ? 360 + angle : angle;
663
+ const angleIndex = shiftAngleArray.findIndex(a => a > angle);
664
+ const prevAngle = (_f = shiftAngleArray[angleIndex - 1]) !== null && _f !== void 0 ? _f : shiftAngleArray[shiftAngleArray.length - 1];
665
+ const nextAngle = shiftAngleArray[angleIndex];
666
+ const convertAngle = Math.abs(angle - prevAngle) > Math.abs(nextAngle - angle)
667
+ ? nextAngle
668
+ : prevAngle;
669
+ // 取转换角度后的坐标值
670
+ const rad = (convertAngle / 180) * Math.PI;
671
+ x = Math.cos(rad) * arc.len + node.x;
672
+ y = Math.sin(rad) * arc.len + node.y;
673
+ }
674
+ }
675
+ }
663
676
  this.startPos = {
664
677
  x,
665
678
  y,
@@ -680,28 +693,31 @@ export class PathEditLayer extends Layer {
680
693
  return;
681
694
  }
682
695
  // const pos = this.getPosFromMouseEvent(e);
683
- const { path, position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
684
- const offset = this.getBoundsOffset();
685
- let x = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) -
686
- position.x -
687
- offset.x;
688
- let y = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) -
689
- position.y -
690
- offset.y;
691
- const center = {
692
- x: -offset.x,
693
- y: -offset.y,
694
- };
695
- const { x: rx, y: ry } = inverseTransformToData({ x, y }, { scale, rotation }, center);
696
- x = rx;
697
- y = ry;
696
+ const { path } = this.currentPathNode || {};
697
+ const eX = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1);
698
+ const eY = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1);
699
+ let { x, y } = this.canvasPosToPathPos({ x: eX, y: eY });
698
700
  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); });
699
701
  // 生成贝赛尔点;
700
702
  if (pathNode &&
701
703
  Math.max(Math.abs(x - this.startPos.x), Math.abs(y - this.startPos.y)) >= 5) {
702
- const x1 = pathNode.x * 2 - x;
703
- const y1 = pathNode.y * 2 - y;
704
+ let x1 = pathNode.x * 2 - x;
705
+ let y1 = pathNode.y * 2 - y;
704
706
  const reverse = this.isOnePoint();
707
+ if (this.shiftKey) {
708
+ // 计算原点到当前点的角度
709
+ const a = Math.abs(x - this.startPos.x);
710
+ const b = Math.abs(y - this.startPos.y);
711
+ const max = Math.max(a, b);
712
+ if (max === a) {
713
+ y = this.startPos.y;
714
+ y1 = this.startPos.y;
715
+ }
716
+ else {
717
+ x = this.startPos.x;
718
+ x1 = this.startPos.x;
719
+ }
720
+ }
705
721
  pathNode.x2 = toFixedValue(reverse ? x1 : x, 2);
706
722
  pathNode.y2 = toFixedValue(reverse ? y1 : y, 2);
707
723
  pathNode.x1 = toFixedValue(reverse ? x : x1, 2);
@@ -859,9 +875,10 @@ export class PathEditLayer extends Layer {
859
875
  e.preventDefault();
860
876
  e.stopPropagation();
861
877
  const pos = this.getPosFromMouseEvent(e);
878
+ const { x: startX, y: startY } = this.canvasPosToPathPos(pos);
862
879
  this.bezierStartPos = {
863
- x: pos.x,
864
- y: pos.y,
880
+ x: startX,
881
+ y: startY,
865
882
  key,
866
883
  path: p,
867
884
  };
@@ -875,22 +892,19 @@ export class PathEditLayer extends Layer {
875
892
  onDrag: e => {
876
893
  var _a, _b;
877
894
  if (this.bezierStartPos) {
878
- const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, path = { paths: [] }, } = this.currentPathNode || {};
879
- const offset = this.getBoundsOffset();
880
- let x = e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) - position.x - offset.x;
881
- let y = e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) - position.y - offset.y;
882
- const center = {
883
- x: -offset.x,
884
- y: -offset.y,
885
- };
886
- const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation }, center);
887
- x = currentX;
888
- y = currentY;
895
+ const { path = { paths: [] } } = this.currentPathNode || {};
896
+ const { x, y } = this.canvasPosToPathPos({
897
+ x: e.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1),
898
+ y: e.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1),
899
+ });
889
900
  const pathNode = path.paths.find(c => c.id === p.id);
890
901
  if (!pathNode) {
891
902
  return;
892
903
  }
893
- setBezierMovePoint(pathNode, key, { x, y }, { shiftKey: this.shiftKey, ctrlKey: this.ctrlKey });
904
+ setBezierMovePoint(pathNode, key, { x, y }, this.bezierStartPos, {
905
+ shiftKey: this.shiftKey,
906
+ ctrlKey: this.ctrlKey,
907
+ });
894
908
  this.updateNodeData(true);
895
909
  }
896
910
  },
@@ -999,21 +1013,10 @@ export class PathEditLayer extends Layer {
999
1013
  };
1000
1014
  });
1001
1015
  const startNode = selectionNodes.map((s) => startNodeClone.find((c) => c.id === s.id));
1002
- const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0, } = this.currentPathNode || {};
1003
- const offset = this.getBoundsOffset();
1004
- let x = dragEvent.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1) -
1005
- position.x -
1006
- offset.x;
1007
- let y = dragEvent.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1) -
1008
- position.y -
1009
- offset.y;
1010
- const center = {
1011
- x: -offset.x,
1012
- y: -offset.y,
1013
- };
1014
- const { x: currentX, y: currentY } = inverseTransformToData({ x, y }, { scale, rotation }, center);
1015
- x = currentX;
1016
- y = currentY;
1016
+ const { x, y } = this.canvasPosToPathPos({
1017
+ x: dragEvent.endPos.x / (((_a = this.config) === null || _a === void 0 ? void 0 : _a.finalScale) || 1),
1018
+ y: dragEvent.endPos.y / (((_b = this.config) === null || _b === void 0 ? void 0 : _b.finalScale) || 1),
1019
+ });
1017
1020
  selectionNodes.forEach((p, i) => {
1018
1021
  const start = startNode[i];
1019
1022
  const d = delta[i];
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gedit/editor-2d",
3
- "version": "0.3.16",
3
+ "version": "0.3.17",
4
4
  "license": "MIT",
5
5
  "main": "lib/browser/index",
6
6
  "typings": "lib/browser/index.d.ts",
@@ -41,5 +41,5 @@
41
41
  "nyc": {
42
42
  "extends": "../../configs/nyc.json"
43
43
  },
44
- "gitHead": "81ce267bf382a960aa886f9c204b5ee5cbcaf1d2"
44
+ "gitHead": "256242203f128bbb2105455007cbebfd71439dec"
45
45
  }
@@ -8,6 +8,7 @@ import {
8
8
  import { PositionSchema } from '@gedit/playground';
9
9
  import { PathEditLayerEventContext } from '../path-edit-layer';
10
10
  import clsx from 'clsx';
11
+ import { shiftAngleArray } from './utils';
11
12
 
12
13
  export interface PointSchema extends PositionSchema {
13
14
  id?: string | number;
@@ -27,8 +28,6 @@ export interface PointDefaultProps {
27
28
  currentPointId?: string;
28
29
  }
29
30
 
30
- const angleArray = [0, 45, 90, 135, 180, 225, 270, 315, 360];
31
-
32
31
  export const PointMoveDefault = ({
33
32
  getPosFromMouseEvent,
34
33
  paths,
@@ -37,7 +36,7 @@ export const PointMoveDefault = ({
37
36
  currentPointId,
38
37
  }: PointDefaultProps) => {
39
38
  const [movePoint, setMovePoint] = React.useState<PathChild>();
40
- const { onSceneAddEvent, isShiftKey } = React.useContext(
39
+ const { onSceneAddEvent, isShiftKey, isCtrlKey } = React.useContext(
41
40
  PathEditLayerEventContext
42
41
  );
43
42
  const shiftKeyRef = React.useRef(isShiftKey);
@@ -82,10 +81,11 @@ export const PointMoveDefault = ({
82
81
  const arc = asVec(lineStartPoint, pos);
83
82
  let angle = (arc.ang / Math.PI) * 180;
84
83
  angle = angle < 0 ? 360 + angle : angle;
85
- const angleIndex = angleArray.findIndex(a => a > angle);
84
+ const angleIndex = shiftAngleArray.findIndex(a => a > angle);
86
85
  const prevAngle =
87
- angleArray[angleIndex - 1] ?? angleArray[angleArray.length - 1];
88
- const nextAngle = angleArray[angleIndex];
86
+ shiftAngleArray[angleIndex - 1] ??
87
+ shiftAngleArray[shiftAngleArray.length - 1];
88
+ const nextAngle = shiftAngleArray[angleIndex];
89
89
  const convertAngle =
90
90
  Math.abs(angle - prevAngle) > Math.abs(nextAngle - angle)
91
91
  ? nextAngle
@@ -115,10 +115,21 @@ export const PointMoveDefault = ({
115
115
  event.dispose();
116
116
  event2.dispose();
117
117
  };
118
- }, []);
118
+ }, [lineStartPoint]);
119
119
  if (!movePoint) {
120
120
  return null;
121
121
  }
122
+ // 按住 ctrl 键,绘制直线
123
+ if (
124
+ isCtrlKey &&
125
+ lineStartPoint &&
126
+ lineStartPoint.type !== PATH_FUNC_TYPE.STRAIGHT
127
+ ) {
128
+ lineStartPoint.type = PATH_FUNC_TYPE.BREAK;
129
+ lineStartPoint.x2 = lineStartPoint.x;
130
+ lineStartPoint.y2 = lineStartPoint.y;
131
+ }
132
+
122
133
  const line =
123
134
  lineStartPoint &&
124
135
  getPointsToPath([lineStartPoint, closePath ? lineEndPoint : movePoint]);
@@ -25,6 +25,8 @@ import { PointSchema } from './path-edit-layer-move-point';
25
25
  import { Editor2dPathNode } from '../../model';
26
26
  const cloneDeep = require('lodash.clonedeep');
27
27
 
28
+ export const shiftAngleArray = [0, 45, 90, 135, 180, 225, 270, 315, 360];
29
+
28
30
  export const transformRotation = (p1: Point, p2: Point, rotation: number) => {
29
31
  if (!rotation) {
30
32
  return p1;
@@ -231,7 +233,7 @@ export const getNewPoint = (
231
233
  point: PathChild,
232
234
  nextPoint: PathChild,
233
235
  pos: PointSchema,
234
- isShiftKey: boolean = false,
236
+ isShiftKey: boolean = false
235
237
  ): PathChild => {
236
238
  const bezier = getBezierPointArray(point, nextPoint);
237
239
  const hull = getBezierHullByPos(bezier, pos, isShiftKey);
@@ -277,6 +279,7 @@ export const setBezierMovePoint = (
277
279
  path: PathChild,
278
280
  key: 'left' | 'right',
279
281
  pos: PointSchema,
282
+ startPos?: PointSchema,
280
283
  keybinding: { shiftKey: boolean; ctrlKey: boolean } = {
281
284
  shiftKey: false,
282
285
  ctrlKey: false,
@@ -290,13 +293,12 @@ export const setBezierMovePoint = (
290
293
  const y1 = key === 'left' ? 'y2' : 'y1';
291
294
  const center = { x: path.x, y: path.y };
292
295
  let currentPoint = { x: toFixedValue(pos.x, 2), y: toFixedValue(pos.y, 2) };
293
- const start = { x: path[x] || 0, y: path[y] || 0 };
294
296
  path[x] = currentPoint.x;
295
297
  path[y] = currentPoint.y;
296
298
  // 按信 shift 键,锁定水平移动
297
299
  if (shiftKey) {
298
300
  // 垂直点
299
- const end = pedalPoint(center, start, currentPoint);
301
+ const end = pedalPoint(center, startPos || {x: 0, y: 0}, currentPoint);
300
302
  path[x] = end.x;
301
303
  path[y] = end.y;
302
304
  currentPoint = { x: end.x, y: end.y };
@@ -17,6 +17,7 @@ import type { Editor2dDocument, Editor2dPathNode } from '../model';
17
17
  import { PlaygroundContext2d } from './playground-context';
18
18
  import { SelectableTreeNode, TreeSelection } from '@gedit/tree';
19
19
  import {
20
+ asVec,
20
21
  PathChild,
21
22
  PathSchema,
22
23
  PATH_FUNC_TYPE,
@@ -37,6 +38,7 @@ import {
37
38
  updatePathNodeData,
38
39
  inverseTransformToData,
39
40
  transformToData,
41
+ shiftAngleArray,
40
42
  } from './path-edit';
41
43
 
42
44
  import { Command } from '@gedit/command';
@@ -685,28 +687,14 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
685
687
  );
686
688
  const { paths = [], closed } = this.currentPathNode?.path || {};
687
689
  const pathSelects: PathPointSelection[] = [];
688
- const {
689
- position = { x: 0, y: 1 },
690
- scale = { x: 1, y: 1 },
691
- rotation = 0,
692
- } = this.currentPathNode!;
693
- const offset = this.getBoundsOffset();
694
- const center = {
695
- x: -offset.x,
696
- y: -offset.y,
697
- };
698
690
  paths.forEach(p => {
699
- const { x: $x, y: $y } = p;
700
- let x = $x;
701
- let y = $y;
702
- const r = transformToData({ x, y }, { scale, rotation }, center);
703
- x = r.x + position.x;
704
- y = r.y + position.y;
705
- const wh = (4 / this.config.finalScale) * 2;
691
+ const { x, y } = this.pathPosToCanvasPos(p);
692
+ // 半径
693
+ const wh = 4 * this.config.finalScale;
706
694
  if (
707
- x >= selectBound.x && // 左
695
+ x - wh >= selectBound.x && // 左
708
696
  x + wh <= selectBound.x + selectBound.width && // 右
709
- y >= selectBound.y && // 上
697
+ y - wh >= selectBound.y && // 上
710
698
  y + wh <= selectBound.y + selectBound.height // 下
711
699
  ) {
712
700
  pathSelects.push({
@@ -756,7 +744,7 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
756
744
  event.stopPropagation();
757
745
  this.startDrag(event.clientX, event.clientY, {
758
746
  onDragStart: e => {
759
- const { selectMode } = this.pathPointSelection || {};
747
+ const { selectMode, selection } = this.pathPointSelection || {};
760
748
  /**
761
749
  * 拦截画布点击事件,不处理绘制;
762
750
  * 1. 闭合路径时;
@@ -767,36 +755,58 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
767
755
  // 判断当前 select 是否 path 路径
768
756
  (this.currentPathNode && this.currentPathNode.path.closed) ||
769
757
  selectMode !== PathSelectMode.ADD_PATH ||
770
- (this.pathPointSelection?.selection &&
771
- this.pathPointSelection.selection.length > 1)
758
+ (selection && selection.length > 1)
772
759
  ) {
773
760
  return;
774
761
  }
775
- const {
776
- position = { x: 0, y: 0 },
777
- scale = { x: 1, y: 1 },
778
- rotation = 0,
779
- } = this.currentPathNode || {};
780
- const offset = this.getBoundsOffset();
781
- let x =
782
- e.endPos.x / (this.config?.finalScale || 1) -
783
- position.x -
784
- offset.x;
785
- let y =
786
- e.endPos.y / (this.config?.finalScale || 1) -
787
- position.y -
788
- offset.y;
789
- const center = {
790
- x: -offset.x,
791
- y: -offset.y,
792
- };
793
- const { x: rx, y: ry } = inverseTransformToData(
794
- { x, y },
795
- { scale, rotation },
796
- center
797
- );
798
- x = rx;
799
- y = ry;
762
+ let { x, y } = this.canvasPosToPathPos({
763
+ x: e.endPos.x / (this.config?.finalScale || 1),
764
+ y: e.endPos.y / (this.config?.finalScale || 1),
765
+ });
766
+
767
+ if (selection) {
768
+ const selectionPoint = selection[0];
769
+ const index =
770
+ this.currentPathNode?.path.paths.findIndex(
771
+ c => c.id === selectionPoint.pointId
772
+ ) ?? -1;
773
+ const node = this.currentPathNode?.path.paths[index];
774
+ if (node) {
775
+ // 按住 ctrl 加点时;
776
+ if (this.ctrlKey && node.type !== PATH_FUNC_TYPE.STRAIGHT) {
777
+ const isReverse = index === 0;
778
+ if (isReverse) {
779
+ node.x1 = node.x;
780
+ node.y1 = node.y;
781
+ } else {
782
+ node.x2 = node.x;
783
+ node.y2 = node.y;
784
+ }
785
+ }
786
+ // 按住 shift 时,生成固定角度的点;
787
+ if (this.shiftKey) {
788
+ const arc = asVec(node, { x, y });
789
+ let angle = (arc.ang / Math.PI) * 180;
790
+ angle = angle < 0 ? 360 + angle : angle;
791
+ const angleIndex = shiftAngleArray.findIndex(
792
+ a => a > angle
793
+ );
794
+ const prevAngle =
795
+ shiftAngleArray[angleIndex - 1] ??
796
+ shiftAngleArray[shiftAngleArray.length - 1];
797
+ const nextAngle = shiftAngleArray[angleIndex];
798
+ const convertAngle =
799
+ Math.abs(angle - prevAngle) > Math.abs(nextAngle - angle)
800
+ ? nextAngle
801
+ : prevAngle;
802
+ // 取转换角度后的坐标值
803
+ const rad = (convertAngle / 180) * Math.PI;
804
+ x = Math.cos(rad) * arc.len + node.x;
805
+ y = Math.sin(rad) * arc.len + node.y;
806
+ }
807
+ }
808
+ }
809
+
800
810
  this.startPos = {
801
811
  x,
802
812
  y,
@@ -816,32 +826,10 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
816
826
  return;
817
827
  }
818
828
  // const pos = this.getPosFromMouseEvent(e);
819
- const {
820
- path,
821
- position = { x: 0, y: 0 },
822
- scale = { x: 1, y: 1 },
823
- rotation = 0,
824
- } = this.currentPathNode || {};
825
- const offset = this.getBoundsOffset();
826
- let x =
827
- e.endPos.x / (this.config?.finalScale || 1) -
828
- position.x -
829
- offset.x;
830
- let y =
831
- e.endPos.y / (this.config?.finalScale || 1) -
832
- position.y -
833
- offset.y;
834
- const center = {
835
- x: -offset.x,
836
- y: -offset.y,
837
- };
838
- const { x: rx, y: ry } = inverseTransformToData(
839
- { x, y },
840
- { scale, rotation },
841
- center
842
- );
843
- x = rx;
844
- y = ry;
829
+ const { path } = this.currentPathNode || {};
830
+ const eX = e.endPos.x / (this.config?.finalScale || 1);
831
+ const eY = e.endPos.y / (this.config?.finalScale || 1);
832
+ let { x, y } = this.canvasPosToPathPos({ x: eX, y: eY });
845
833
 
846
834
  const pathNode = path?.paths.find(
847
835
  c => c.id === this.startPos?.id
@@ -854,9 +842,22 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
854
842
  Math.abs(y - this.startPos.y)
855
843
  ) >= 5
856
844
  ) {
857
- const x1 = pathNode.x * 2 - x;
858
- const y1 = pathNode.y * 2 - y;
845
+ let x1 = pathNode.x * 2 - x;
846
+ let y1 = pathNode.y * 2 - y;
859
847
  const reverse = this.isOnePoint();
848
+ if (this.shiftKey) {
849
+ // 计算原点到当前点的角度
850
+ const a = Math.abs(x - this.startPos.x);
851
+ const b = Math.abs(y - this.startPos.y);
852
+ const max = Math.max(a, b);
853
+ if (max === a) {
854
+ y = this.startPos.y;
855
+ y1 = this.startPos.y;
856
+ } else {
857
+ x = this.startPos.x;
858
+ x1 = this.startPos.x;
859
+ }
860
+ }
860
861
  pathNode.x2 = toFixedValue(reverse ? x1 : x, 2);
861
862
  pathNode.y2 = toFixedValue(reverse ? y1 : y, 2);
862
863
  pathNode.x1 = toFixedValue(reverse ? x : x1, 2);
@@ -1041,9 +1042,10 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
1041
1042
  e.preventDefault();
1042
1043
  e.stopPropagation();
1043
1044
  const pos = this.getPosFromMouseEvent(e);
1045
+ const { x: startX, y: startY } = this.canvasPosToPathPos(pos);
1044
1046
  this.bezierStartPos = {
1045
- x: pos.x,
1046
- y: pos.y,
1047
+ x: startX,
1048
+ y: startY,
1047
1049
  key,
1048
1050
  path: p,
1049
1051
  };
@@ -1056,38 +1058,19 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
1056
1058
  this.startDrag(e.clientX, e.clientY, {
1057
1059
  onDrag: e => {
1058
1060
  if (this.bezierStartPos) {
1059
- const {
1060
- position = { x: 0, y: 0 },
1061
- scale = { x: 1, y: 1 },
1062
- rotation = 0,
1063
- path = { paths: [] },
1064
- } = this.currentPathNode || {};
1065
- const offset = this.getBoundsOffset();
1066
- let x =
1067
- e.endPos.x / (this.config?.finalScale || 1) - position.x - offset.x;
1068
- let y =
1069
- e.endPos.y / (this.config?.finalScale || 1) - position.y - offset.y;
1070
- const center = {
1071
- x: -offset.x,
1072
- y: -offset.y,
1073
- };
1074
- const { x: currentX, y: currentY } = inverseTransformToData(
1075
- { x, y },
1076
- { scale, rotation },
1077
- center
1078
- );
1079
- x = currentX;
1080
- y = currentY;
1061
+ const { path = { paths: [] } } = this.currentPathNode || {};
1062
+ const { x, y } = this.canvasPosToPathPos({
1063
+ x: e.endPos.x / (this.config?.finalScale || 1),
1064
+ y: e.endPos.y / (this.config?.finalScale || 1),
1065
+ });
1081
1066
  const pathNode = path.paths.find(c => c.id === p.id);
1082
1067
  if (!pathNode) {
1083
1068
  return;
1084
1069
  }
1085
- setBezierMovePoint(
1086
- pathNode,
1087
- key,
1088
- { x, y },
1089
- { shiftKey: this.shiftKey, ctrlKey: this.ctrlKey }
1090
- );
1070
+ setBezierMovePoint(pathNode, key, { x, y }, this.bezierStartPos, {
1071
+ shiftKey: this.shiftKey,
1072
+ ctrlKey: this.ctrlKey,
1073
+ });
1091
1074
  this.updateNodeData(true);
1092
1075
  }
1093
1076
  },
@@ -1207,31 +1190,10 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
1207
1190
  const startNode = selectionNodes.map((s: PathChild) =>
1208
1191
  startNodeClone.find((c: PathChild) => c.id === s.id)
1209
1192
  );
1210
- const {
1211
- position = { x: 0, y: 0 },
1212
- scale = { x: 1, y: 1 },
1213
- rotation = 0,
1214
- } = this.currentPathNode || {};
1215
- const offset = this.getBoundsOffset();
1216
- let x =
1217
- dragEvent.endPos.x / (this.config?.finalScale || 1) -
1218
- position.x -
1219
- offset.x;
1220
- let y =
1221
- dragEvent.endPos.y / (this.config?.finalScale || 1) -
1222
- position.y -
1223
- offset.y;
1224
- const center = {
1225
- x: -offset.x,
1226
- y: -offset.y,
1227
- };
1228
- const { x: currentX, y: currentY } = inverseTransformToData(
1229
- { x, y },
1230
- { scale, rotation },
1231
- center
1232
- );
1233
- x = currentX;
1234
- y = currentY;
1193
+ const { x, y } = this.canvasPosToPathPos({
1194
+ x: dragEvent.endPos.x / (this.config?.finalScale || 1),
1195
+ y: dragEvent.endPos.y / (this.config?.finalScale || 1),
1196
+ });
1235
1197
  selectionNodes.forEach((p: PathChild, i) => {
1236
1198
  const start = startNode[i];
1237
1199
  const d = delta[i];
@@ -1271,7 +1233,10 @@ export class PathEditLayer extends Layer<PlaygroundContext2d> {
1271
1233
  protected canvasPosToPathPos(p: {
1272
1234
  x: number;
1273
1235
  y: number;
1274
- }): { x: number; y: number } {
1236
+ }): {
1237
+ x: number;
1238
+ y: number;
1239
+ } {
1275
1240
  const { position = { x: 0, y: 0 }, scale = { x: 1, y: 1 }, rotation = 0 } =
1276
1241
  this.currentPathNode || {};
1277
1242
  const offset = this.getBoundsOffset();