@visactor/vrender-kits 0.17.0-alpha.7 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/canvas/contributions/browser/canvas.js +2 -4
- package/cjs/canvas/contributions/browser/canvas.js.map +1 -1
- package/cjs/canvas/contributions/browser/context.d.ts +1 -0
- package/cjs/canvas/contributions/browser/context.js +17 -16
- package/cjs/canvas/contributions/browser/context.js.map +1 -1
- package/cjs/env/all.js +2 -2
- package/cjs/env/all.js.map +1 -1
- package/cjs/env/browser.d.ts +2 -1
- package/cjs/env/browser.js +10 -3
- package/cjs/env/browser.js.map +1 -1
- package/cjs/env/contributions/module.d.ts +1 -8
- package/cjs/env/contributions/module.js +1 -57
- package/cjs/env/contributions/module.js.map +1 -1
- package/cjs/env/contributions/wx-contribution.js +1 -2
- package/cjs/env/feishu.d.ts +2 -1
- package/cjs/env/feishu.js +10 -3
- package/cjs/env/feishu.js.map +1 -1
- package/cjs/env/index.d.ts +0 -1
- package/cjs/env/index.js +2 -3
- package/cjs/env/index.js.map +1 -1
- package/cjs/env/lynx.d.ts +2 -1
- package/cjs/env/lynx.js +10 -3
- package/cjs/env/lynx.js.map +1 -1
- package/cjs/env/node.d.ts +2 -1
- package/cjs/env/node.js +11 -4
- package/cjs/env/node.js.map +1 -1
- package/cjs/env/taro.d.ts +2 -1
- package/cjs/env/taro.js +10 -3
- package/cjs/env/taro.js.map +1 -1
- package/cjs/env/wx.d.ts +2 -1
- package/cjs/env/wx.js +10 -3
- package/cjs/env/wx.js.map +1 -1
- package/cjs/event/extension/gesture.d.ts +5 -1
- package/cjs/event/extension/gesture.js +10 -4
- package/cjs/event/extension/gesture.js.map +1 -1
- package/cjs/event/extension/index.js +2 -1
- package/cjs/event/extension/interface.d.ts +42 -0
- package/cjs/event/extension/interface.js +6 -0
- package/cjs/event/extension/interface.js.map +1 -0
- package/cjs/picker/canvas-picker-service.d.ts +1 -13
- package/cjs/picker/canvas-picker-service.js +7 -28
- package/cjs/picker/canvas-picker-service.js.map +1 -1
- package/cjs/picker/contributions/canvas-picker/module.js +16 -18
- package/cjs/picker/contributions/canvas-picker/module.js.map +1 -1
- package/cjs/picker/contributions/canvas-picker/polygon-picker.js +1 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -1
- package/cjs/picker/contributions/math-picker/module.js +10 -11
- package/cjs/picker/contributions/math-picker/module.js.map +1 -1
- package/cjs/picker/index.d.ts +1 -1
- package/cjs/picker/index.js +1 -21
- package/cjs/picker/index.js.map +1 -1
- package/cjs/picker/math-picker-service.d.ts +1 -2
- package/cjs/picker/math-picker-service.js +4 -7
- package/cjs/picker/math-picker-service.js.map +1 -1
- package/cjs/render/contributions/rough/rough-rect.js +3 -1
- package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
- package/cjs/window/contributions/browser-contribution.d.ts +6 -3
- package/cjs/window/contributions/browser-contribution.js +12 -12
- package/cjs/window/contributions/browser-contribution.js.map +1 -1
- package/dist/index.js +2282 -2344
- package/dist/index.min.js +1 -1
- package/es/canvas/contributions/browser/canvas.js +2 -4
- package/es/canvas/contributions/browser/canvas.js.map +1 -1
- package/es/canvas/contributions/browser/context.d.ts +1 -0
- package/es/canvas/contributions/browser/context.js +18 -17
- package/es/canvas/contributions/browser/context.js.map +1 -1
- package/es/env/all.js +1 -1
- package/es/env/all.js.map +1 -1
- package/es/env/browser.d.ts +2 -1
- package/es/env/browser.js +10 -3
- package/es/env/browser.js.map +1 -1
- package/es/env/contributions/module.d.ts +1 -8
- package/es/env/contributions/module.js +1 -63
- package/es/env/contributions/module.js.map +1 -1
- package/es/env/contributions/wx-contribution.js +1 -2
- package/es/env/feishu.d.ts +2 -1
- package/es/env/feishu.js +10 -3
- package/es/env/feishu.js.map +1 -1
- package/es/env/index.d.ts +0 -1
- package/es/env/index.js +0 -2
- package/es/env/index.js.map +1 -1
- package/es/env/lynx.d.ts +2 -1
- package/es/env/lynx.js +9 -2
- package/es/env/lynx.js.map +1 -1
- package/es/env/node.d.ts +2 -1
- package/es/env/node.js +11 -6
- package/es/env/node.js.map +1 -1
- package/es/env/taro.d.ts +2 -1
- package/es/env/taro.js +10 -3
- package/es/env/taro.js.map +1 -1
- package/es/env/wx.d.ts +2 -1
- package/es/env/wx.js +10 -3
- package/es/env/wx.js.map +1 -1
- package/es/event/extension/gesture.d.ts +5 -1
- package/es/event/extension/gesture.js +10 -4
- package/es/event/extension/gesture.js.map +1 -1
- package/es/event/extension/index.js +2 -1
- package/es/event/extension/interface.d.ts +42 -0
- package/es/event/extension/interface.js +2 -0
- package/es/event/extension/interface.js.map +1 -0
- package/es/picker/canvas-picker-service.d.ts +1 -13
- package/es/picker/canvas-picker-service.js +8 -23
- package/es/picker/canvas-picker-service.js.map +1 -1
- package/es/picker/contributions/canvas-picker/module.js +17 -25
- package/es/picker/contributions/canvas-picker/module.js.map +1 -1
- package/es/picker/contributions/canvas-picker/polygon-picker.js +1 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -1
- package/es/picker/contributions/math-picker/module.js +10 -15
- package/es/picker/contributions/math-picker/module.js.map +1 -1
- package/es/picker/index.d.ts +1 -1
- package/es/picker/index.js +1 -2
- package/es/picker/index.js.map +1 -1
- package/es/picker/math-picker-service.d.ts +1 -2
- package/es/picker/math-picker-service.js +5 -7
- package/es/picker/math-picker-service.js.map +1 -1
- package/es/render/contributions/rough/rough-rect.js +3 -1
- package/es/render/contributions/rough/rough-rect.js.map +1 -1
- package/es/window/contributions/browser-contribution.d.ts +6 -3
- package/es/window/contributions/browser-contribution.js +12 -12
- package/es/window/contributions/browser-contribution.js.map +1 -1
- package/package.json +5 -5
- package/cjs/picker/module.d.ts +0 -6
- package/cjs/picker/module.js +0 -30
- package/cjs/picker/module.js.map +0 -1
- package/es/picker/module.d.ts +0 -6
- package/es/picker/module.js +0 -28
- package/es/picker/module.js.map +0 -1
|
@@ -3,25 +3,13 @@ import { DefaultPickService } from '@visactor/vrender-core';
|
|
|
3
3
|
import type { ICanvas, IContext2d, IGraphic, EnvType, IGlobal, IGraphicPicker, IPickerService, IDrawContribution, IContributionProvider, IPickItemInterceptorContribution, IPickParams, PickResult } from '@visactor/vrender-core';
|
|
4
4
|
export declare class DefaultCanvasPickerService extends DefaultPickService implements IPickerService {
|
|
5
5
|
protected readonly contributions: IContributionProvider<IGraphicPicker>;
|
|
6
|
-
private readonly circlePicker;
|
|
7
|
-
private readonly rectPicker;
|
|
8
|
-
private readonly arcPicker;
|
|
9
|
-
private readonly areaPicker;
|
|
10
|
-
private readonly imagePicker;
|
|
11
|
-
private readonly linePicker;
|
|
12
|
-
private readonly pathPicker;
|
|
13
|
-
private readonly symbolPicker;
|
|
14
|
-
private readonly textPicker;
|
|
15
|
-
private readonly polygonPicker;
|
|
16
|
-
private readonly richtextPicker;
|
|
17
6
|
readonly drawContribution: IDrawContribution;
|
|
18
|
-
readonly global: IGlobal;
|
|
19
7
|
protected readonly pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>;
|
|
20
8
|
type: 'default';
|
|
21
9
|
pickCanvas: ICanvas;
|
|
22
10
|
pickContext: IContext2d;
|
|
23
11
|
pickerMap: Map<number, IGraphicPicker>;
|
|
24
|
-
constructor(contributions: IContributionProvider<IGraphicPicker>,
|
|
12
|
+
constructor(contributions: IContributionProvider<IGraphicPicker>, drawContribution: IDrawContribution, pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>);
|
|
25
13
|
init(): void;
|
|
26
14
|
configure(global: IGlobal, env: EnvType): void;
|
|
27
15
|
pickItem(graphic: IGraphic, point: IPointLike, parentMatrix: IMatrix | null, params: IPickParams): PickResult | null;
|
|
@@ -10,21 +10,16 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
|
|
|
10
10
|
};
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
import { ContributionProvider, inject, injectable, named,
|
|
13
|
+
import { ContributionProvider, inject, injectable, named, DefaultPickService, DrawContribution, PickItemInterceptor, canvasAllocate } from "@visactor/vrender-core";
|
|
14
14
|
|
|
15
|
-
import {
|
|
15
|
+
import { CanvasPickerContribution } from "./contributions/constants";
|
|
16
16
|
|
|
17
17
|
let DefaultCanvasPickerService = class extends DefaultPickService {
|
|
18
|
-
constructor(contributions,
|
|
19
|
-
super(
|
|
20
|
-
this.
|
|
21
|
-
this.areaPicker = areaPicker, this.imagePicker = imagePicker, this.linePicker = linePicker,
|
|
22
|
-
this.pathPicker = pathPicker, this.symbolPicker = symbolPicker, this.textPicker = textPicker,
|
|
23
|
-
this.polygonPicker = polygonPicker, this.richtextPicker = richtextPicker, this.drawContribution = drawContribution,
|
|
24
|
-
this.global = global, this.pickItemInterceptorContributions = pickItemInterceptorContributions,
|
|
25
|
-
this.global.hooks.onSetEnv.tap("canvas-picker-service", ((_, env, global) => {
|
|
18
|
+
constructor(contributions, drawContribution, pickItemInterceptorContributions) {
|
|
19
|
+
super(pickItemInterceptorContributions), this.contributions = contributions, this.drawContribution = drawContribution,
|
|
20
|
+
this.pickItemInterceptorContributions = pickItemInterceptorContributions, this.global.hooks.onSetEnv.tap("canvas-picker-service", ((_, env, global) => {
|
|
26
21
|
this.configure(global, env);
|
|
27
|
-
})), this.configure(this.global, this.global.env), this.pickerMap = new Map;
|
|
22
|
+
})), this.configure(this.global, this.global.env), this.pickerMap = new Map, this.init();
|
|
28
23
|
}
|
|
29
24
|
init() {
|
|
30
25
|
this.contributions.getContributions().forEach((item => {
|
|
@@ -32,16 +27,7 @@ let DefaultCanvasPickerService = class extends DefaultPickService {
|
|
|
32
27
|
})), super._init();
|
|
33
28
|
}
|
|
34
29
|
configure(global, env) {
|
|
35
|
-
|
|
36
|
-
width: 100,
|
|
37
|
-
height: 100,
|
|
38
|
-
nativeCanvas: global.createCanvas({
|
|
39
|
-
width: 100,
|
|
40
|
-
height: 100
|
|
41
|
-
}),
|
|
42
|
-
id: "for-pick"
|
|
43
|
-
};
|
|
44
|
-
this.pickCanvas = wrapCanvas(options), this.pickContext = this.pickCanvas.getContext("2d");
|
|
30
|
+
this.pickCanvas = canvasAllocate.shareCanvas(), this.pickContext = this.pickCanvas.getContext("2d");
|
|
45
31
|
}
|
|
46
32
|
pickItem(graphic, point, parentMatrix, params) {
|
|
47
33
|
if (!1 === graphic.attribute.pickable) return null;
|
|
@@ -73,7 +59,6 @@ let DefaultCanvasPickerService = class extends DefaultPickService {
|
|
|
73
59
|
}
|
|
74
60
|
};
|
|
75
61
|
|
|
76
|
-
__decorate([
|
|
77
|
-
DefaultCanvasPickerService = __decorate([ injectable(), __param(0, inject(ContributionProvider)), __param(0, named(CanvasPickerContribution)), __param(1, inject(CanvasCirclePicker)), __param(2, inject(CanvasRectPicker)), __param(3, inject(CanvasArcPicker)), __param(4, inject(CanvasAreaPicker)), __param(5, inject(CanvasImagePicker)), __param(6, inject(CanvasLinePicker)), __param(7, inject(CanvasPathPicker)), __param(8, inject(CanvasSymbolPicker)), __param(9, inject(CanvasTextPicker)), __param(10, inject(CanvasPolygonPicker)), __param(11, inject(CanvasRichTextPicker)), __param(12, inject(DrawContribution)), __param(13, inject(VGlobal)), __param(14, inject(ContributionProvider)), __param(14, named(PickItemInterceptor)), __metadata("design:paramtypes", [ Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object ]) ], DefaultCanvasPickerService);
|
|
62
|
+
DefaultCanvasPickerService = __decorate([ injectable(), __param(0, inject(ContributionProvider)), __param(0, named(CanvasPickerContribution)), __param(1, inject(DrawContribution)), __param(2, inject(ContributionProvider)), __param(2, named(PickItemInterceptor)), __metadata("design:paramtypes", [ Object, Object, Object ]) ], DefaultCanvasPickerService);
|
|
78
63
|
|
|
79
64
|
export { DefaultCanvasPickerService };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/picker/canvas-picker-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,EACL,oBAAoB,EACpB,MAAM,EACN,UAAU,EACV,KAAK,EACL,
|
|
1
|
+
{"version":3,"sources":["../src/picker/canvas-picker-service.ts"],"names":[],"mappings":"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","file":"canvas-picker-service.js","sourcesContent":["import type { IMatrix, IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line\nimport {\n ContributionProvider,\n inject,\n injectable,\n named,\n DefaultPickService,\n DrawContribution,\n PickItemInterceptor,\n canvasAllocate,\n application\n} from '@visactor/vrender-core';\nimport type {\n ICanvas,\n IContext2d,\n IGraphic,\n EnvType,\n IGlobal,\n IGraphicPicker,\n IPickerService,\n IDrawContribution,\n IContributionProvider,\n IPickItemInterceptorContribution,\n IPickParams,\n PickResult\n} from '@visactor/vrender-core';\nimport {\n CanvasArcPicker,\n CanvasAreaPicker,\n CanvasCirclePicker,\n CanvasImagePicker,\n CanvasLinePicker,\n CanvasPathPicker,\n CanvasPickerContribution,\n CanvasPolygonPicker,\n CanvasRectPicker,\n CanvasSymbolPicker,\n CanvasTextPicker,\n CanvasRichTextPicker\n} from './contributions/constants';\n\n// 默认的pick-service,提供基本的最优选中策略,尽量不需要用户自己实现contribution\n// 用户可以写plugin\n@injectable()\nexport class DefaultCanvasPickerService extends DefaultPickService implements IPickerService {\n declare type: 'default';\n // pcik canvas\n declare pickCanvas: ICanvas;\n declare pickContext: IContext2d;\n declare pickerMap: Map<number, IGraphicPicker>;\n\n constructor(\n @inject(ContributionProvider)\n @named(CanvasPickerContribution)\n protected readonly contributions: IContributionProvider<IGraphicPicker>,\n\n @inject(DrawContribution)\n public readonly drawContribution: IDrawContribution,\n // 拦截器\n @inject(ContributionProvider)\n @named(PickItemInterceptor)\n protected readonly pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>\n ) {\n super(pickItemInterceptorContributions);\n this.global.hooks.onSetEnv.tap('canvas-picker-service', (_, env, global) => {\n this.configure(global, env);\n });\n this.configure(this.global, this.global.env);\n this.pickerMap = new Map();\n this.init();\n }\n\n init() {\n this.contributions.getContributions().forEach(item => {\n this.pickerMap.set(item.numberType, item);\n });\n super._init();\n }\n\n configure(global: IGlobal, env: EnvType) {\n // if (!this.global.env) return;\n // this.contributions.getContributions().forEach(handlerContribution => {\n // handlerContribution.configure(this, this.global);\n // });\n\n // 创建pick canvas\n this.pickCanvas = canvasAllocate.shareCanvas();\n this.pickContext = this.pickCanvas.getContext('2d');\n }\n\n // todo: switch统一改为数字map\n pickItem(graphic: IGraphic, point: IPointLike, parentMatrix: IMatrix | null, params: IPickParams): PickResult | null {\n if (graphic.attribute.pickable === false) {\n return null;\n }\n // 添加拦截器\n if (this.InterceptorContributions.length) {\n for (let i = 0; i < this.InterceptorContributions.length; i++) {\n const drawContribution = this.InterceptorContributions[i];\n if (drawContribution.beforePickItem) {\n const ret = drawContribution.beforePickItem(graphic, this, point, params, { parentMatrix });\n if (ret) {\n return ret;\n }\n }\n }\n }\n const picker = this.pickerMap.get(graphic.numberType);\n if (!picker) {\n return null;\n }\n const g = picker.contains(graphic, point, params) ? graphic : null;\n\n const data = {\n graphic: g\n };\n if (g) {\n return data;\n }\n // 添加拦截器\n if (this.InterceptorContributions.length) {\n for (let i = 0; i < this.InterceptorContributions.length; i++) {\n const drawContribution = this.InterceptorContributions[i];\n if (drawContribution.afterPickItem) {\n const ret = drawContribution.afterPickItem(graphic, this, point, params, { parentMatrix });\n if (ret) {\n return ret;\n }\n }\n }\n }\n return data;\n }\n}\n"]}
|
|
@@ -35,30 +35,22 @@ import { DefaultCanvasArc3dPicker } from "./arc3d-picker";
|
|
|
35
35
|
import { DefaultCanvasGroupPicker } from "./group-picker";
|
|
36
36
|
|
|
37
37
|
export default new ContainerModule(((bind, unbind, isBound, rebind) => {
|
|
38
|
-
bind(
|
|
39
|
-
bind(
|
|
40
|
-
bind(
|
|
41
|
-
bind(
|
|
42
|
-
bind(
|
|
43
|
-
bind(
|
|
44
|
-
bind(
|
|
45
|
-
bind(
|
|
46
|
-
bind(
|
|
47
|
-
bind(
|
|
48
|
-
bind(
|
|
49
|
-
bind(
|
|
50
|
-
bind(
|
|
51
|
-
bind(CanvasPickerContribution).toService(
|
|
52
|
-
bind(
|
|
53
|
-
bind(
|
|
54
|
-
bind(CanvasPickerContribution).toService(
|
|
55
|
-
bind(CanvasPyramid3dPicker).toService(DefaultCanvasPyramid3dPicker), bind(CanvasPickerContribution).toService(CanvasPyramid3dPicker),
|
|
56
|
-
bind(DefaultCanvasArc3dPicker).toSelf().inSingletonScope(), bind(CanvasArc3dPicker).toService(DefaultCanvasArc3dPicker),
|
|
57
|
-
bind(CanvasPickerContribution).toService(CanvasArc3dPicker), bind(DefaultCanvasRichTextPicker).toSelf().inSingletonScope(),
|
|
58
|
-
bind(CanvasRichTextPicker).toService(DefaultCanvasRichTextPicker), bind(CanvasPickerContribution).toService(CanvasRichTextPicker),
|
|
59
|
-
bind(DefaultCanvasGlyphPicker).toSelf().inSingletonScope(), bind(CanvasGlyphPicker).toService(DefaultCanvasGlyphPicker),
|
|
60
|
-
bind(CanvasPickerContribution).toService(CanvasGlyphPicker), bind(DefaultCanvasGroupPicker).toSelf().inSingletonScope(),
|
|
61
|
-
bind(CanvasGroupPicker).toService(DefaultCanvasGroupPicker), bind(CanvasPickerContribution).toService(CanvasGroupPicker),
|
|
62
|
-
bindContributionProvider(bind, CanvasPickerContribution);
|
|
38
|
+
bind(CanvasCirclePicker).to(DefaultCanvasCirclePicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasCirclePicker),
|
|
39
|
+
bind(CanvasRectPicker).to(DefaultCanvasRectPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasRectPicker),
|
|
40
|
+
bind(CanvasRect3dPicker).to(DefaultCanvasRect3dPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasRect3dPicker),
|
|
41
|
+
bind(CanvasArcPicker).to(DefaultCanvasArcPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasArcPicker),
|
|
42
|
+
bind(CanvasAreaPicker).to(DefaultCanvasAreaPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasAreaPicker),
|
|
43
|
+
bind(CanvasImagePicker).to(DefaultCanvasImagePicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasImagePicker),
|
|
44
|
+
bind(CanvasLinePicker).to(DefaultCanvasLinePicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasLinePicker),
|
|
45
|
+
bind(CanvasPathPicker).to(DefaultCanvasPathPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasPathPicker),
|
|
46
|
+
bind(CanvasSymbolPicker).to(DefaultCanvasSymbolPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasSymbolPicker),
|
|
47
|
+
bind(CanvasTextPicker).to(DefaultCanvasTextPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasTextPicker),
|
|
48
|
+
bind(CanvasPolygonPicker).to(DefaultCanvasPolygonPicker).inSingletonScope(), bind(CanvasPickerContribution).toService(CanvasPolygonPicker),
|
|
49
|
+
bind(CanvasPyramid3dPicker).to(DefaultCanvasPyramid3dPicker).inSingletonScope(),
|
|
50
|
+
bind(CanvasPickerContribution).toService(CanvasPyramid3dPicker), bind(CanvasArc3dPicker).to(DefaultCanvasArc3dPicker).inSingletonScope(),
|
|
51
|
+
bind(CanvasPickerContribution).toService(CanvasArc3dPicker), bind(CanvasRichTextPicker).to(DefaultCanvasRichTextPicker).inSingletonScope(),
|
|
52
|
+
bind(CanvasPickerContribution).toService(CanvasRichTextPicker), bind(CanvasGlyphPicker).to(DefaultCanvasGlyphPicker).inSingletonScope(),
|
|
53
|
+
bind(CanvasPickerContribution).toService(CanvasGlyphPicker), bind(CanvasGroupPicker).to(DefaultCanvasGroupPicker).inSingletonScope(),
|
|
54
|
+
bind(CanvasPickerContribution).toService(CanvasGroupPicker), bindContributionProvider(bind, CanvasPickerContribution);
|
|
63
55
|
}));
|
|
64
56
|
//# sourceMappingURL=module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/picker/contributions/canvas-picker/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,eAAe,IAAI,eAAe,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IAEnE,IAAI,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/picker/contributions/canvas-picker/module.ts"],"names":[],"mappings":"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","file":"module.js","sourcesContent":["import { ContainerModule, bindContributionProvider } from '@visactor/vrender-core';\nimport { DefaultCanvasCirclePicker } from './circle-picker';\nimport { DefaultCanvasRectPicker } from './rect-picker';\nimport { DefaultCanvasArcPicker } from './arc-picker';\nimport { DefaultCanvasAreaPicker } from './area-picker';\nimport { DefaultCanvasImagePicker } from './image-picker';\nimport { DefaultCanvasLinePicker } from './line-picker';\nimport { DefaultCanvasPathPicker } from './path-picker';\nimport { DefaultCanvasSymbolPicker } from './symbol-picker';\nimport { DefaultCanvasTextPicker } from './text-picker';\nimport {\n CanvasArc3dPicker,\n CanvasArcPicker,\n CanvasAreaPicker,\n CanvasCirclePicker,\n CanvasGlyphPicker,\n CanvasGroupPicker,\n CanvasImagePicker,\n CanvasLinePicker,\n CanvasPathPicker,\n CanvasPickerContribution,\n CanvasPolygonPicker,\n CanvasPyramid3dPicker,\n CanvasRect3dPicker,\n CanvasRectPicker,\n CanvasRichTextPicker,\n CanvasSymbolPicker,\n CanvasTextPicker\n} from '../constants';\nimport { DefaultCanvasPolygonPicker } from './polygon-picker';\nimport { DefaultCanvasRichTextPicker } from './richtext-picker';\nimport { DefaultCanvasGlyphPicker } from './glyph-picker';\nimport { DefaultCanvasRect3dPicker } from './rect3d-picker';\nimport { DefaultCanvasPyramid3dPicker } from './pyramid3d-picker';\nimport { DefaultCanvasArc3dPicker } from './arc3d-picker';\nimport { DefaultCanvasGroupPicker } from './group-picker';\n\nexport default new ContainerModule((bind, unbind, isBound, rebind) => {\n // circle picker\n bind(CanvasCirclePicker).to(DefaultCanvasCirclePicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasCirclePicker);\n\n // reat picker\n bind(CanvasRectPicker).to(DefaultCanvasRectPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasRectPicker);\n\n // reat3d picker\n bind(CanvasRect3dPicker).to(DefaultCanvasRect3dPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasRect3dPicker);\n\n // arc picker\n bind(CanvasArcPicker).to(DefaultCanvasArcPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasArcPicker);\n\n // area picker\n bind(CanvasAreaPicker).to(DefaultCanvasAreaPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasAreaPicker);\n\n // image picker\n bind(CanvasImagePicker).to(DefaultCanvasImagePicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasImagePicker);\n\n // line picker\n bind(CanvasLinePicker).to(DefaultCanvasLinePicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasLinePicker);\n\n // path picker\n bind(CanvasPathPicker).to(DefaultCanvasPathPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasPathPicker);\n\n // symbol picker\n bind(CanvasSymbolPicker).to(DefaultCanvasSymbolPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasSymbolPicker);\n\n // text picker\n bind(CanvasTextPicker).to(DefaultCanvasTextPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasTextPicker);\n\n // polygon picker\n bind(CanvasPolygonPicker).to(DefaultCanvasPolygonPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasPolygonPicker);\n\n // pyramid3d picker\n bind(CanvasPyramid3dPicker).to(DefaultCanvasPyramid3dPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasPyramid3dPicker);\n\n // arc3d picker\n bind(CanvasArc3dPicker).to(DefaultCanvasArc3dPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasArc3dPicker);\n\n // richtext picker\n bind(CanvasRichTextPicker).to(DefaultCanvasRichTextPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasRichTextPicker);\n // glyph picker\n bind(CanvasGlyphPicker).to(DefaultCanvasGlyphPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasGlyphPicker);\n // group picker\n bind(CanvasGroupPicker).to(DefaultCanvasGroupPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(CanvasGroupPicker);\n\n bindContributionProvider(bind, CanvasPickerContribution);\n});\n"]}
|
|
@@ -18,6 +18,7 @@ let DefaultCanvasPolygonPicker = class {
|
|
|
18
18
|
}
|
|
19
19
|
contains(polygon, point, params) {
|
|
20
20
|
if (!polygon.AABBBounds.contains(point.x, point.y)) return !1;
|
|
21
|
+
if ("imprecise" === polygon.attribute.pickMode) return !0;
|
|
21
22
|
const {pickContext: pickContext} = null != params ? params : {};
|
|
22
23
|
if (!pickContext) return !1;
|
|
23
24
|
const polygonAttribute = getTheme(polygon).polygon;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/picker/contributions/canvas-picker/polygon-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAcnG,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAIrC,YAAmD,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAHjF,SAAI,GAAW,SAAS,CAAC;QACzB,eAAU,GAAW,mBAAmB,CAAC;IAE2C,CAAC;IAErF,QAAQ,CAAC,OAAiB,EAAE,KAAa,EAAE,MAAoB;QAC7D,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE;YAClD,OAAO,KAAK,CAAC;SACd;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAGD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;QACnD,IAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;QAE3E,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE;YAExC,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SAC5D;aAAM;YACL,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;YACpD,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACb,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAEb,WAAW,CAAC,sBAAsB,EAAE,CAAC;SACtC;QAGD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,OAAO,EACP,WAAW,EACX,CAAC,EACD,CAAC,EACD,EAAS,EACT,IAAI,EACJ,CACE,OAAmB,EACnB,aAA0D,EAC1D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CACE,OAAmB,EACnB,aAA0D,EAC1D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS,CAAC;YACtE,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;YAClC,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QAEF,WAAW,CAAC,sBAAsB,EAAE,CAAC;QAErC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"sources":["../src/picker/contributions/canvas-picker/polygon-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAcnG,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAIrC,YAAmD,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAHjF,SAAI,GAAW,SAAS,CAAC;QACzB,eAAU,GAAW,mBAAmB,CAAC;IAE2C,CAAC;IAErF,QAAQ,CAAC,OAAiB,EAAE,KAAa,EAAE,MAAoB;QAC7D,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE;YAClD,OAAO,KAAK,CAAC;SACd;QAED,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC9C,OAAO,IAAI,CAAC;SACb;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAGD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;QACnD,IAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;QAE3E,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE;YAExC,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SAC5D;aAAM;YACL,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;YACpD,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACb,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAEb,WAAW,CAAC,sBAAsB,EAAE,CAAC;SACtC;QAGD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,OAAO,EACP,WAAW,EACX,CAAC,EACD,CAAC,EACD,EAAS,EACT,IAAI,EACJ,CACE,OAAmB,EACnB,aAA0D,EAC1D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CACE,OAAmB,EACnB,aAA0D,EAC1D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS,CAAC;YACtE,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;YAClC,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QAEF,WAAW,CAAC,sBAAsB,EAAE,CAAC;QAErC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA/EY,0BAA0B;IADtC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,aAAa,CAAC,CAAA;;GAJvB,0BAA0B,CA+EtC;SA/EY,0BAA0B","file":"polygon-picker.js","sourcesContent":["import { inject, injectable, getTheme, PolygonRender, POLYGON_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IContext2d,\n IMarkAttribute,\n IGraphicAttribute,\n IThemeAttribute,\n IPolygon,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasPolygonPicker implements IGraphicPicker {\n type: string = 'polygon';\n numberType: number = POLYGON_NUMBER_TYPE;\n\n constructor(@inject(PolygonRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(polygon: IPolygon, point: IPoint, params?: IPickParams): boolean {\n if (!polygon.AABBBounds.contains(point.x, point.y)) {\n return false;\n }\n\n if (polygon.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const polygonAttribute = graphicService.themeService.getCurrentTheme().pathAttribute;\n const polygonAttribute = getTheme(polygon).polygon;\n let { x = polygonAttribute.x, y = polygonAttribute.y } = polygon.attribute;\n\n pickContext.highPerformanceSave();\n if (!polygon.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(polygon.transMatrix, true);\n } else {\n const point = polygon.getOffsetXY(polygonAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n polygon,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n pathAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n pathAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = pathAttribute.lineWidth || themeAttribute.lineWidth;\n pickContext.lineWidth = lineWidth;\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n\n return picked;\n }\n}\n"]}
|
|
@@ -23,21 +23,16 @@ import { DefaultMathPolygonPicker } from "./polygon-picker";
|
|
|
23
23
|
import { DefaultMathGlyphPicker } from "./glyph-picker";
|
|
24
24
|
|
|
25
25
|
export default new ContainerModule((bind => {
|
|
26
|
-
bind(
|
|
27
|
-
bind(
|
|
28
|
-
bind(
|
|
29
|
-
bind(
|
|
30
|
-
bind(
|
|
31
|
-
bind(
|
|
32
|
-
bind(
|
|
33
|
-
bind(
|
|
34
|
-
bind(
|
|
35
|
-
bind(
|
|
36
|
-
bind(MathPickerContribution).toService(MathSymbolPicker), bind(DefaultMathTextPicker).toSelf().inSingletonScope(),
|
|
37
|
-
bind(MathTextPicker).toService(DefaultMathTextPicker), bind(MathPickerContribution).toService(MathTextPicker),
|
|
38
|
-
bind(DefaultMathPolygonPicker).toSelf().inSingletonScope(), bind(MathPolygonPicker).toService(DefaultMathPolygonPicker),
|
|
39
|
-
bind(MathPickerContribution).toService(MathPolygonPicker), bind(DefaultMathGlyphPicker).toSelf().inSingletonScope(),
|
|
40
|
-
bind(MathGlyphPicker).toService(DefaultMathGlyphPicker), bind(DefaultMathGlyphPicker).toService(MathGlyphPicker),
|
|
26
|
+
bind(MathCirclePicker).to(DefaultMathCirclePicker).inSingletonScope(), bind(MathPickerContribution).toService(MathCirclePicker),
|
|
27
|
+
bind(MathRectPicker).to(DefaultMathRectPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathRectPicker),
|
|
28
|
+
bind(MathArcPicker).to(DefaultMathArcPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathArcPicker),
|
|
29
|
+
bind(MathAreaPicker).to(DefaultMathAreaPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathAreaPicker),
|
|
30
|
+
bind(MathLinePicker).to(DefaultMathLinePicker).inSingletonScope(), bind(MathPickerContribution).toService(MathLinePicker),
|
|
31
|
+
bind(MathPathPicker).to(DefaultMathPathPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathPathPicker),
|
|
32
|
+
bind(MathSymbolPicker).to(DefaultMathSymbolPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathSymbolPicker),
|
|
33
|
+
bind(MathTextPicker).to(DefaultMathTextPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathTextPicker),
|
|
34
|
+
bind(MathPolygonPicker).to(DefaultMathPolygonPicker).inSingletonScope(), bind(MathPickerContribution).toService(MathPolygonPicker),
|
|
35
|
+
bind(MathGlyphPicker).to(DefaultMathGlyphPicker).inSingletonScope(), bind(DefaultMathGlyphPicker).toService(MathGlyphPicker),
|
|
41
36
|
bindContributionProvider(bind, MathPickerContribution);
|
|
42
37
|
}));
|
|
43
38
|
//# sourceMappingURL=module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/picker/contributions/math-picker/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,cAAc,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,eAAe,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;IAExC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/picker/contributions/math-picker/module.ts"],"names":[],"mappings":"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","file":"module.js","sourcesContent":["import { ContainerModule, bindContributionProvider } from '@visactor/vrender-core';\nimport { DefaultMathPathPicker } from './path-picker';\nimport {\n MathArcPicker,\n MathAreaPicker,\n MathCirclePicker,\n MathGlyphPicker,\n MathLinePicker,\n MathPathPicker,\n MathPickerContribution,\n MathPolygonPicker,\n MathRectPicker,\n MathSymbolPicker,\n MathTextPicker\n} from '../constants';\nimport { DefaultMathCirclePicker } from './circle-picker';\nimport { DefaultMathRectPicker } from './rect-picker';\nimport { DefaultMathArcPicker } from './arc-picker';\nimport { DefaultMathAreaPicker } from './area-picker';\nimport { DefaultMathLinePicker } from './line-picker';\nimport { DefaultMathSymbolPicker } from './symbol-picker';\nimport { DefaultMathTextPicker } from './text-picker';\nimport { DefaultMathPolygonPicker } from './polygon-picker';\nimport { DefaultMathGlyphPicker } from './glyph-picker';\n\nexport default new ContainerModule(bind => {\n // circle picker\n bind(MathCirclePicker).to(DefaultMathCirclePicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathCirclePicker);\n\n // rect picker\n bind(MathRectPicker).to(DefaultMathRectPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathRectPicker);\n\n // arc picker\n bind(MathArcPicker).to(DefaultMathArcPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathArcPicker);\n\n // area picker\n bind(MathAreaPicker).to(DefaultMathAreaPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathAreaPicker);\n\n // // image picker\n // bind(DefaultCanvasImagePicker).toSelf().inSingletonScope();\n // bind(ImagePicker).toService(DefaultCanvasImagePicker);\n // bind(PickerContribution).toService(ImagePicker);\n\n // line picker\n bind(MathLinePicker).to(DefaultMathLinePicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathLinePicker);\n\n // path picker\n bind(MathPathPicker).to(DefaultMathPathPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathPathPicker);\n\n // symbol picker\n bind(MathSymbolPicker).to(DefaultMathSymbolPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathSymbolPicker);\n\n // text picker\n bind(MathTextPicker).to(DefaultMathTextPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathTextPicker);\n\n // polygon picker\n bind(MathPolygonPicker).to(DefaultMathPolygonPicker).inSingletonScope();\n bind(MathPickerContribution).toService(MathPolygonPicker);\n\n // glyph picker\n bind(MathGlyphPicker).to(DefaultMathGlyphPicker).inSingletonScope();\n bind(DefaultMathGlyphPicker).toService(MathGlyphPicker);\n\n bindContributionProvider(bind, MathPickerContribution);\n});\n"]}
|
package/es/picker/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
|
package/es/picker/index.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
//# sourceMappingURL=index.js.map
|
package/es/picker/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/picker/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/picker/index.ts"],"names":[],"mappings":"","file":"index.js","sourcesContent":["// export * from './canvas-module';\n// export * from './math-module';\n"]}
|
|
@@ -3,13 +3,12 @@ import { DefaultPickService } from '@visactor/vrender-core';
|
|
|
3
3
|
import type { ICanvas, IContext2d, IGraphic, EnvType, IGlobal, IGraphicPicker, IPickerService, IContributionProvider, IPickItemInterceptorContribution, IPickParams, PickResult } from '@visactor/vrender-core';
|
|
4
4
|
export declare class DefaultMathPickerService extends DefaultPickService implements IPickerService {
|
|
5
5
|
protected readonly contributions: IContributionProvider<IGraphicPicker>;
|
|
6
|
-
readonly global: IGlobal;
|
|
7
6
|
protected readonly pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>;
|
|
8
7
|
type: 'default';
|
|
9
8
|
pickCanvas: ICanvas;
|
|
10
9
|
pickContext: IContext2d;
|
|
11
10
|
pickerMap: Map<number, IGraphicPicker>;
|
|
12
|
-
constructor(contributions: IContributionProvider<IGraphicPicker>,
|
|
11
|
+
constructor(contributions: IContributionProvider<IGraphicPicker>, pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>);
|
|
13
12
|
init(): void;
|
|
14
13
|
configure(global: IGlobal, env: EnvType): void;
|
|
15
14
|
pickItem(graphic: IGraphic, point: IPointLike, parentMatrix: IMatrix | null, params?: IPickParams): PickResult | null;
|
|
@@ -10,17 +10,16 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
|
|
|
10
10
|
};
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
import { ContributionProvider, inject, injectable, named,
|
|
13
|
+
import { ContributionProvider, inject, injectable, named, DefaultPickService, EmptyContext2d, PickItemInterceptor } from "@visactor/vrender-core";
|
|
14
14
|
|
|
15
15
|
import { MathPickerContribution } from "./contributions/constants";
|
|
16
16
|
|
|
17
17
|
let DefaultMathPickerService = class extends DefaultPickService {
|
|
18
|
-
constructor(contributions,
|
|
19
|
-
super(
|
|
20
|
-
this.global = global, this.pickItemInterceptorContributions = pickItemInterceptorContributions,
|
|
18
|
+
constructor(contributions, pickItemInterceptorContributions) {
|
|
19
|
+
super(pickItemInterceptorContributions), this.contributions = contributions, this.pickItemInterceptorContributions = pickItemInterceptorContributions,
|
|
21
20
|
this.global.hooks.onSetEnv.tap("math-picker-service", ((lastEnv, env, global) => {
|
|
22
21
|
this.configure(global, env);
|
|
23
|
-
})), this.configure(this.global, this.global.env), this.pickerMap = new Map;
|
|
22
|
+
})), this.configure(this.global, this.global.env), this.pickerMap = new Map, this.init();
|
|
24
23
|
}
|
|
25
24
|
init() {
|
|
26
25
|
this.contributions.getContributions().forEach((item => {
|
|
@@ -41,8 +40,7 @@ let DefaultMathPickerService = class extends DefaultPickService {
|
|
|
41
40
|
}
|
|
42
41
|
};
|
|
43
42
|
|
|
44
|
-
__decorate([
|
|
45
|
-
DefaultMathPickerService = __decorate([ injectable(), __param(0, inject(ContributionProvider)), __param(0, named(MathPickerContribution)), __param(1, inject(VGlobal)), __param(2, inject(ContributionProvider)), __param(2, named(PickItemInterceptor)), __metadata("design:paramtypes", [ Object, Object, Object ]) ], DefaultMathPickerService);
|
|
43
|
+
DefaultMathPickerService = __decorate([ injectable(), __param(0, inject(ContributionProvider)), __param(0, named(MathPickerContribution)), __param(1, inject(ContributionProvider)), __param(1, named(PickItemInterceptor)), __metadata("design:paramtypes", [ Object, Object ]) ], DefaultMathPickerService);
|
|
46
44
|
|
|
47
45
|
export { DefaultMathPickerService };
|
|
48
46
|
//# sourceMappingURL=math-picker-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/picker/math-picker-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,EACL,oBAAoB,EACpB,MAAM,EACN,UAAU,EACV,KAAK,EACL,
|
|
1
|
+
{"version":3,"sources":["../src/picker/math-picker-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,EACL,oBAAoB,EACpB,MAAM,EACN,UAAU,EACV,KAAK,EACL,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAchC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAK5D,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,kBAAkB;IAO9D,YAGqB,aAAoD,EAIpD,gCAAyF;QAE5G,KAAK,CAAC,gCAAgC,CAAC,CAAC;QANrB,kBAAa,GAAb,aAAa,CAAuC;QAIpD,qCAAgC,GAAhC,gCAAgC,CAAyD;QAG5G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;YAC7E,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,IAAI;QACF,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACnD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,MAAe,EAAE,GAAY;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAGD,QAAQ,CACN,OAAiB,EACjB,KAAiB,EACjB,YAA4B,EAC5B,MAAoB;QAEpB,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,KAAK,KAAK,EAAE;YACxC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,IAAI,CAAC;SACb;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,IAAI,CAAC,EAAE;YACL,OAAO;gBACL,OAAO,EAAE,CAAC;aACX,CAAC;SACH;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AA1DY,wBAAwB;IADpC,UAAU,EAAE;IASR,WAAA,MAAM,CAAC,oBAAoB,CAAC,CAAA;IAC5B,WAAA,KAAK,CAAC,sBAAsB,CAAC,CAAA;IAG7B,WAAA,MAAM,CAAC,oBAAoB,CAAC,CAAA;IAC5B,WAAA,KAAK,CAAC,mBAAmB,CAAC,CAAA;;GAblB,wBAAwB,CA0DpC;SA1DY,wBAAwB","file":"math-picker-service.js","sourcesContent":["import type { IMatrix, IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line\nimport {\n ContributionProvider,\n inject,\n injectable,\n named,\n DefaultPickService,\n EmptyContext2d,\n PickItemInterceptor\n} from '@visactor/vrender-core';\nimport type {\n ICanvas,\n IContext2d,\n IGraphic,\n EnvType,\n IGlobal,\n IGraphicPicker,\n IPickerService,\n IContributionProvider,\n IPickItemInterceptorContribution,\n IPickParams,\n PickResult\n} from '@visactor/vrender-core';\nimport { MathPickerContribution } from './contributions/constants';\n\n// 默认的pick-service,提供基本的最优选中策略,尽量不需要用户自己实现contribution\n// 用户可以写plugin\n@injectable()\nexport class DefaultMathPickerService extends DefaultPickService implements IPickerService {\n declare type: 'default';\n // pcik canvas\n declare pickCanvas: ICanvas;\n declare pickContext: IContext2d;\n declare pickerMap: Map<number, IGraphicPicker>;\n\n constructor(\n @inject(ContributionProvider)\n @named(MathPickerContribution)\n protected readonly contributions: IContributionProvider<IGraphicPicker>,\n // 拦截器\n @inject(ContributionProvider)\n @named(PickItemInterceptor)\n protected readonly pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>\n ) {\n super(pickItemInterceptorContributions);\n this.global.hooks.onSetEnv.tap('math-picker-service', (lastEnv, env, global) => {\n this.configure(global, env);\n });\n this.configure(this.global, this.global.env);\n this.pickerMap = new Map();\n this.init();\n }\n\n init() {\n this.contributions.getContributions().forEach(item => {\n this.pickerMap.set(item.numberType, item);\n });\n super._init();\n }\n\n configure(global: IGlobal, env: EnvType) {\n this.pickContext = new EmptyContext2d(null, 1);\n }\n\n // todo: switch统一改为数字map\n pickItem(\n graphic: IGraphic,\n point: IPointLike,\n parentMatrix: IMatrix | null,\n params?: IPickParams\n ): PickResult | null {\n if (graphic.attribute.pickable === false) {\n return null;\n }\n const picker = this.pickerMap.get(graphic.numberType);\n if (!picker) {\n return null;\n }\n const g = picker.contains(graphic, point, params) ? graphic : null;\n if (g) {\n return {\n graphic: g\n };\n }\n return null;\n }\n}\n"]}
|
|
@@ -32,7 +32,9 @@ let RoughCanvasRectRender = class {
|
|
|
32
32
|
const {dx: dx = rectAttribute.dx, dy: dy = rectAttribute.dy} = rect.attribute;
|
|
33
33
|
x += dx, y += dy, context.setTransformForCurrent();
|
|
34
34
|
} else x = 0, y = 0, context.transformFromMatrix(rect.transMatrix, !0);
|
|
35
|
-
const {fill: fill = rectAttribute.fill, stroke: stroke = rectAttribute.stroke, fillColor: fillColor = rectAttribute.fill, strokeColor: strokeColor = rectAttribute.stroke,
|
|
35
|
+
const {fill: fill = rectAttribute.fill, stroke: stroke = rectAttribute.stroke, fillColor: fillColor = rectAttribute.fill, strokeColor: strokeColor = rectAttribute.stroke, x1: x1, y1: y1, lineWidth: lineWidth = rectAttribute.lineWidth, maxRandomnessOffset: maxRandomnessOffset = defaultRouthThemeSpec.maxRandomnessOffset, roughness: roughness = defaultRouthThemeSpec.roughness, bowing: bowing = defaultRouthThemeSpec.bowing, curveFitting: curveFitting = defaultRouthThemeSpec.curveFitting, curveTightness: curveTightness = defaultRouthThemeSpec.curveTightness, curveStepCount: curveStepCount = defaultRouthThemeSpec.curveStepCount, fillStyle: fillStyle = defaultRouthThemeSpec.fillStyle, fillWeight: fillWeight = defaultRouthThemeSpec.fillWeight, hachureAngle: hachureAngle = defaultRouthThemeSpec.hachureAngle, hachureGap: hachureGap = defaultRouthThemeSpec.hachureGap, simplification: simplification = defaultRouthThemeSpec.simplification, dashOffset: dashOffset = defaultRouthThemeSpec.dashOffset, dashGap: dashGap = defaultRouthThemeSpec.dashGap, zigzagOffset: zigzagOffset = defaultRouthThemeSpec.zigzagOffset, seed: seed = defaultRouthThemeSpec.seed, fillLineDash: fillLineDash = defaultRouthThemeSpec.fillLineDash, fillLineDashOffset: fillLineDashOffset = defaultRouthThemeSpec.fillLineDashOffset, disableMultiStroke: disableMultiStroke = defaultRouthThemeSpec.disableMultiStroke, disableMultiStrokeFill: disableMultiStrokeFill = defaultRouthThemeSpec.disableMultiStrokeFill, preserveVertices: preserveVertices = defaultRouthThemeSpec.preserveVertices, fixedDecimalPlaceDigits: fixedDecimalPlaceDigits = defaultRouthThemeSpec.fixedDecimalPlaceDigits} = rect.attribute;
|
|
36
|
+
let {width: width = rectAttribute.width, height: height = rectAttribute.height} = rect.attribute;
|
|
37
|
+
width = (null != width ? width : x1 - x) || 0, height = (null != height ? height : y1 - y) || 0,
|
|
36
38
|
rc.rectangle(x, y, width, height, {
|
|
37
39
|
fill: fill ? fillColor : void 0,
|
|
38
40
|
stroke: stroke ? strokeColor : void 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/render/contributions/rough/rough-rect.ts"],"names":[],"mappings":";;;;;;;;;;;;AAYA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACjH,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAG1C,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAKhC,YAEkB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAJhD,UAAK,GAAY,OAAO,CAAC;QAMvB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC;IACrC,CAAC;IAED,IAAI,CAAC,IAAW,EAAE,aAA6B,EAAE,WAAyB,EAAE,MAAiC;QAC3G,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;SACR;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QAC3C,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEhC,OAAO,CAAC,mBAAmB,EAAE,CAAC;QAG9B,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QAC1C,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAClE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE;YAErC,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SACrD;aAAM;YACL,MAAM,EAAE,EAAE,GAAG,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,aAAa,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;YACxE,CAAC,IAAI,EAAE,CAAC;YACR,CAAC,IAAI,EAAE,CAAC;YAER,OAAO,CAAC,sBAAsB,EAAE,CAAC;SAClC;QAED,MAAM,EACJ,IAAI,GAAG,aAAa,CAAC,IAAI,EACzB,MAAM,GAAG,aAAa,CAAC,MAAM,EAC7B,SAAS,GAAG,aAAa,CAAC,IAAI,EAC9B,WAAW,GAAG,aAAa,CAAC,MAAM,EAClC,
|
|
1
|
+
{"version":3,"sources":["../src/render/contributions/rough/rough-rect.ts"],"names":[],"mappings":"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","file":"rough-rect.js","sourcesContent":["import type {\n IGraphicRender,\n IRenderService,\n IRect,\n IGraphicAttribute,\n IContext2d,\n IGraphic,\n IMarkAttribute,\n IThemeAttribute,\n IDrawContext,\n IGraphicRenderDrawParams\n} from '@visactor/vrender-core';\nimport { RECT_NUMBER_TYPE, DefaultCanvasRectRender, getTheme, inject, injectable } from '@visactor/vrender-core';\nimport rough from 'roughjs';\nimport { defaultRouthThemeSpec } from './config';\n\n@injectable()\nexport class RoughCanvasRectRender implements IGraphicRender {\n type: 'rect';\n numberType: number;\n style: 'rough' = 'rough';\n\n constructor(\n @inject(DefaultCanvasRectRender)\n public readonly canvasRenderer: IGraphicRender\n ) {\n this.type = 'rect';\n this.numberType = RECT_NUMBER_TYPE;\n }\n\n draw(rect: IRect, renderService: IRenderService, drawContext: IDrawContext, params?: IGraphicRenderDrawParams) {\n const { context } = drawContext;\n if (!context) {\n return;\n }\n // 获取到原生canvas\n const canvas = context.canvas.nativeCanvas;\n const rc = rough.canvas(canvas);\n\n context.highPerformanceSave();\n\n // const rectAttribute = graphicService.themeService.getCurrentTheme().rectAttribute;\n const rectAttribute = getTheme(rect).rect;\n let { x = rectAttribute.x, y = rectAttribute.y } = rect.attribute;\n if (!rect.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n context.transformFromMatrix(rect.transMatrix, true);\n } else {\n const { dx = rectAttribute.dx, dy = rectAttribute.dy } = rect.attribute;\n x += dx;\n y += dy;\n // 当前context有rotate/scale,重置matrix\n context.setTransformForCurrent();\n }\n\n const {\n fill = rectAttribute.fill,\n stroke = rectAttribute.stroke,\n fillColor = rectAttribute.fill,\n strokeColor = rectAttribute.stroke,\n x1,\n y1,\n lineWidth = rectAttribute.lineWidth,\n maxRandomnessOffset = defaultRouthThemeSpec.maxRandomnessOffset,\n roughness = defaultRouthThemeSpec.roughness,\n bowing = defaultRouthThemeSpec.bowing,\n curveFitting = defaultRouthThemeSpec.curveFitting,\n curveTightness = defaultRouthThemeSpec.curveTightness,\n curveStepCount = defaultRouthThemeSpec.curveStepCount,\n fillStyle = defaultRouthThemeSpec.fillStyle,\n fillWeight = defaultRouthThemeSpec.fillWeight,\n hachureAngle = defaultRouthThemeSpec.hachureAngle,\n hachureGap = defaultRouthThemeSpec.hachureGap,\n simplification = defaultRouthThemeSpec.simplification,\n dashOffset = defaultRouthThemeSpec.dashOffset,\n dashGap = defaultRouthThemeSpec.dashGap,\n zigzagOffset = defaultRouthThemeSpec.zigzagOffset,\n seed = defaultRouthThemeSpec.seed,\n fillLineDash = defaultRouthThemeSpec.fillLineDash,\n fillLineDashOffset = defaultRouthThemeSpec.fillLineDashOffset,\n disableMultiStroke = defaultRouthThemeSpec.disableMultiStroke,\n disableMultiStrokeFill = defaultRouthThemeSpec.disableMultiStrokeFill,\n preserveVertices = defaultRouthThemeSpec.preserveVertices,\n fixedDecimalPlaceDigits = defaultRouthThemeSpec.fixedDecimalPlaceDigits\n } = rect.attribute as any;\n\n let { width = rectAttribute.width, height = rectAttribute.height } = rect.attribute;\n\n width = (width ?? x1 - x) || 0;\n height = (height ?? y1 - y) || 0;\n\n rc.rectangle(x, y, width, height, {\n fill: fill ? (fillColor as string) : undefined,\n stroke: stroke ? (strokeColor as string) : undefined,\n strokeWidth: lineWidth,\n maxRandomnessOffset,\n roughness,\n bowing,\n curveFitting,\n curveTightness,\n curveStepCount,\n fillStyle,\n fillWeight,\n hachureAngle,\n hachureGap,\n simplification,\n dashOffset,\n dashGap,\n zigzagOffset,\n seed,\n fillLineDash,\n fillLineDashOffset,\n disableMultiStroke,\n disableMultiStrokeFill,\n preserveVertices,\n fixedDecimalPlaceDigits\n });\n\n context.highPerformanceRestore();\n }\n\n drawShape(\n graphic: IGraphic,\n ctx: IContext2d,\n x: number,\n y: number,\n drawContext: IDrawContext,\n params?: IGraphicRenderDrawParams,\n fillCb?: (\n ctx: IContext2d,\n markAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => boolean,\n strokeCb?: (\n ctx: IContext2d,\n markAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => boolean\n ): void {\n if (this.canvasRenderer.drawShape) {\n return this.canvasRenderer.drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb);\n }\n }\n}\n"]}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import { BaseWindowHandlerContribution, ContainerModule } from '@visactor/vrender-core';
|
|
2
|
-
import type { IContext2d, ICanvas, IDomRectLike, EnvType,
|
|
2
|
+
import type { IContext2d, ICanvas, IDomRectLike, EnvType, IWindowHandlerContribution, IWindowParams } from '@visactor/vrender-core';
|
|
3
3
|
import type { IBoundsLike } from '@visactor/vutils';
|
|
4
4
|
export declare class BrowserWindowHandlerContribution extends BaseWindowHandlerContribution implements IWindowHandlerContribution {
|
|
5
|
-
private readonly global;
|
|
6
5
|
static env: EnvType;
|
|
7
6
|
type: EnvType;
|
|
8
7
|
canvas: ICanvas;
|
|
9
8
|
observer?: MutationObserver;
|
|
10
9
|
protected _canvasIsIntersecting: boolean;
|
|
11
10
|
protected _onVisibleChangeCb: (currentVisible: boolean) => void;
|
|
11
|
+
private readonly global;
|
|
12
12
|
get container(): HTMLElement | null;
|
|
13
|
-
|
|
13
|
+
static idprefix: string;
|
|
14
|
+
static prefix_count: number;
|
|
15
|
+
static GenerateCanvasId(): string;
|
|
16
|
+
constructor();
|
|
14
17
|
getTitle(): string;
|
|
15
18
|
getWH(): {
|
|
16
19
|
width: number;
|
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
|
|
1
|
+
var BrowserWindowHandlerContribution_1, __decorate = this && this.__decorate || function(decorators, target, key, desc) {
|
|
2
2
|
var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
|
|
3
3
|
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
|
|
4
4
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
5
5
|
}, __metadata = this && this.__metadata || function(k, v) {
|
|
6
6
|
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
|
|
7
|
-
}, __param = this && this.__param || function(paramIndex, decorator) {
|
|
8
|
-
return function(target, key) {
|
|
9
|
-
decorator(target, key, paramIndex);
|
|
10
|
-
};
|
|
11
7
|
};
|
|
12
8
|
|
|
13
|
-
import {
|
|
9
|
+
import { injectable, BaseWindowHandlerContribution, ContainerModule, WindowHandlerContribution, application } from "@visactor/vrender-core";
|
|
14
10
|
|
|
15
11
|
import { BrowserCanvas } from "../../canvas/contributions/browser";
|
|
16
12
|
|
|
17
|
-
let BrowserWindowHandlerContribution = class extends BaseWindowHandlerContribution {
|
|
13
|
+
let BrowserWindowHandlerContribution = BrowserWindowHandlerContribution_1 = class extends BaseWindowHandlerContribution {
|
|
18
14
|
get container() {
|
|
19
15
|
return this.canvas.nativeCanvas.parentElement;
|
|
20
16
|
}
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
static GenerateCanvasId() {
|
|
18
|
+
return `${BrowserWindowHandlerContribution_1.idprefix}_${BrowserWindowHandlerContribution_1.prefix_count++}`;
|
|
19
|
+
}
|
|
20
|
+
constructor() {
|
|
21
|
+
super(), this.type = "browser", this._canvasIsIntersecting = !0, this.global = application.global;
|
|
23
22
|
}
|
|
24
23
|
getTitle() {
|
|
25
24
|
return this.canvas.id.toString();
|
|
@@ -38,7 +37,7 @@ let BrowserWindowHandlerContribution = class extends BaseWindowHandlerContributi
|
|
|
38
37
|
this.postInit();
|
|
39
38
|
}
|
|
40
39
|
postInit() {
|
|
41
|
-
try {
|
|
40
|
+
if (this.global.optimizeVisible) try {
|
|
42
41
|
this.observerCanvas();
|
|
43
42
|
} catch (err) {
|
|
44
43
|
console.error("发生错误,该环境不存在IntersectionObserver");
|
|
@@ -73,7 +72,7 @@ let BrowserWindowHandlerContribution = class extends BaseWindowHandlerContributi
|
|
|
73
72
|
dpr: params.dpr,
|
|
74
73
|
nativeCanvas: nativeCanvas,
|
|
75
74
|
container: container,
|
|
76
|
-
id:
|
|
75
|
+
id: BrowserWindowHandlerContribution_1.GenerateCanvasId(),
|
|
77
76
|
canvasControled: !0
|
|
78
77
|
};
|
|
79
78
|
this.canvas = new BrowserCanvas(options);
|
|
@@ -165,7 +164,8 @@ let BrowserWindowHandlerContribution = class extends BaseWindowHandlerContributi
|
|
|
165
164
|
}
|
|
166
165
|
};
|
|
167
166
|
|
|
168
|
-
BrowserWindowHandlerContribution.env = "browser", BrowserWindowHandlerContribution =
|
|
167
|
+
BrowserWindowHandlerContribution.env = "browser", BrowserWindowHandlerContribution.idprefix = "visactor_window",
|
|
168
|
+
BrowserWindowHandlerContribution.prefix_count = 0, BrowserWindowHandlerContribution = BrowserWindowHandlerContribution_1 = __decorate([ injectable(), __metadata("design:paramtypes", []) ], BrowserWindowHandlerContribution);
|
|
169
169
|
|
|
170
170
|
export { BrowserWindowHandlerContribution };
|
|
171
171
|
|