bg2e-js 2.3.11 → 2.3.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bg2e-js.js +356 -326
- package/dist/bg2e-js.js.map +1 -1
- package/package.json +56 -56
- package/src/app/AppController.ts +39 -39
- package/src/app/Bg2KeyboardEvent.ts +54 -54
- package/src/app/Bg2MouseEvent.ts +82 -82
- package/src/app/Bg2TouchEvent.ts +18 -18
- package/src/app/Canvas.ts +108 -108
- package/src/app/EventBase.ts +10 -10
- package/src/app/MainLoop.ts +273 -273
- package/src/app/index.ts +24 -24
- package/src/base/Color.ts +134 -134
- package/src/base/Environment.ts +183 -183
- package/src/base/Light.ts +192 -192
- package/src/base/Material.ts +620 -620
- package/src/base/PolyList.ts +365 -365
- package/src/base/Texture.ts +620 -620
- package/src/base/index.ts +81 -81
- package/src/db/Bg2LoaderPlugin.ts +143 -143
- package/src/db/DBPluginApi.ts +48 -48
- package/src/db/Loader.ts +116 -116
- package/src/db/LoaderPlugin.ts +34 -34
- package/src/db/MtlParser.ts +7 -7
- package/src/db/ObjLoaderPlugin.ts +54 -54
- package/src/db/ObjParser.ts +252 -252
- package/src/db/ObjWriterPlugin.ts +18 -18
- package/src/db/VitscnjLoaderPlugin.ts +112 -112
- package/src/db/Writer.ts +52 -52
- package/src/db/WriterPlugin.ts +22 -22
- package/src/db/index.ts +44 -44
- package/src/debug/DebugRenderer.ts +173 -173
- package/src/debug/WebGLTextureViewer.ts +75 -75
- package/src/debug/index.ts +6 -6
- package/src/index.html +11 -11
- package/src/index.ts +33 -33
- package/src/manipulation/SelectionBuffer.ts +81 -81
- package/src/manipulation/SelectionHighlight.ts +105 -84
- package/src/manipulation/SelectionIdAssignVisitor.ts +96 -96
- package/src/manipulation/SelectionManager.ts +196 -188
- package/src/manipulation/SelectionMode.ts +6 -6
- package/src/math/Mat3.ts +259 -259
- package/src/math/Mat4.ts +710 -710
- package/src/math/MatrixStrategy.ts +25 -25
- package/src/math/Quat.ts +65 -65
- package/src/math/Vec.ts +753 -753
- package/src/math/constants.ts +46 -46
- package/src/math/functions.ts +103 -103
- package/src/math/index.ts +74 -74
- package/src/phsics/joint.ts +137 -137
- package/src/primitives/arrow.ts +57 -57
- package/src/primitives/cone.ts +138 -138
- package/src/primitives/cube.ts +60 -60
- package/src/primitives/cylinder.ts +216 -216
- package/src/primitives/index.ts +13 -13
- package/src/primitives/plane.ts +31 -31
- package/src/primitives/sphere.ts +809 -809
- package/src/react/useBg2e.ts +69 -69
- package/src/render/BRDFIntegrationMap.ts +4 -4
- package/src/render/Environment.ts +135 -135
- package/src/render/FrameBuffer.ts +35 -35
- package/src/render/MaterialRenderer.ts +34 -34
- package/src/render/Pipeline.ts +108 -108
- package/src/render/PolyListRenderer.ts +47 -47
- package/src/render/RenderBuffer.ts +197 -197
- package/src/render/RenderQueue.ts +198 -198
- package/src/render/RenderState.ts +116 -116
- package/src/render/Renderer.ts +248 -248
- package/src/render/SceneAppController.ts +250 -250
- package/src/render/SceneRenderer.ts +387 -387
- package/src/render/Shader.ts +32 -32
- package/src/render/ShadowRenderer.ts +176 -176
- package/src/render/SkyCube.ts +105 -105
- package/src/render/SkySphere.ts +117 -117
- package/src/render/TextureMergerRenderer.ts +70 -70
- package/src/render/TextureRenderer.ts +34 -34
- package/src/render/index.ts +67 -67
- package/src/render/webgl/FrameBuffer.ts +9 -9
- package/src/render/webgl/MaterialRenderer.ts +112 -112
- package/src/render/webgl/Pipeline.ts +88 -88
- package/src/render/webgl/PolyListRenderer.ts +260 -260
- package/src/render/webgl/RenderBuffer.ts +226 -226
- package/src/render/webgl/Renderer.ts +262 -262
- package/src/render/webgl/SceneRenderer.ts +67 -67
- package/src/render/webgl/ShaderProgram.ts +424 -424
- package/src/render/webgl/ShadowRenderer.ts +6 -6
- package/src/render/webgl/SkyCube.ts +15 -15
- package/src/render/webgl/SkySphere.ts +15 -15
- package/src/render/webgl/State.ts +152 -152
- package/src/render/webgl/TextureRenderer.ts +167 -167
- package/src/render/webgl/VertexBuffer.ts +137 -137
- package/src/render/webgl/index.ts +35 -35
- package/src/scene/Camera.ts +458 -458
- package/src/scene/Chain.ts +44 -44
- package/src/scene/ChainJoint.ts +58 -58
- package/src/scene/Component.ts +177 -177
- package/src/scene/ComponentMap.ts +106 -106
- package/src/scene/Drawable.ts +154 -154
- package/src/scene/EnvironmentComponent.ts +141 -141
- package/src/scene/FindNodeVisitor.ts +59 -59
- package/src/scene/LightComponent.ts +154 -154
- package/src/scene/MatrixState.ts +46 -46
- package/src/scene/Node.ts +328 -328
- package/src/scene/NodeVisitor.ts +15 -15
- package/src/scene/OrbitCameraController.ts +450 -450
- package/src/scene/SmoothOrbitCameraController.ts +99 -99
- package/src/scene/Transform.ts +73 -73
- package/src/scene/index.ts +60 -60
- package/src/shaders/BasicDiffuseColorShader.ts +111 -111
- package/src/shaders/BasicPBRLightShader.ts +276 -276
- package/src/shaders/DebugRenderShader.ts +97 -97
- package/src/shaders/DepthRenderShader.ts +127 -127
- package/src/shaders/IrradianceMapCubeShader.ts +115 -115
- package/src/shaders/PBRLightIBLShader.ts +486 -486
- package/src/shaders/PickSelectionShader.ts +101 -101
- package/src/shaders/PresentDebugFramebufferShader.ts +118 -118
- package/src/shaders/PresentTextureShader.ts +99 -99
- package/src/shaders/SelectionHighlightShader.ts +143 -127
- package/src/shaders/ShaderFunction.ts +318 -318
- package/src/shaders/SkyCubeShader.ts +93 -93
- package/src/shaders/SkySphereShader.ts +102 -102
- package/src/shaders/SpecularMapCubeShader.ts +164 -164
- package/src/shaders/TextureMergerShader.ts +171 -171
- package/src/shaders/index.ts +36 -36
- package/src/shaders/webgl/color_correction.glsl +47 -47
- package/src/shaders/webgl/constants.glsl +6 -6
- package/src/shaders/webgl/index.ts +70 -70
- package/src/shaders/webgl/normal_map.glsl +9 -9
- package/src/shaders/webgl/pbr.glsl +173 -173
- package/src/shaders/webgl/uniforms.glsl +91 -91
- package/src/shaders/webgl_shader_lib.ts +213 -213
- package/src/tools/BinaryResourceProvider.ts +14 -14
- package/src/tools/ImageResourceProvider.ts +66 -66
- package/src/tools/MaterialModifier.ts +446 -446
- package/src/tools/Resource.ts +203 -203
- package/src/tools/ResourceProvider.ts +69 -69
- package/src/tools/TextResourceProvider.ts +24 -24
- package/src/tools/TextureCache.ts +51 -51
- package/src/tools/TextureResourceDatabase.ts +100 -100
- package/src/tools/UserAgent.ts +362 -362
- package/src/tools/VideoResourceProvider.ts +50 -50
- package/src/tools/WriteStrategy.ts +22 -22
- package/src/tools/base64.ts +11 -11
- package/src/tools/crypto.ts +19 -19
- package/src/tools/endiantess.ts +13 -13
- package/src/tools/image.ts +18 -18
- package/src/tools/index.ts +41 -41
- package/src/tools/processType.ts +39 -39
- package/src/vite-env.d.ts +12 -12
|
@@ -1,188 +1,196 @@
|
|
|
1
|
-
import Vec from "../math/Vec";
|
|
2
|
-
import SelectionBuffer from "./SelectionBuffer";
|
|
3
|
-
import Camera from "../scene/Camera";
|
|
4
|
-
import SelectionIdAssignVisitor from "./SelectionIdAssignVisitor";
|
|
5
|
-
import SelectionMode from "./SelectionMode";
|
|
6
|
-
import Renderer from "../render/Renderer";
|
|
7
|
-
import Node from "../scene/Node";
|
|
8
|
-
import Bg2MouseEvent from "../app/Bg2MouseEvent";
|
|
9
|
-
import Bg2TouchEvent from "../app/Bg2TouchEvent";
|
|
10
|
-
|
|
11
|
-
export type SelectionChangedData = {
|
|
12
|
-
polyList: any;
|
|
13
|
-
drawable: any;
|
|
14
|
-
}
|
|
15
|
-
export type SelectionChangedCallback = (selection: SelectionChangedData[]) => void;
|
|
16
|
-
|
|
17
|
-
export default class SelectionManager {
|
|
18
|
-
protected _renderer: Renderer;
|
|
19
|
-
protected _sceneRoot: Node | null;
|
|
20
|
-
protected _camera: Camera | null;
|
|
21
|
-
protected _selectionMode: SelectionMode;
|
|
22
|
-
protected _multiSelect: boolean;
|
|
23
|
-
protected _selection: Array<{ polyList: any; drawable: any }>;
|
|
24
|
-
protected _selectionChangedCallbacks: Record<string, SelectionChangedCallback>;
|
|
25
|
-
protected _selectionBuffer: SelectionBuffer | null = null;
|
|
26
|
-
protected _selectionIdVisitor: SelectionIdAssignVisitor | null = null;
|
|
27
|
-
protected _downPosition: Vec = new Vec();
|
|
28
|
-
protected _viewportSize: [number, number] = [1, 1];
|
|
29
|
-
protected _enabled: boolean = true;
|
|
30
|
-
|
|
31
|
-
constructor(renderer: Renderer) {
|
|
32
|
-
this._renderer = renderer;
|
|
33
|
-
this._sceneRoot = null;
|
|
34
|
-
this._camera = null;
|
|
35
|
-
this._selectionMode = SelectionMode.POLY_LIST;
|
|
36
|
-
this._multiSelect = false;
|
|
37
|
-
|
|
38
|
-
this._selection = [];
|
|
39
|
-
|
|
40
|
-
this._selectionChangedCallbacks = {}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
async init() {
|
|
44
|
-
this._selectionBuffer = new SelectionBuffer(this._renderer);
|
|
45
|
-
await this._selectionBuffer.init();
|
|
46
|
-
|
|
47
|
-
this._selectionIdVisitor = new SelectionIdAssignVisitor();
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
setViewportSize(w: number, h: number) {
|
|
51
|
-
this._viewportSize = [w, h];
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
get selection() {
|
|
55
|
-
return this._selection;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
enable() {
|
|
59
|
-
this.enabled = true;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
disable() {
|
|
63
|
-
this.enabled = false;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
get enabled() {
|
|
67
|
-
return this._enabled;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
set enabled(value: boolean) {
|
|
71
|
-
this._enabled = value;
|
|
72
|
-
if (!this._enabled) {
|
|
73
|
-
this.clearSelection();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
clearSelection() {
|
|
78
|
-
this._selection.forEach(item => item.polyList.selected = false);
|
|
79
|
-
this._selection = [];
|
|
80
|
-
this.triggerSelectionChanged();
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
set sceneRoot(root) {
|
|
84
|
-
this._sceneRoot = root;
|
|
85
|
-
this.clearSelection();
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
get sceneRoot() {
|
|
89
|
-
return this._sceneRoot;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
set camera(cam) {
|
|
93
|
-
this._camera = cam;
|
|
94
|
-
this.clearSelection();
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
get camera() {
|
|
98
|
-
if (this._camera) {
|
|
99
|
-
return this._camera;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
if (!this.sceneRoot) {
|
|
103
|
-
return null;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
this._camera = Camera.GetMain(this.sceneRoot);
|
|
107
|
-
return this._camera;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
set selectionMode(mode: SelectionMode) {
|
|
111
|
-
this._selectionMode = mode;
|
|
112
|
-
this.clearSelection();
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
get selectionMode() {
|
|
116
|
-
return this._selectionMode;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
this.
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
this.
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
this._selection
|
|
166
|
-
this.triggerSelectionChanged();
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
}
|
|
188
|
-
|
|
1
|
+
import Vec from "../math/Vec";
|
|
2
|
+
import SelectionBuffer from "./SelectionBuffer";
|
|
3
|
+
import Camera from "../scene/Camera";
|
|
4
|
+
import SelectionIdAssignVisitor from "./SelectionIdAssignVisitor";
|
|
5
|
+
import SelectionMode from "./SelectionMode";
|
|
6
|
+
import Renderer from "../render/Renderer";
|
|
7
|
+
import Node from "../scene/Node";
|
|
8
|
+
import Bg2MouseEvent from "../app/Bg2MouseEvent";
|
|
9
|
+
import Bg2TouchEvent from "../app/Bg2TouchEvent";
|
|
10
|
+
|
|
11
|
+
export type SelectionChangedData = {
|
|
12
|
+
polyList: any;
|
|
13
|
+
drawable: any;
|
|
14
|
+
}
|
|
15
|
+
export type SelectionChangedCallback = (selection: SelectionChangedData[]) => void;
|
|
16
|
+
|
|
17
|
+
export default class SelectionManager {
|
|
18
|
+
protected _renderer: Renderer;
|
|
19
|
+
protected _sceneRoot: Node | null;
|
|
20
|
+
protected _camera: Camera | null;
|
|
21
|
+
protected _selectionMode: SelectionMode;
|
|
22
|
+
protected _multiSelect: boolean;
|
|
23
|
+
protected _selection: Array<{ polyList: any; drawable: any }>;
|
|
24
|
+
protected _selectionChangedCallbacks: Record<string, SelectionChangedCallback>;
|
|
25
|
+
protected _selectionBuffer: SelectionBuffer | null = null;
|
|
26
|
+
protected _selectionIdVisitor: SelectionIdAssignVisitor | null = null;
|
|
27
|
+
protected _downPosition: Vec = new Vec();
|
|
28
|
+
protected _viewportSize: [number, number] = [1, 1];
|
|
29
|
+
protected _enabled: boolean = true;
|
|
30
|
+
|
|
31
|
+
constructor(renderer: Renderer) {
|
|
32
|
+
this._renderer = renderer;
|
|
33
|
+
this._sceneRoot = null;
|
|
34
|
+
this._camera = null;
|
|
35
|
+
this._selectionMode = SelectionMode.POLY_LIST;
|
|
36
|
+
this._multiSelect = false;
|
|
37
|
+
|
|
38
|
+
this._selection = [];
|
|
39
|
+
|
|
40
|
+
this._selectionChangedCallbacks = {}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
async init() {
|
|
44
|
+
this._selectionBuffer = new SelectionBuffer(this._renderer);
|
|
45
|
+
await this._selectionBuffer.init();
|
|
46
|
+
|
|
47
|
+
this._selectionIdVisitor = new SelectionIdAssignVisitor();
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
setViewportSize(w: number, h: number) {
|
|
51
|
+
this._viewportSize = [w, h];
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
get selection() {
|
|
55
|
+
return this._selection;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
enable() {
|
|
59
|
+
this.enabled = true;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
disable() {
|
|
63
|
+
this.enabled = false;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
get enabled() {
|
|
67
|
+
return this._enabled;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
set enabled(value: boolean) {
|
|
71
|
+
this._enabled = value;
|
|
72
|
+
if (!this._enabled) {
|
|
73
|
+
this.clearSelection();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
clearSelection() {
|
|
78
|
+
this._selection.forEach(item => item.polyList.selected = false);
|
|
79
|
+
this._selection = [];
|
|
80
|
+
this.triggerSelectionChanged();
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
set sceneRoot(root) {
|
|
84
|
+
this._sceneRoot = root;
|
|
85
|
+
this.clearSelection();
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
get sceneRoot() {
|
|
89
|
+
return this._sceneRoot;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
set camera(cam) {
|
|
93
|
+
this._camera = cam;
|
|
94
|
+
this.clearSelection();
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
get camera() {
|
|
98
|
+
if (this._camera) {
|
|
99
|
+
return this._camera;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
if (!this.sceneRoot) {
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
this._camera = Camera.GetMain(this.sceneRoot);
|
|
107
|
+
return this._camera;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
set selectionMode(mode: SelectionMode) {
|
|
111
|
+
this._selectionMode = mode;
|
|
112
|
+
this.clearSelection();
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
get selectionMode() {
|
|
116
|
+
return this._selectionMode;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
setSelectionMode(mode: SelectionMode) {
|
|
120
|
+
this.selectionMode = mode;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
setMultiSelectMode(mode: boolean) {
|
|
124
|
+
this.multiSelectMode = mode;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
set multiSelectMode(mode) {
|
|
128
|
+
this._multiSelect = mode;
|
|
129
|
+
this.clearSelection();
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
get multiSelectMode() {
|
|
133
|
+
return this._multiSelect;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
onSelectionChanged(id: string, cb: SelectionChangedCallback) {
|
|
137
|
+
this._selectionChangedCallbacks[id] = cb;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
triggerSelectionChanged() {
|
|
141
|
+
for (const key in this._selectionChangedCallbacks) {
|
|
142
|
+
this._selectionChangedCallbacks[key](this._selection);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
mouseUp(evt: { x: number; y: number }) {
|
|
147
|
+
if (!this._selectionBuffer || !this._selectionIdVisitor || !this.camera || !this.sceneRoot || !this.enabled) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
const upPosition = new Vec([evt.x, evt.y]);
|
|
152
|
+
if (Vec.Distance(this._downPosition, upPosition) < 2) {
|
|
153
|
+
if (this._selectionIdVisitor && this.sceneRoot) {
|
|
154
|
+
this._selectionIdVisitor.selectionMode = this.selectionMode;
|
|
155
|
+
this.sceneRoot.accept(this._selectionIdVisitor);
|
|
156
|
+
}
|
|
157
|
+
const pixelRatio = window.devicePixelRatio || 1;
|
|
158
|
+
this._selectionBuffer?.reshape(this._viewportSize[0], this._viewportSize[1]);
|
|
159
|
+
const pickedColor = this._selectionBuffer!.draw(this.sceneRoot, this.camera, evt.x * pixelRatio, evt.y * pixelRatio);
|
|
160
|
+
const item = this._selectionIdVisitor.findElement(pickedColor);
|
|
161
|
+
const isSelected = () => this._selection.find(s => {
|
|
162
|
+
return s.polyList === item.polyList && s.drawable === item.drawable
|
|
163
|
+
});
|
|
164
|
+
if (item && this._multiSelect && !isSelected()) {
|
|
165
|
+
this._selection.push(item);
|
|
166
|
+
this.triggerSelectionChanged();
|
|
167
|
+
}
|
|
168
|
+
else if (item && !isSelected()) {
|
|
169
|
+
this._selection = [item];
|
|
170
|
+
this.triggerSelectionChanged();
|
|
171
|
+
}
|
|
172
|
+
else if (!item && !this._multiSelect && this._selection.length > 0) {
|
|
173
|
+
this._selection = [];
|
|
174
|
+
this.triggerSelectionChanged();
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
this._selection.forEach(item => item.polyList.selected = true);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
mouseDown(evt: Bg2MouseEvent) {
|
|
182
|
+
this._downPosition = new Vec([evt.x, evt.y]);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
touchStart(evt: Bg2TouchEvent) {
|
|
186
|
+
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
touchEnd(evt: Bg2TouchEvent) {
|
|
190
|
+
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
destroy() {
|
|
194
|
+
this._selectionBuffer?.destroy();
|
|
195
|
+
}
|
|
196
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
enum SelectionMode {
|
|
2
|
-
OBJECT = 0,
|
|
3
|
-
POLY_LIST = 1
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
export default SelectionMode;
|
|
1
|
+
enum SelectionMode {
|
|
2
|
+
OBJECT = 0,
|
|
3
|
+
POLY_LIST = 1
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
export default SelectionMode;
|