@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.
- package/lib/browser/playground/path-edit/path-edit-layer-move-point.d.ts.map +1 -1
- package/lib/browser/playground/path-edit/path-edit-layer-move-point.js +14 -6
- package/lib/browser/playground/path-edit/path-edit-layer-move-point.js.map +1 -1
- package/lib/browser/playground/path-edit/utils.d.ts +2 -1
- package/lib/browser/playground/path-edit/utils.d.ts.map +1 -1
- package/lib/browser/playground/path-edit/utils.js +3 -3
- package/lib/browser/playground/path-edit/utils.js.map +1 -1
- package/lib/browser/playground/path-edit-layer.d.ts.map +1 -1
- package/lib/browser/playground/path-edit-layer.js +85 -82
- package/lib/browser/playground/path-edit-layer.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/playground/path-edit/path-edit-layer-move-point.tsx +18 -7
- package/src/browser/playground/path-edit/utils.tsx +5 -3
- package/src/browser/playground/path-edit-layer.tsx +96 -131
|
@@ -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;
|
|
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
|
-
|
|
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 =
|
|
41
|
-
const prevAngle = (_a =
|
|
42
|
-
const nextAngle =
|
|
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":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAEL,cAAc,EACd,eAAe,EACf,KAAK,GACN,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
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,
|
|
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,
|
|
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":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAEL,uBAAuB,EAEvB,KAAK,EAEL,wBAAwB,EAGxB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,
|
|
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
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
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
|
-
(
|
|
645
|
-
this.pathPointSelection.selection.length > 1)) {
|
|
634
|
+
(selection && selection.length > 1)) {
|
|
646
635
|
return;
|
|
647
636
|
}
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
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
|
|
684
|
-
const
|
|
685
|
-
|
|
686
|
-
|
|
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
|
-
|
|
703
|
-
|
|
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:
|
|
864
|
-
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 {
|
|
879
|
-
const
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
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 },
|
|
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 {
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
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.
|
|
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": "
|
|
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 =
|
|
84
|
+
const angleIndex = shiftAngleArray.findIndex(a => a > angle);
|
|
86
85
|
const prevAngle =
|
|
87
|
-
|
|
88
|
-
|
|
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,
|
|
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
|
|
700
|
-
|
|
701
|
-
|
|
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
|
-
(
|
|
771
|
-
this.pathPointSelection.selection.length > 1)
|
|
758
|
+
(selection && selection.length > 1)
|
|
772
759
|
) {
|
|
773
760
|
return;
|
|
774
761
|
}
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
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
|
-
|
|
821
|
-
|
|
822
|
-
|
|
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
|
-
|
|
858
|
-
|
|
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:
|
|
1046
|
-
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
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
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
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
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
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
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
|
-
}): {
|
|
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();
|