@maptalks/transform-control 0.122.0 → 0.123.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.
@@ -1,1904 +0,0 @@
1
- /*!
2
- * @maptalks/transform-control v0.122.0
3
- * LICENSE : UNLICENSED
4
- * (c) 2016-2026 maptalks.org
5
- */
6
- import { quat as A, mat4 as e, reshader as t, vec3 as s, GroupGLLayer as i, vec2 as n } from "@maptalks/gpu";
7
-
8
- import * as o from "maptalks";
9
-
10
- import { Point as I, Coordinate as g, Eventable as r, Handlerable as a, Class as C, INTERNAL_LAYER_PREFIX as h } from "maptalks";
11
-
12
- import { GLTFLayer as w, GLTFMarker as c } from "@maptalks/gltf-layer/dist/maptalks.gltf.gpu.es.js";
13
-
14
- const Q = {
15
- yuanhuan: {
16
- accessors: [ {
17
- name: "������_1_0_positions",
18
- componentType: 5126,
19
- count: 104,
20
- min: [ -5.407599925994873, -5.404099941253662, 0 ],
21
- max: [ 5.405200004577637, 5.406300067901611, 0 ],
22
- type: "VEC3",
23
- bufferView: 0,
24
- byteOffset: 0
25
- }, {
26
- name: "������_1_0_normals",
27
- componentType: 5126,
28
- count: 104,
29
- min: [ 0, 0, 1 ],
30
- max: [ 0, 0, 1 ],
31
- type: "VEC3",
32
- bufferView: 1,
33
- byteOffset: 0
34
- }, {
35
- name: "������_1_0_indices",
36
- componentType: 5123,
37
- count: 288,
38
- min: [ 0 ],
39
- max: [ 103 ],
40
- type: "SCALAR",
41
- bufferView: 2,
42
- byteOffset: 0
43
- } ],
44
- asset: {
45
- generator: "obj2gltf",
46
- version: "2.0"
47
- },
48
- buffers: [ {
49
- name: "缩放圈-新",
50
- byteLength: 3072,
51
- uri: "data:application/octet-stream;base64,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AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAABAAIAAAACAAMABAAFAAYABAAGAAcAAwACAAgAAwAIAAkACgALAAwACgAMAA0ADQAMAA4ADQAOAA8ADwAOABAADwAQABEAEgATABQAEgAUABUAFgAXABgAFgAYABkAGgAbABwAGgAcAB0AHgALAAoAHwALAB4AHwAgAAsAIQAgAB8AIgAjACAAIgAgACEAJAAlACYAJAAmACcAJwAmACgAJwAoACkAKgArACwAKgAsAC0ALgAvADAALgAwADEAGQAYADIAGQAyADMANAA1ABsANAAbABoAFQAUADYAFQA2ADcAOAA5ADoAOAA6ADsAPAA9AD4APAA/AD0AQAA/ADwAQABBAD8AQgBBAEAAQgBAAEMARABFAEYARABGAEcARABHAEgARgBJAEcARgBKAEkASwBKAEYASwBMAEoASwBNAEwACQAIAC8ACQAvAC4ALQAsADkALQA5ADgAOwA6AE4AOwBOAE8ATwBOAE0ATwBNAEsAKQAoACsAKQArACoANwA2AFAANwBQAFEAUQBQAFIAUQBSAFMAUwBSAFQAUwBUAFUAVgBXAFgAVgBYAFkAVgBZAFoAWwBZAFgAXABZAFsAXABdAFkAXgBdAFwAXwBdAF4APAA+AGAAPABgAGEAMQAwABcAMQAXABYAYgBjADUAYgA1ADQAYQBgAGMAYQBjAGIAMwAyAF0AMwBdAF8AHQAcAGQAHQBkAGUAZQBkAAUAZQAFAAQAZgBnAAcAZgAHAAYAEQAQABMAEQATABIA"
52
- } ],
53
- bufferViews: [ {
54
- name: "bufferView_0",
55
- buffer: 0,
56
- byteLength: 1248,
57
- byteOffset: 0,
58
- byteStride: 12,
59
- target: 34962
60
- }, {
61
- name: "bufferView_1",
62
- buffer: 0,
63
- byteLength: 1248,
64
- byteOffset: 1248,
65
- byteStride: 12,
66
- target: 34962
67
- }, {
68
- name: "bufferView_2",
69
- buffer: 0,
70
- byteLength: 576,
71
- byteOffset: 2496,
72
- target: 34963
73
- } ],
74
- materials: [ {
75
- name: "SVGMat_001",
76
- pbrMetallicRoughness: {
77
- baseColorFactor: [ .5, .5, .5, 1 ],
78
- metallicFactor: 0,
79
- roughnessFactor: 1
80
- },
81
- emissiveFactor: [ 0, 0, 0 ],
82
- alphaMode: "OPAQUE",
83
- doubleSided: !1
84
- } ],
85
- meshes: [ {
86
- name: "������_1",
87
- primitives: [ {
88
- attributes: {
89
- POSITION: 0,
90
- NORMAL: 1
91
- },
92
- indices: 2,
93
- material: 0,
94
- mode: 4
95
- } ]
96
- } ],
97
- nodes: [ {
98
- name: "������",
99
- mesh: 0
100
- } ],
101
- scene: 0,
102
- scenes: [ {
103
- nodes: [ 0 ]
104
- } ]
105
- },
106
- yuanhuan41: {
107
- accessors: [ {
108
- name: "Բ��_1_0_positions",
109
- componentType: 5126,
110
- count: 39,
111
- min: [ 0, 0, 0 ],
112
- max: [ 5.489999771118164, 0, 5.488900184631348 ],
113
- type: "VEC3",
114
- bufferView: 0,
115
- byteOffset: 0
116
- }, {
117
- name: "Բ��_1_0_normals",
118
- componentType: 5126,
119
- count: 39,
120
- min: [ 0, -.999939501285553, -1 ],
121
- max: [ .13969914615154266, 1, 1 ],
122
- type: "VEC3",
123
- bufferView: 1,
124
- byteOffset: 0
125
- }, {
126
- name: "Բ��_1_0_indices",
127
- componentType: 5123,
128
- count: 105,
129
- min: [ 0 ],
130
- max: [ 38 ],
131
- type: "SCALAR",
132
- bufferView: 2,
133
- byteOffset: 0
134
- } ],
135
- asset: {
136
- generator: "obj2gltf",
137
- version: "2.0"
138
- },
139
- buffers: [ {
140
- name: "yh41",
141
- byteLength: 1148,
142
- uri: "data:application/octet-stream;base64,8tKXQAAAAACoNU09FK6vQAAAAAB1Ako/FK6vQAAAAAAAAACATfOAQAAAAAACmkg+K4dWQAAAAAAIrNw+WvUtQAAAAABbsT8/X5gIQAAAAACMSpI/OUWbQAAAAAD0/VQ/LbKHQAAAAAD0/XQ/W0JqQAAAAAC6SZQ/dLXNPwAAAACfq80/H4VHQAAAAAB0JLc/ZognQAAAAAA1XuI/YVSSPwAAAAAukAhABaMKQAAAAAB4nApABcU/PwAAAACF6y1Aw2TiPwAAAACRfidASS63PwAAAABKe0dAJLncPgAAAACze1ZAj1OUPwAAAADjNmpAAppIPgAAAADu64BAnRF1PwAAAAD8qYdAqDVNPQAAAADBypdAgQRVPwAAAAAIPZtAAAAAAAAAAAASpa9AAwlKPwAAAAASpa9AJJd/PAAAAAASpa9AAwlKPwAAAAASpa9AAAAAAAAAAAASpa9Asp1vPQAAAAASpa9AJLn8PQAAAAASpa9AqoJRPgAAAAASpa9ARwOYPgAAAAASpa9AHhbKPgAAAAASpa9A2hv8PgAAAAASpa9A5q4VPwAAAAASpa9A+n4qPwAAAAASpa9AQxw7PwAAAAASpa9AwhdGPwAAAAASpa9AAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAJ5X/OwL+fz8AAACAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/Kzs0PAn8f78AAACApLK/PA7uf78AAACAeJkZPefRfz8AAACA+ZldPQSgf78AAACA6XSTPelVfz8AAACALLO3PdT3fr8AAACAfkjZPR2Ofr8AAACANf32Paohfj8AAACAeUYHPqDBfT8AAACASw0PPlt9fb8AAACAAAABAAIAAwABAAAABAABAAMABQABAAQABgAHAAUABwABAAUABgAIAAcABgAJAAgACgAJAAYACgALAAkACgAMAAsADQAMAAoADQAOAAwADwAOAA0ADwAQAA4ADwARABAAEgARAA8AEgATABEAFAATABIAFAAVABMAFgAVABQAFgAXABUAGAAXABYAGAAZABcAGgAbABwAHQAbABoAHgAbAB0AHwAbAB4AIAAbAB8AIQAbACAAIgAbACEAIwAbACIAJAAbACMAJQAbACQAJgAbACUAAAA="
143
- } ],
144
- bufferViews: [ {
145
- name: "bufferView_0",
146
- buffer: 0,
147
- byteLength: 468,
148
- byteOffset: 0,
149
- byteStride: 12,
150
- target: 34962
151
- }, {
152
- name: "bufferView_1",
153
- buffer: 0,
154
- byteLength: 468,
155
- byteOffset: 468,
156
- byteStride: 12,
157
- target: 34962
158
- }, {
159
- name: "bufferView_2",
160
- buffer: 0,
161
- byteLength: 212,
162
- byteOffset: 936,
163
- target: 34963
164
- } ],
165
- materials: [ {
166
- name: "SVGMat_002",
167
- pbrMetallicRoughness: {
168
- baseColorFactor: [ .588, .588, .588, 1 ],
169
- metallicFactor: 0,
170
- roughnessFactor: .99
171
- },
172
- emissiveFactor: [ 0, 0, 0 ],
173
- alphaMode: "OPAQUE",
174
- doubleSided: !1
175
- } ],
176
- meshes: [ {
177
- name: "Բ��_1",
178
- primitives: [ {
179
- attributes: {
180
- POSITION: 0,
181
- NORMAL: 1
182
- },
183
- indices: 2,
184
- material: 0,
185
- mode: 4
186
- } ]
187
- } ],
188
- nodes: [ {
189
- name: "Բ��",
190
- mesh: 0
191
- } ],
192
- scene: 0,
193
- scenes: [ {
194
- nodes: [ 0 ]
195
- } ]
196
- },
197
- yuanhuan411: {
198
- accessors: [ {
199
- name: "����СȦ_1_0_positions",
200
- componentType: 5126,
201
- count: 28,
202
- min: [ .026000000536441803, -4.6834001541137695, 0 ],
203
- max: [ 4.696700096130371, -.014800000004470348, 0 ],
204
- type: "VEC3",
205
- bufferView: 0,
206
- byteOffset: 0
207
- }, {
208
- name: "����СȦ_1_0_normals",
209
- componentType: 5126,
210
- count: 28,
211
- min: [ 0, 0, 1 ],
212
- max: [ 0, 0, 1 ],
213
- type: "VEC3",
214
- bufferView: 1,
215
- byteOffset: 0
216
- }, {
217
- name: "����СȦ_1_0_indices",
218
- componentType: 5123,
219
- count: 78,
220
- min: [ 0 ],
221
- max: [ 27 ],
222
- type: "SCALAR",
223
- bufferView: 2,
224
- byteOffset: 0
225
- } ],
226
- asset: {
227
- generator: "obj2gltf",
228
- version: "2.0"
229
- },
230
- buffers: [ {
231
- name: "yuanhuan411",
232
- byteLength: 828,
233
- uri: "data:application/octet-stream;base64,ufwXQLN7Mr8AAAAAObRAQLFQK78AAAAA1ediQMWP8b4AAAAAGQQ6QCv2174AAAAAqFdeQHUCWr4AAAAA7FGCQL6fmr0AAAAAHHyDQDLmrr4AAAAAXkuWQJf/kL4AAAAAXkuWQLN7crwAAAAAMCrxP2RdhL8AAAAA/BgDQJeQn78AAAAADeARQAg9i78AAAAAukkIQISeXb8AAAAAZaogQH/Zbb8AAAAA7Q3ePr4wOcAAAAAA5IMuP9/gP8AAAAAAJQZxPwrXH8AAAAAAPZs1P6UsF8AAAAAAdy2hP0VHAsAAAAAAb/CFP5eQ778AAAAA0ES4P32utr8AAAAAAprQPyL9zr8AAAAAi/1lPqqCXcAAAAAA9dv3PtcSYsAAAAAADi2yPZvmgcAAAAAAYTK1PssQg8AAAAAA9P3UPGrelcAAAAAA4liXPmrelcAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAABAAIAAAACAAMAAwACAAQABQAGAAcABQAHAAgABAACAAYABAAGAAUACQAKAAsACQALAAwAAAANAAEADgAPABAADgAQABEAEQAQABIAEQASABMAFAAVAAoAFAAKAAkADAALAA0ADAANAAAAFgAXAA8AFgAPAA4AGAAZABcAGAAXABYAGgAZABgAGgAbABkAEwASABUAEwAVABQA"
234
- } ],
235
- bufferViews: [ {
236
- name: "bufferView_0",
237
- buffer: 0,
238
- byteLength: 336,
239
- byteOffset: 0,
240
- byteStride: 12,
241
- target: 34962
242
- }, {
243
- name: "bufferView_1",
244
- buffer: 0,
245
- byteLength: 336,
246
- byteOffset: 336,
247
- byteStride: 12,
248
- target: 34962
249
- }, {
250
- name: "bufferView_2",
251
- buffer: 0,
252
- byteLength: 156,
253
- byteOffset: 672,
254
- target: 34963
255
- } ],
256
- materials: [ {
257
- name: "SVGMat",
258
- pbrMetallicRoughness: {
259
- baseColorFactor: [ .588, .588, .588, 1 ],
260
- metallicFactor: 0,
261
- roughnessFactor: .99
262
- },
263
- emissiveFactor: [ 0, 0, 0 ],
264
- alphaMode: "OPAQUE",
265
- doubleSided: !1
266
- } ],
267
- meshes: [ {
268
- name: "����СȦ_1",
269
- primitives: [ {
270
- attributes: {
271
- POSITION: 0,
272
- NORMAL: 1
273
- },
274
- indices: 2,
275
- material: 0,
276
- mode: 4
277
- } ]
278
- } ],
279
- nodes: [ {
280
- name: "����СȦ",
281
- mesh: 0
282
- } ],
283
- scene: 0,
284
- scenes: [ {
285
- nodes: [ 0 ]
286
- } ]
287
- },
288
- yuanpan: {
289
- accessors: [ {
290
- name: "Circle001_1_0_positions",
291
- componentType: 5126,
292
- count: 28,
293
- min: [ -1.9510999917984009, 0, -1.9510999917984009 ],
294
- max: [ 1.9510999917984009, 0, 1.9510999917984009 ],
295
- type: "VEC3",
296
- bufferView: 0,
297
- byteOffset: 0
298
- }, {
299
- name: "Circle001_1_0_normals",
300
- componentType: 5126,
301
- count: 28,
302
- min: [ 0, 1, 0 ],
303
- max: [ 0, 1, 0 ],
304
- type: "VEC3",
305
- bufferView: 1,
306
- byteOffset: 0
307
- }, {
308
- name: "Circle001_1_0_indices",
309
- componentType: 5123,
310
- count: 78,
311
- min: [ 0 ],
312
- max: [ 27 ],
313
- type: "SCALAR",
314
- bufferView: 2,
315
- byteOffset: 0
316
- } ],
317
- asset: {
318
- generator: "obj2gltf",
319
- version: "2.0"
320
- },
321
- buffers: [ {
322
- name: "yuanpan",
323
- byteLength: 828,
324
- uri: "data:application/octet-stream;base64,S+rkvgAAAADRIvM/AAAAAAAAAAClvfk/S+rkPgAAAADRIvM/0SLzvwAAAABL6uQ+MlXgvwAAAACsi1s/c9fCvwAAAACvJZw/pb35vwAAAAAAAAAA0SLzvwAAAABL6uS+MlXgvwAAAACsi1u/c9fCvwAAAACvJZy/ryWcvwAAAABz18K/rItbvwAAAAAyVeC/S+rkvgAAAADRIvO/AAAAgAAAAAClvfm/S+rkPgAAAADRIvO/rItbPwAAAAAyVeC/ryWcPwAAAABz18K/c9fCPwAAAACvJZy/MlXgPwAAAACsi1u/0SLzPwAAAABL6uS+pb35PwAAAAAAAACA0SLzPwAAAABL6uQ+MlXgPwAAAACsi1s/c9fCPwAAAACvJZw/ryWcvwAAAABz18I/ryWcPwAAAABz18I/rItbvwAAAAAyVeA/rItbPwAAAAAyVeA/AAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAAAAAAAgD8AAACAAAABAAIAAwAEAAUABgADAAUABwAGAAUACAAHAAUACQAIAAUACgAJAAUACwAKAAUADAALAAUADQAMAAUADgANAAUADwAOAAUAEAAPAAUAEQAQAAUAEgARAAUAEwASAAUAFAATAAUAFQAUAAUAFgAVAAUAFwAWAAUAFwAFABgAGQAXABgAGQAYABoAGwAZABoAAgAbABoAAAACABoA"
325
- } ],
326
- bufferViews: [ {
327
- name: "bufferView_0",
328
- buffer: 0,
329
- byteLength: 336,
330
- byteOffset: 0,
331
- byteStride: 12,
332
- target: 34962
333
- }, {
334
- name: "bufferView_1",
335
- buffer: 0,
336
- byteLength: 336,
337
- byteOffset: 336,
338
- byteStride: 12,
339
- target: 34962
340
- }, {
341
- name: "bufferView_2",
342
- buffer: 0,
343
- byteLength: 156,
344
- byteOffset: 672,
345
- target: 34963
346
- } ],
347
- materials: [ {
348
- name: "wire_008110135",
349
- pbrMetallicRoughness: {
350
- baseColorFactor: [ .0314, .4314, .5294, 1 ],
351
- metallicFactor: 0,
352
- roughnessFactor: .968
353
- },
354
- emissiveFactor: [ 0, 0, 0 ],
355
- alphaMode: "OPAQUE",
356
- doubleSided: !1
357
- } ],
358
- meshes: [ {
359
- name: "Circle001_1",
360
- primitives: [ {
361
- attributes: {
362
- POSITION: 0,
363
- NORMAL: 1
364
- },
365
- indices: 2,
366
- material: 0,
367
- mode: 4
368
- } ]
369
- } ],
370
- nodes: [ {
371
- name: "Circle001",
372
- mesh: 0
373
- } ],
374
- scene: 0,
375
- scenes: [ {
376
- nodes: [ 0 ]
377
- } ]
378
- },
379
- zzhou: {
380
- accessors: [ {
381
- name: "Cube.001-Mesh_0_positions",
382
- componentType: 5126,
383
- count: 45,
384
- min: [ -.2711470127105713, -5.473427772521973, -.2711470127105713 ],
385
- max: [ .2711470127105713, .46298399567604065, .2711470127105713 ],
386
- type: "VEC3",
387
- bufferView: 0,
388
- byteOffset: 0
389
- }, {
390
- name: "Cube.001-Mesh_0_normals",
391
- componentType: 5126,
392
- count: 45,
393
- min: [ -1, -1, -1 ],
394
- max: [ 1, 1, 1 ],
395
- type: "VEC3",
396
- bufferView: 1,
397
- byteOffset: 0
398
- }, {
399
- name: "Cube.001-Mesh_0_texcoords",
400
- componentType: 5126,
401
- count: 45,
402
- min: [ .125, 0 ],
403
- max: [ .875, 1 ],
404
- type: "VEC2",
405
- bufferView: 2,
406
- byteOffset: 0
407
- }, {
408
- name: "Cube.001-Mesh_0_indices",
409
- componentType: 5123,
410
- count: 72,
411
- min: [ 0 ],
412
- max: [ 44 ],
413
- type: "SCALAR",
414
- bufferView: 3,
415
- byteOffset: 0
416
- } ],
417
- asset: {
418
- generator: "obj2gltf",
419
- version: "2.0"
420
- },
421
- buffers: [ {
422
- name: "Z",
423
- byteLength: 1584,
424
- uri: "data:application/octet-stream;base64,/waNvZMdK77/Bo09/waNPZMdK77/Bo09/waNPR4Kr8D/Bo09l+KKPVImr8D/Bo09/waNvVImr8D/Bo09yNOKPsjTir7I04o+AAAAAD0M7T4AAAAAyNOKvsjTir7I04o+yNOKvsjTir7I04o+AAAAAD0M7T4AAAAAyNOKvsjTir7I04q+yNOKvsjTir7I04q+yNOKPsjTir7I04q+yNOKPsjTir7I04o+yNOKvsjTir7I04o+yNOKPsjTir7I04q+AAAAAD0M7T4AAAAAyNOKPsjTir7I04o+yNOKvsjTir7I04q+AAAAAD0M7T4AAAAAyNOKPsjTir7I04q+/waNPZMdK77/Bo09/waNPZMdK77/Bo29/waNPVImr8D/Bo29/waNPVImr8D/Bo09/waNPR4Kr8D/Bo09/waNvZMdK77/Bo09/waNvVImr8D/Bo09/waNvVImr8D/Bo29/waNvZMdK77/Bo29/waNvZMdK77/Bo29/waNvVImr8D/Bo29/waNPVImr8D/Bo29/waNPZMdK77/Bo29/waNPZMdK77/Bo09/waNvZMdK77/Bo09/waNvZMdK77/Bo29/waNPZMdK77/Bo29/waNvVImr8D/Bo09cooOO1Imr8BAMTI7/waNvVImr8D/Bo29/waNPVImr8D/Bo29/waNPVImr8D/Bo09l+KKPVImr8D/Bo09/waNPVImr8D/Bo09AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAFFmsT5wJHA/AAAAAFFmsT5wJHA/AAAAAFFmsT5wJHA/cCRwv1FmsT4AAAAAcCRwv1FmsT4AAAAAcCRwv1FmsT4AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAcCRwP1FmsT4AAAAAcCRwP1FmsT4AAAAAcCRwP1FmsT4AAAAAAAAAAFFmsT5wJHC/AAAAAFFmsT5wJHC/AAAAAFFmsT5wJHC/AACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAADAPgAAQD8AAMA+AACAP2L1Hz8AAIA/AAAgP3uDfz8AACA/AABAPwAAwD4AAIA+AAAgPwAAAAAAAMA+AAAAAAAAwD4AAIA/AAAgPwAAQD8AAMA+AABAPwAAAD4AAAA/AADAPgAAAD8AAMA+AACAPgAAAD4AAIA+AADAPgAAAD8AACA/AACAPgAAwD4AAIA+AADAPgAAQD8AACA/AAAAPwAAwD4AAAA/AADAPgAAAD8AAMA+AABAPwAAID8AAEA/AAAgPwAAAD9i9R8/AAAAPwAAwD4AAAA/AAAgPwAAAD8AACA/AACAPgAAwD4AAIA+AADAPgAAgD4AACA/AACAPgAAID8AAAAAAADAPgAAAAAAAAA+AAAAPwAAwD4AAAA/AADAPgAAgD4AAAA+AACAPgAAID8AAAA/vAJBP/mGwj4AACA/AACAPgAAYD8AAIA+AAAgPwAAgD97g18/AAAAPwAAYD8AAAA/AAABAAIAAgADAAQAAgAEAAAABQAGAAcACAAJAAoACwAMAA0ACwANAA4ADwAQABEAEgATABQAFQAWABcAFwAYABkAFwAZABUAGgAbABwAGgAcAB0AHgAfACAAHgAgACEAIgAjACQAIgAkACUAJgAnACgAKAAnACkAAwACACoAKQAnACsAKQArACwAJwAmACsA"
425
- } ],
426
- bufferViews: [ {
427
- name: "bufferView_0",
428
- buffer: 0,
429
- byteLength: 540,
430
- byteOffset: 0,
431
- byteStride: 12,
432
- target: 34962
433
- }, {
434
- name: "bufferView_1",
435
- buffer: 0,
436
- byteLength: 540,
437
- byteOffset: 540,
438
- byteStride: 12,
439
- target: 34962
440
- }, {
441
- name: "bufferView_2",
442
- buffer: 0,
443
- byteLength: 360,
444
- byteOffset: 1080,
445
- byteStride: 8,
446
- target: 34962
447
- }, {
448
- name: "bufferView_3",
449
- buffer: 0,
450
- byteLength: 144,
451
- byteOffset: 1440,
452
- target: 34963
453
- } ],
454
- materials: [ {
455
- name: "Material.001",
456
- pbrMetallicRoughness: {
457
- baseColorFactor: [ .8, .8, .8, 1 ],
458
- metallicFactor: 0,
459
- roughnessFactor: .676000006
460
- },
461
- emissiveFactor: [ 0, 0, 0 ],
462
- alphaMode: "OPAQUE",
463
- doubleSided: !1
464
- } ],
465
- meshes: [ {
466
- name: "Cube.001-Mesh",
467
- primitives: [ {
468
- attributes: {
469
- POSITION: 0,
470
- NORMAL: 1,
471
- TEXCOORD_0: 2
472
- },
473
- indices: 3,
474
- material: 0,
475
- mode: 4
476
- } ]
477
- } ],
478
- nodes: [ {
479
- name: "Cube.001",
480
- mesh: 0
481
- } ],
482
- scene: 0,
483
- scenes: [ {
484
- nodes: [ 0 ]
485
- } ]
486
- },
487
- jiantou: {
488
- accessors: [ {
489
- name: "��ͷ_1_0_positions",
490
- componentType: 5126,
491
- count: 7,
492
- min: [ -.47690001130104065, -.8044000267982483, 0 ],
493
- max: [ .47780001163482666, 0, 0 ],
494
- type: "VEC3",
495
- bufferView: 0,
496
- byteOffset: 0
497
- }, {
498
- name: "��ͷ_1_0_normals",
499
- componentType: 5126,
500
- count: 7,
501
- min: [ 0, 0, 1 ],
502
- max: [ 0, 0, 1 ],
503
- type: "VEC3",
504
- bufferView: 1,
505
- byteOffset: 0
506
- }, {
507
- name: "��ͷ_1_0_indices",
508
- componentType: 5123,
509
- count: 15,
510
- min: [ 0 ],
511
- max: [ 6 ],
512
- type: "SCALAR",
513
- bufferView: 2,
514
- byteOffset: 0
515
- } ],
516
- asset: {
517
- generator: "obj2gltf",
518
- version: "2.0"
519
- },
520
- buffers: [ {
521
- name: "jiantou",
522
- byteLength: 200,
523
- uri: "data:application/octet-stream;base64,bxIDOintTb8AAAAAH/RsvsKGp74AAAAAPSz0vsKGp74AAAAANs17PsKGp74AAAAANKL0PsKGp74AAAAANs17PgAAAAAAAAAAH/RsvgAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAABAAIAAAADAAEAAAAEAAMAAQAFAAYAAQADAAUAAAA="
524
- } ],
525
- bufferViews: [ {
526
- name: "bufferView_0",
527
- buffer: 0,
528
- byteLength: 84,
529
- byteOffset: 0,
530
- byteStride: 12,
531
- target: 34962
532
- }, {
533
- name: "bufferView_1",
534
- buffer: 0,
535
- byteLength: 84,
536
- byteOffset: 84,
537
- byteStride: 12,
538
- target: 34962
539
- }, {
540
- name: "bufferView_2",
541
- buffer: 0,
542
- byteLength: 32,
543
- byteOffset: 168,
544
- target: 34963
545
- } ],
546
- materials: [ {
547
- name: "SVGMat_003",
548
- pbrMetallicRoughness: {
549
- baseColorFactor: [ .588, .588, .588, 1 ],
550
- metallicFactor: 0,
551
- roughnessFactor: .99
552
- },
553
- emissiveFactor: [ 0, 0, 0 ],
554
- alphaMode: "OPAQUE",
555
- doubleSided: !1
556
- } ],
557
- meshes: [ {
558
- name: "��ͷ_1",
559
- primitives: [ {
560
- attributes: {
561
- POSITION: 0,
562
- NORMAL: 1
563
- },
564
- indices: 2,
565
- material: 0,
566
- mode: 4
567
- } ]
568
- } ],
569
- nodes: [ {
570
- name: "��ͷ",
571
- mesh: 0
572
- } ],
573
- scene: 0,
574
- scenes: [ {
575
- nodes: [ 0 ]
576
- } ]
577
- },
578
- xuanzhuan: {
579
- accessors: [ {
580
- name: "��ת001_1_0_positions",
581
- componentType: 5126,
582
- count: 369,
583
- min: [ -6.572299957275391, -7.298999786376953, 0 ],
584
- max: [ 6.5742998123168945, 7.298299789428711, 0 ],
585
- type: "VEC3",
586
- bufferView: 0,
587
- byteOffset: 0
588
- }, {
589
- name: "��ת001_1_0_normals",
590
- componentType: 5126,
591
- count: 369,
592
- min: [ 0, -1, 0 ],
593
- max: [ 0, 0, 1 ],
594
- type: "VEC3",
595
- bufferView: 1,
596
- byteOffset: 0
597
- }, {
598
- name: "��ת001_1_0_indices",
599
- componentType: 5123,
600
- count: 1089,
601
- min: [ 0 ],
602
- max: [ 368 ],
603
- type: "SCALAR",
604
- bufferView: 2,
605
- byteOffset: 0
606
- } ],
607
- asset: {
608
- generator: "obj2gltf",
609
- version: "2.0"
610
- },
611
- buffers: [ {
612
- name: "旋转-新",
613
- byteLength: 11036,
614
- uri: "data:application/octet-stream;base64,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AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAABAAIAAwABAAAAAwAEAAEAAwAFAAQAAwAGAAUAAwAHAAYAAwAIAAcAAwAJAAgAAwAKAAkAAwALAAoAAwAMAAsADQAMAAMADQAOAAwADQAPAA4ADQAQAA8ADQARABAADQASABEADQATABIADQAUABMADQAVABQADQAWABUADQAXABYADQAYABcADQAZABgADQAaABkADQAbABoAHAAbAA0AHAAdABsAHAAeAB0AHAAfAB4AHAAgAB8AHAAhACAAHAAiACEAHAAjACIAHAAkACMAHAAlACQAHAAmACUAHAAnACYAHAAoACcAHAApACgAHAAqACkAHAArACoAHAAsACsAHAAtACwAHAAuAC0AHAAvAC4AHAAwAC8AHAAxADAAHAAyADEAHAAzADIAHAA0ADMAHAA1ADQAHAA2ADUAHAA3ADYAHAA4ADcAHAA5ADgAHAA6ADkAHAA7ADoAHAA8ADsAHAA9ADwAHAA+AD0AHAA/AD4AHABAAD8AQABBAD8AQQBCAD8AQgBDAD8AHABAAEQAHABEAEUAHABGAEUARgBHAEUARgBIAEcARgBJAEgARgBKAEkARgBLAEoARgBMAEsAHABNAEYAHABOAE0AHABPAE4AHABQAE8AHABRAFAAHABSAFEAUgBTAFEAUgBUAFMAUgBVAFQAUgBWAFUAUgBXAFYAUgBYAFcAHABZAFIAHABaAFkAHABbAFoAHABcAFsAHABdAFwAHABeAF0AHABfAF4AHABgAF8AHABhAGAAHABiAGEAHABjAGIAHABjAGQAZABlAGMAZQBmAGMAHABnAGQAaABpAGoAawBpAGgAbABpAGsAbQBpAGwAbgBpAG0AbwBpAG4AcABpAG8AcQBpAHAAcgBpAHEAcwBpAHIAdABnABwAdAB1AGcAdAB2AHUAdwB4AHkAdwB5AHoAegB5AHsAegB7AHwAfAB7AH0AfAB9AH4AfgB9AH8AfgB/AIAAgQCCAIMAgQCDAIQAhACDAIUAhACFAIYAhgCFAIcAhgCHAIgAiACHAIkAiACJAIoAiwCMAI0AiwCNAI4AjwCKAJAAigCJAJAAkQCSAJMAkQCTAJQAlACTAJUAlACVAJYAlgCVAJcAlgCXAJgAgAB/AIIAgACCAIEAmACXAJkAmACZAJoAmgCZAJsAmgCbAJwAnACbAJ0AnACdAJ4AngCdAHYAngB2AHQAnwB4AHcAoAB4AJ8AoAChAHgAogChAKAAowCkAKUAowCmAKQAowCnAKYAowCoAKcAowCpAKgAowCqAKkAowCrAKoAowCsAKsAowCtAKwAowCuAK0AowCvAK4AowCiAK8AowChAKIAsAChAKMAsQChALAAsgChALEAswChALIAtAChALMAtQChALQAtgChALUAtwChALYAuAChALcAuQChALgAugChALkAuwChALoAvAChALsAvQChALwAvgChAL0AvwChAL4AwAChAL8AwQChAMAAwgChAMEAwwChAMIAxAChAMMAxQChAMQAxgChAMUAxwChAMYAyAChAMcAyQChAMgAygChAMkAywChAMoAzAChAMsAzQChAMwAzgChAM0AzwChAM4A0AChAM8A0QChANAA0gChANEA0wChANIA1AChANMA1QChANQA1gChANUA1wChANYA2AChANcA2QChANgA2gChANkA2wChANoA3AChANsA3QChANwA3gChAN0A3wChAN4A4AChAN8A4QChAOAA4gChAOEA4wChAOIA5AChAOMA5QChAOQA5gChAOUA5wChAOYA6AChAOcA6QChAOgA6gChAOkA6wChAOoA7AChAOsA7QChAOwA7gChAO0A7wChAO4A8AChAO8A8QChAO8A8gChAPEA8wChAPIA9AChAPMA9QChAPQA9gChAPUA9gD3AKEA+AD3APYA+QD3APgA+gD3APkA+wD3APoA/AD3APsA/QD3APwA/gD3AP0A/wD3AP4AAAH3AP8AAQH3AAABAgH3AAEBAwH3AAIBBAH3AAMBBQH3AAQBBgH3AAUBBgEHAfcACAEHAQYBCQEHAQgBCgEHAQkBCwEHAQoBDAEHAQsBDQEHAQwBDgEHAQ0BDwEHAQ4BEAEHAQ8BEQESARMBFAESAREBFAEVARIBFgEVARQBFgEXARUBGAEXARYBGAEZARcBGgEbARgBGwEcARgBHAEZARgBHAEdARkBHQEeARkBHwEeAR0BGgEgARsBIQEeAR8BGgEiASABIwEiARoBIQEkAR4BJQEkASEBIwEmASIBJwEkASUBIwEoASYBKQEoASMBJwEqASQBKwEqAScBKQEsASgBLQEsASkBKwEuASoBLwEuASsBLQEwASwBMQEuAS8BLQEyATABjgCNADMBjgAzATQBNQE2ATcBNQE3ATgBOAE3ATkBOAE5AToBOwE8AT0BOwE9AT4BPwFAAUEBPwFBAUIBPgE9AUMBPgFDAUQBRQFGAUABRQFAAT8BRwFIAZIARwGSAJEASQFKAUYBSQFGAUUBRAFDAUsBRAFLAUwBOgE5AUoBOgFKAUkBTAFLAU0BTAFNAU4BTgFNAU8BTgFPAVABQgFBAVEBQgFRAVIBUgFRAS4BUgEuATEBNAEzATwBNAE8ATsBUwFUATYBUwE2ATUBUAFPATIBUAEyAS0BiwBVAYwAVgFUAVMBiwBXAVUBWAFUAVYBWAFZAVQBWgFXAYsAWgFbAVcBXAFZAVgBXAFdAVkBXgFbAVoBXgFfAVsBYAFdAVwBXgFhAV8BYgFdAWABYgFjAV0BZAFhAV4BZAFlAWEBZgFjAWIBZAFnAWUBZwFjAWYBZAFjAWcBZAFoAWMBaQFoAWQBaQFqAWgBawFqAWkBawFsAWoBbQFsAWsBbQFuAWwBbwFwAUgBbwFIAUcBAAA="
615
- } ],
616
- bufferViews: [ {
617
- name: "bufferView_0",
618
- buffer: 0,
619
- byteLength: 4428,
620
- byteOffset: 0,
621
- byteStride: 12,
622
- target: 34962
623
- }, {
624
- name: "bufferView_1",
625
- buffer: 0,
626
- byteLength: 4428,
627
- byteOffset: 4428,
628
- byteStride: 12,
629
- target: 34962
630
- }, {
631
- name: "bufferView_2",
632
- buffer: 0,
633
- byteLength: 2180,
634
- byteOffset: 8856,
635
- target: 34963
636
- } ],
637
- materials: [ {
638
- name: "SVGMat",
639
- pbrMetallicRoughness: {
640
- baseColorFactor: [ .5, .5, .5, 1 ],
641
- metallicFactor: 0,
642
- roughnessFactor: 1
643
- },
644
- emissiveFactor: [ 0, 0, 0 ],
645
- alphaMode: "OPAQUE",
646
- doubleSided: !1
647
- } ],
648
- meshes: [ {
649
- name: "��ת001_1",
650
- primitives: [ {
651
- attributes: {
652
- POSITION: 0,
653
- NORMAL: 1
654
- },
655
- indices: 2,
656
- material: 0,
657
- mode: 4
658
- } ]
659
- } ],
660
- nodes: [ {
661
- name: "��ת001",
662
- mesh: 0
663
- } ],
664
- scene: 0,
665
- scenes: [ {
666
- nodes: [ 0 ]
667
- } ]
668
- },
669
- plane: {
670
- accessors: [ {
671
- name: "Rectangle001_1_0_positions",
672
- componentType: 5126,
673
- count: 4,
674
- min: [ -5, -5, 0 ],
675
- max: [ 5, 5, 0 ],
676
- type: "VEC3",
677
- bufferView: 0,
678
- byteOffset: 0
679
- }, {
680
- name: "Rectangle001_1_0_normals",
681
- componentType: 5126,
682
- count: 4,
683
- min: [ 0, 0, 1 ],
684
- max: [ 0, 0, 1 ],
685
- type: "VEC3",
686
- bufferView: 1,
687
- byteOffset: 0
688
- }, {
689
- name: "Rectangle001_1_0_indices",
690
- componentType: 5123,
691
- count: 6,
692
- min: [ 0 ],
693
- max: [ 3 ],
694
- type: "SCALAR",
695
- bufferView: 2,
696
- byteOffset: 0
697
- } ],
698
- asset: {
699
- generator: "obj2gltf",
700
- version: "2.0"
701
- },
702
- buffers: [ {
703
- name: "plane",
704
- byteLength: 108,
705
- uri: "data:application/octet-stream;base64,AACgQAAAoEAAAAAAAACgwAAAoEAAAAAAAACgwAAAoMAAAAAAAACgQAAAoMAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAABAAIAAgADAAAA"
706
- } ],
707
- bufferViews: [ {
708
- name: "bufferView_0",
709
- buffer: 0,
710
- byteLength: 48,
711
- byteOffset: 0,
712
- byteStride: 12,
713
- target: 34962
714
- }, {
715
- name: "bufferView_1",
716
- buffer: 0,
717
- byteLength: 48,
718
- byteOffset: 48,
719
- byteStride: 12,
720
- target: 34962
721
- }, {
722
- name: "bufferView_2",
723
- buffer: 0,
724
- byteLength: 12,
725
- byteOffset: 96,
726
- target: 34963
727
- } ],
728
- materials: [ {
729
- name: "wire_225198087",
730
- pbrMetallicRoughness: {
731
- baseColorFactor: [ .8824, .7765, .3412, 1 ],
732
- metallicFactor: 0,
733
- roughnessFactor: .968
734
- },
735
- emissiveFactor: [ 0, 0, 0 ],
736
- alphaMode: "OPAQUE",
737
- doubleSided: !1
738
- } ],
739
- meshes: [ {
740
- name: "Rectangle001_1",
741
- primitives: [ {
742
- attributes: {
743
- POSITION: 0,
744
- NORMAL: 1
745
- },
746
- indices: 2,
747
- material: 0,
748
- mode: 4
749
- } ]
750
- } ],
751
- nodes: [ {
752
- name: "Rectangle001",
753
- mesh: 0
754
- } ],
755
- scene: 0,
756
- scenes: [ {
757
- nodes: [ 0 ]
758
- } ]
759
- },
760
- xyzScale: {
761
- asset: {
762
- generator: "Khronos glTF Blender I/O v1.6.16",
763
- version: "2.0"
764
- },
765
- scene: 0,
766
- scenes: [ {
767
- name: "Scene",
768
- nodes: [ 0, 1, 2, 3, 4, 5, 6 ]
769
- } ],
770
- nodes: [ {
771
- mesh: 0,
772
- name: "Cube",
773
- scale: [ .7008190751075745, .014999999664723873, .014999999664723873 ]
774
- }, {
775
- mesh: 1,
776
- name: "Cube.001",
777
- scale: [ .10000000149011612, .10000000149011612, .10000000149011612 ]
778
- }, {
779
- mesh: 2,
780
- name: "Cube.004",
781
- rotation: [ 0, -.7071068286895752, 0, .7071068286895752 ],
782
- scale: [ .7008190751075745, .014999999664723873, .014999999664723873 ]
783
- }, {
784
- mesh: 3,
785
- name: "Cube.003",
786
- rotation: [ 0, -.7071068286895752, 0, .7071068286895752 ],
787
- scale: [ .10000000149011612, .10000000149011612, .10000000149011612 ]
788
- }, {
789
- mesh: 4,
790
- name: "Cube.006",
791
- rotation: [ 0, 0, .7071068286895752, .7071068286895752 ],
792
- scale: [ .7008190751075745, .014999999664723873, .014999999664723873 ]
793
- }, {
794
- mesh: 5,
795
- name: "Cube.005",
796
- rotation: [ 0, 0, .7071068286895752, .7071068286895752 ],
797
- scale: [ .10000000149011612, .10000000149011612, .10000000149011612 ]
798
- }, {
799
- mesh: 6,
800
- name: "Cube.002",
801
- scale: [ .10000000149011612, .10000000149011612, .10000000149011612 ]
802
- } ],
803
- materials: [ {
804
- doubleSided: !0,
805
- name: "Material",
806
- pbrMetallicRoughness: {
807
- baseColorFactor: [ .6938720345497131, .020288480445742607, .011612260714173317, 1 ],
808
- metallicFactor: 0,
809
- roughnessFactor: .4000000059604645
810
- }
811
- }, {
812
- doubleSided: !0,
813
- name: "Material.001",
814
- pbrMetallicRoughness: {
815
- baseColorFactor: [ .6938720345497131, .020288480445742607, .011612260714173317, 1 ],
816
- metallicFactor: 0,
817
- roughnessFactor: .4000000059604645
818
- }
819
- }, {
820
- doubleSided: !0,
821
- name: "Material.002",
822
- pbrMetallicRoughness: {
823
- baseColorFactor: [ .626582869887352, .626582869887352, .626582869887352, 1 ],
824
- metallicFactor: 0,
825
- roughnessFactor: .4000000059604645
826
- }
827
- }, {
828
- doubleSided: !0,
829
- name: "Material.006",
830
- pbrMetallicRoughness: {
831
- baseColorFactor: [ .11193240433931351, .5583405494689941, .033104799687862396, 1 ],
832
- metallicFactor: 0,
833
- roughnessFactor: .4000000059604645
834
- }
835
- }, {
836
- doubleSided: !0,
837
- name: "Material.005",
838
- pbrMetallicRoughness: {
839
- baseColorFactor: [ .11193240433931351, .5583405494689941, .033104799687862396, 1 ],
840
- metallicFactor: 0,
841
- roughnessFactor: .4000000059604645
842
- }
843
- }, {
844
- doubleSided: !0,
845
- name: "Material.010",
846
- pbrMetallicRoughness: {
847
- baseColorFactor: [ .004391402006149292, .21223078668117523, .5209956169128418, 1 ],
848
- metallicFactor: 0,
849
- roughnessFactor: .4000000059604645
850
- }
851
- }, {
852
- doubleSided: !0,
853
- name: "Material.009",
854
- pbrMetallicRoughness: {
855
- baseColorFactor: [ .004391402006149292, .21223078668117523, .5209956169128418, 1 ],
856
- metallicFactor: 0,
857
- roughnessFactor: .4000000059604645
858
- }
859
- } ],
860
- meshes: [ {
861
- name: "Cube",
862
- primitives: [ {
863
- attributes: {
864
- POSITION: 0,
865
- NORMAL: 1,
866
- TEXCOORD_0: 2
867
- },
868
- indices: 3,
869
- material: 0
870
- } ]
871
- }, {
872
- name: "Cube.001",
873
- primitives: [ {
874
- attributes: {
875
- POSITION: 4,
876
- NORMAL: 5,
877
- TEXCOORD_0: 6
878
- },
879
- indices: 3,
880
- material: 1
881
- } ]
882
- }, {
883
- name: "Cube.006",
884
- primitives: [ {
885
- attributes: {
886
- POSITION: 10,
887
- NORMAL: 11,
888
- TEXCOORD_0: 12
889
- },
890
- indices: 3,
891
- material: 3
892
- } ]
893
- }, {
894
- name: "Cube.005",
895
- primitives: [ {
896
- attributes: {
897
- POSITION: 13,
898
- NORMAL: 14,
899
- TEXCOORD_0: 15
900
- },
901
- indices: 3,
902
- material: 4
903
- } ]
904
- }, {
905
- name: "Cube.010",
906
- primitives: [ {
907
- attributes: {
908
- POSITION: 16,
909
- NORMAL: 17,
910
- TEXCOORD_0: 18
911
- },
912
- indices: 3,
913
- material: 5
914
- } ]
915
- }, {
916
- name: "Cube.009",
917
- primitives: [ {
918
- attributes: {
919
- POSITION: 19,
920
- NORMAL: 20,
921
- TEXCOORD_0: 21
922
- },
923
- indices: 3,
924
- material: 6
925
- } ]
926
- }, {
927
- name: "Cube.002",
928
- primitives: [ {
929
- attributes: {
930
- POSITION: 7,
931
- NORMAL: 8,
932
- TEXCOORD_0: 9
933
- },
934
- indices: 3,
935
- material: 2
936
- } ]
937
- } ],
938
- accessors: [ {
939
- bufferView: 0,
940
- componentType: 5126,
941
- count: 24,
942
- max: [ 2.0003609657287598, 1, 1 ],
943
- min: [ .0003610849380493164, -1, -1 ],
944
- type: "VEC3"
945
- }, {
946
- bufferView: 1,
947
- componentType: 5126,
948
- count: 24,
949
- type: "VEC3"
950
- }, {
951
- bufferView: 2,
952
- componentType: 5126,
953
- count: 24,
954
- type: "VEC2"
955
- }, {
956
- bufferView: 3,
957
- componentType: 5123,
958
- count: 36,
959
- type: "SCALAR"
960
- }, {
961
- bufferView: 4,
962
- componentType: 5126,
963
- count: 24,
964
- max: [ 14.549108505249023, 1, 1 ],
965
- min: [ 12.549108505249023, -1, -1 ],
966
- type: "VEC3"
967
- }, {
968
- bufferView: 5,
969
- componentType: 5126,
970
- count: 24,
971
- type: "VEC3"
972
- }, {
973
- bufferView: 6,
974
- componentType: 5126,
975
- count: 24,
976
- type: "VEC2"
977
- }, {
978
- bufferView: 7,
979
- componentType: 5126,
980
- count: 24,
981
- max: [ 1, 1, 1 ],
982
- min: [ -1, -1, -1 ],
983
- type: "VEC3"
984
- }, {
985
- bufferView: 8,
986
- componentType: 5126,
987
- count: 24,
988
- type: "VEC3"
989
- }, {
990
- bufferView: 9,
991
- componentType: 5126,
992
- count: 24,
993
- type: "VEC2"
994
- }, {
995
- bufferView: 10,
996
- componentType: 5126,
997
- count: 24,
998
- max: [ 2.0003609657287598, 1, 1 ],
999
- min: [ .0003610849380493164, -1, -1 ],
1000
- type: "VEC3"
1001
- }, {
1002
- bufferView: 11,
1003
- componentType: 5126,
1004
- count: 24,
1005
- type: "VEC3"
1006
- }, {
1007
- bufferView: 12,
1008
- componentType: 5126,
1009
- count: 24,
1010
- type: "VEC2"
1011
- }, {
1012
- bufferView: 13,
1013
- componentType: 5126,
1014
- count: 24,
1015
- max: [ 14.549108505249023, 1, 1 ],
1016
- min: [ 12.549108505249023, -1, -1 ],
1017
- type: "VEC3"
1018
- }, {
1019
- bufferView: 14,
1020
- componentType: 5126,
1021
- count: 24,
1022
- type: "VEC3"
1023
- }, {
1024
- bufferView: 15,
1025
- componentType: 5126,
1026
- count: 24,
1027
- type: "VEC2"
1028
- }, {
1029
- bufferView: 16,
1030
- componentType: 5126,
1031
- count: 24,
1032
- max: [ 2.0003609657287598, 1, 1 ],
1033
- min: [ .0003610849380493164, -1, -1 ],
1034
- type: "VEC3"
1035
- }, {
1036
- bufferView: 17,
1037
- componentType: 5126,
1038
- count: 24,
1039
- type: "VEC3"
1040
- }, {
1041
- bufferView: 18,
1042
- componentType: 5126,
1043
- count: 24,
1044
- type: "VEC2"
1045
- }, {
1046
- bufferView: 19,
1047
- componentType: 5126,
1048
- count: 24,
1049
- max: [ 14.549108505249023, 1, 1 ],
1050
- min: [ 12.549108505249023, -1, -1 ],
1051
- type: "VEC3"
1052
- }, {
1053
- bufferView: 20,
1054
- componentType: 5126,
1055
- count: 24,
1056
- type: "VEC3"
1057
- }, {
1058
- bufferView: 21,
1059
- componentType: 5126,
1060
- count: 24,
1061
- type: "VEC2"
1062
- } ],
1063
- bufferViews: [ {
1064
- buffer: 0,
1065
- byteLength: 288,
1066
- byteOffset: 0
1067
- }, {
1068
- buffer: 0,
1069
- byteLength: 288,
1070
- byteOffset: 288
1071
- }, {
1072
- buffer: 0,
1073
- byteLength: 192,
1074
- byteOffset: 576
1075
- }, {
1076
- buffer: 0,
1077
- byteLength: 72,
1078
- byteOffset: 768
1079
- }, {
1080
- buffer: 0,
1081
- byteLength: 288,
1082
- byteOffset: 840
1083
- }, {
1084
- buffer: 0,
1085
- byteLength: 288,
1086
- byteOffset: 1128
1087
- }, {
1088
- buffer: 0,
1089
- byteLength: 192,
1090
- byteOffset: 1416
1091
- }, {
1092
- buffer: 0,
1093
- byteLength: 288,
1094
- byteOffset: 1608
1095
- }, {
1096
- buffer: 0,
1097
- byteLength: 288,
1098
- byteOffset: 1896
1099
- }, {
1100
- buffer: 0,
1101
- byteLength: 192,
1102
- byteOffset: 2184
1103
- }, {
1104
- buffer: 0,
1105
- byteLength: 288,
1106
- byteOffset: 2376
1107
- }, {
1108
- buffer: 0,
1109
- byteLength: 288,
1110
- byteOffset: 2664
1111
- }, {
1112
- buffer: 0,
1113
- byteLength: 192,
1114
- byteOffset: 2952
1115
- }, {
1116
- buffer: 0,
1117
- byteLength: 288,
1118
- byteOffset: 3144
1119
- }, {
1120
- buffer: 0,
1121
- byteLength: 288,
1122
- byteOffset: 3432
1123
- }, {
1124
- buffer: 0,
1125
- byteLength: 192,
1126
- byteOffset: 3720
1127
- }, {
1128
- buffer: 0,
1129
- byteLength: 288,
1130
- byteOffset: 3912
1131
- }, {
1132
- buffer: 0,
1133
- byteLength: 288,
1134
- byteOffset: 4200
1135
- }, {
1136
- buffer: 0,
1137
- byteLength: 192,
1138
- byteOffset: 4488
1139
- }, {
1140
- buffer: 0,
1141
- byteLength: 288,
1142
- byteOffset: 4680
1143
- }, {
1144
- buffer: 0,
1145
- byteLength: 288,
1146
- byteOffset: 4968
1147
- }, {
1148
- buffer: 0,
1149
- byteLength: 192,
1150
- byteOffset: 5256
1151
- } ],
1152
- buffers: [ {
1153
- byteLength: 5448,
1154
- uri: "data:application/octet-stream;base64,6gUAQAAAgD8AAIC/6gUAQAAAgD8AAIC/6gUAQAAAgD8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgD8AAIA/6gUAQAAAgD8AAIA/6gUAQAAAgD8AAIA/6gUAQAAAgL8AAIA/6gUAQAAAgL8AAIA/6gUAQAAAgL8AAIA/AFC9OQAAgD8AAIC/AFC9OQAAgD8AAIC/AFC9OQAAgD8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgD8AAIA/AFC9OQAAgD8AAIA/AFC9OQAAgD8AAIA/AFC9OQAAgL8AAIA/AFC9OQAAgL8AAIA/AFC9OQAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAAAQAOABQAAQAUAAcACgAGABMACgATABcAFQASAAwAFQAMAA8AEAADAAkAEAAJABYABQACAAgABQAIAAsAEQANAAAAEQAAAAQAJsloQQAAgD8AAIC/JsloQQAAgD8AAIC/JsloQQAAgD8AAIC/JsloQQAAgL8AAIC/JsloQQAAgL8AAIC/JsloQQAAgL8AAIC/JsloQQAAgD8AAIA/JsloQQAAgD8AAIA/JsloQQAAgD8AAIA/JsloQQAAgL8AAIA/JsloQQAAgL8AAIA/JsloQQAAgL8AAIA/JslIQQAAgD8AAIC/JslIQQAAgD8AAIC/JslIQQAAgD8AAIC/JslIQQAAgL8AAIC/JslIQQAAgL8AAIC/JslIQQAAgL8AAIC/JslIQQAAgD8AAIA/JslIQQAAgD8AAIA/JslIQQAAgD8AAIA/JslIQQAAgL8AAIA/JslIQQAAgL8AAIA/JslIQQAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAAAACAPwAAgD8AAIC/AACAPwAAgD8AAIC/AACAPwAAgD8AAIC/AACAPwAAgL8AAIC/AACAPwAAgL8AAIC/AACAPwAAgL8AAIC/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgL8AAIA/AACAPwAAgL8AAIA/AACAPwAAgL8AAIA/AACAvwAAgD8AAIC/AACAvwAAgD8AAIC/AACAvwAAgD8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgD8AAIA/AACAvwAAgD8AAIA/AACAvwAAgD8AAIA/AACAvwAAgL8AAIA/AACAvwAAgL8AAIA/AACAvwAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAA6gUAQAAAgD8AAIC/6gUAQAAAgD8AAIC/6gUAQAAAgD8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgD8AAIA/6gUAQAAAgD8AAIA/6gUAQAAAgD8AAIA/6gUAQAAAgL8AAIA/6gUAQAAAgL8AAIA/6gUAQAAAgL8AAIA/AFC9OQAAgD8AAIC/AFC9OQAAgD8AAIC/AFC9OQAAgD8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgD8AAIA/AFC9OQAAgD8AAIA/AFC9OQAAgD8AAIA/AFC9OQAAgL8AAIA/AFC9OQAAgL8AAIA/AFC9OQAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAAJsloQQAAgD8AAIC/JsloQQAAgD8AAIC/JsloQQAAgD8AAIC/JsloQQAAgL8AAIC/JsloQQAAgL8AAIC/JsloQQAAgL8AAIC/JsloQQAAgD8AAIA/JsloQQAAgD8AAIA/JsloQQAAgD8AAIA/JsloQQAAgL8AAIA/JsloQQAAgL8AAIA/JsloQQAAgL8AAIA/JslIQQAAgD8AAIC/JslIQQAAgD8AAIC/JslIQQAAgD8AAIC/JslIQQAAgL8AAIC/JslIQQAAgL8AAIC/JslIQQAAgL8AAIC/JslIQQAAgD8AAIA/JslIQQAAgD8AAIA/JslIQQAAgD8AAIA/JslIQQAAgL8AAIA/JslIQQAAgL8AAIA/JslIQQAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAA6gUAQAAAgD8AAIC/6gUAQAAAgD8AAIC/6gUAQAAAgD8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgL8AAIC/6gUAQAAAgD8AAIA/6gUAQAAAgD8AAIA/6gUAQAAAgD8AAIA/6gUAQAAAgL8AAIA/6gUAQAAAgL8AAIA/6gUAQAAAgL8AAIA/AFC9OQAAgD8AAIC/AFC9OQAAgD8AAIC/AFC9OQAAgD8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgL8AAIC/AFC9OQAAgD8AAIA/AFC9OQAAgD8AAIA/AFC9OQAAgD8AAIA/AFC9OQAAgL8AAIA/AFC9OQAAgL8AAIA/AFC9OQAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAAJsloQQAAgD8AAIC/JsloQQAAgD8AAIC/JsloQQAAgD8AAIC/JsloQQAAgL8AAIC/JsloQQAAgL8AAIC/JsloQQAAgL8AAIC/JsloQQAAgD8AAIA/JsloQQAAgD8AAIA/JsloQQAAgD8AAIA/JsloQQAAgL8AAIA/JsloQQAAgL8AAIA/JsloQQAAgL8AAIA/JslIQQAAgD8AAIC/JslIQQAAgD8AAIC/JslIQQAAgD8AAIC/JslIQQAAgL8AAIC/JslIQQAAgL8AAIC/JslIQQAAgL8AAIC/JslIQQAAgD8AAIA/JslIQQAAgD8AAIA/JslIQQAAgD8AAIA/JslIQQAAgL8AAIA/JslIQQAAgL8AAIA/JslIQQAAgL8AAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAPwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAPwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AACAPwAAAAAAAACAAACAvwAAAAAAAACAAAAAAAAAAAAAAIC/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIC/AACAvwAAAAAAAACAAAAAAAAAAAAAAIA/AAAAAAAAgD8AAACAAACAvwAAAAAAAACAAAAAAAAAgL8AAACAAAAAAAAAAAAAAIA/AAAgPwAAAD8AACA/AAAAPwAAID8AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAAA/AAAgPwAAgD4AACA/AACAPgAAID8AAIA+AADAPgAAgD4AAMA+AACAPgAAwD4AAIA+AAAgPwAAQD8AACA/AABAPwAAYD8AAAA/AADAPgAAQD8AAAA+AAAAPwAAwD4AAEA/AAAgPwAAgD8AACA/AAAAAAAAYD8AAIA+AADAPgAAgD8AAAA+AACAPgAAwD4AAAAA"
1155
- } ]
1156
- }
1157
- }, f = function() {
1158
- if ("undefined" != typeof globalThis) return globalThis;
1159
- if ("undefined" != typeof self) return self;
1160
- if ("undefined" != typeof window) return window;
1161
- if ("undefined" != typeof global) return global;
1162
- throw new Error("unable to locate global object");
1163
- }, l = f(), P = l.gl_trans__coders = l.gl_trans__coders || {};
1164
-
1165
- P.inject = function(A) {
1166
- const e = A.toString(), t = e.indexOf("{") + 1, s = e.substring(0, t), i = l.gl_trans__coders = l.gl_trans__coders || {};
1167
- let n = `${s}\n const _____getGlobal = ${f.toString()};\n const g___lobals = _____getGlobal()\n const tran_____scoders = g___lobals['gl_trans__coders'] = g___lobals['gl_trans__coders'] || {};`;
1168
- for (const A in i) "inject" !== A && "getTranscoder" !== A && "registerTranscoder" !== A && (n += 'tran_____scoders["' + A + '"] =' + i[A].toString() + "\n;");
1169
- return n += "\n(" + f().maptalks_gltf_loader_bundle.toString() + ")({});\n", n += "\n" + e.substring(s.length),
1170
- n;
1171
- }, P.registerTranscoder = function(A, e) {
1172
- P[A] = e;
1173
- }, P.getTranscoder = function(A) {
1174
- return P[A];
1175
- };
1176
-
1177
- const D = f().maptalks_gltf_loader;
1178
-
1179
- function u(s, i, n, o, I, g) {
1180
- const r = [], a = A.fromEuler([], n[0], n[1], n[2]), C = e.fromRotationTranslationScale([], a, i, o), h = function(A) {
1181
- return new D.GLTFLoader("", JSON.parse(JSON.stringify(Q[A]))).load().then((A => A));
1182
- }(s);
1183
- return h.then((A => {
1184
- t.GLTFHelper.exportGLTFPack(A).getMeshesInfo().forEach(((A, s) => {
1185
- const a = new t.Material({
1186
- color: I || A.materialInfo.baseColorFactor
1187
- }), h = new t.Mesh(A.geometry, a);
1188
- h.setUniform("uPickingId", g + s);
1189
- const w = h.getDefines();
1190
- w.HAS_PICKING_ID = 2, h.setDefines(w), h.translate = i, h.rotation = n, h.scaling = o,
1191
- e.multiply(h.localTransform, C, A.nodeMatrix), h.originTransform = e.copy([], h.localTransform),
1192
- h.originColor = I || A.materialInfo.baseColorFactor, r.push(h);
1193
- })), g > 100 && (r[0].properties.relatedMeshes = r.slice(1, 2), r[1].properties.relatedMeshes = r.slice(0, 1),
1194
- r[2].properties.relatedMeshes = r.slice(3, 4), r[3].properties.relatedMeshes = r.slice(2, 3),
1195
- r[4].properties.relatedMeshes = r.slice(5, 6), r[5].properties.relatedMeshes = r.slice(4, 5),
1196
- r[6].properties.relatedMeshes = r.slice(0, 6));
1197
- })), r;
1198
- }
1199
-
1200
- function m(A, e) {
1201
- return Math.abs(A) * Math.sign(e);
1202
- }
1203
-
1204
- function b(A, e) {
1205
- const t = A.getCoordinates(), i = e.coordinateToPointAtRes(t, e.getGLRes()), n = [ i.x, i.y, 0 ], I = B(e, A.getTranslation());
1206
- s.add(n, n, I);
1207
- const g = function(A, e, t, s) {
1208
- return A._pointAtResToContainerPoint(e, t, s);
1209
- }(e, new o.Point(n[0], n[1]), e.getGLRes());
1210
- g.x += 85;
1211
- const r = function(A, e, t, s) {
1212
- {
1213
- const s = A.containerPointToCoordinate(e);
1214
- return A.coordinateToPointAtRes(s, t);
1215
- }
1216
- }(e, g, e.getGLRes());
1217
- return Math.sqrt(Math.pow(r.x - n[0], 2) + Math.pow(r.y - n[1], 2)) / 5.272881136101205;
1218
- }
1219
-
1220
- function B(A, e) {
1221
- if (!A) return e;
1222
- const t = A.distanceToPointAtRes(e[0], e[1], A.getGLRes()), i = A.altitudeToPoint(e[2], A.getGLRes());
1223
- return s.set([], m(t.x, e[0]), m(t.y, e[1]), m(i, e[2]));
1224
- }
1225
-
1226
- class y {
1227
- constructor(A) {
1228
- this.A = A, this._meshes = this.t();
1229
- }
1230
- setCoordinate(A) {
1231
- this.A = A;
1232
- }
1233
- t() {
1234
- const A = [], e = 340 / 177, t = u("jiantou", [ 1.2 * e, 0, 0 ], [ 0, 0, 90 ], [ e, e, e ], [ 89 / 255, 206 / 255, 147 / 255, 0 ], 7), s = u("jiantou", [ 0, 1.2 * e, 0 ], [ 0, 0, 180 ], [ e, e, e ], [ 89 / 255, 206 / 255, 147 / 255, 0 ], 8), i = u("jiantou", [ -1.2 * e, 0, 0 ], [ 0, 0, 270 ], [ e, e, e ], [ 89 / 255, 206 / 255, 147 / 255, 0 ], 9), n = u("jiantou", [ 0, -1.2 * e, 0 ], [ 0, 0, 0 ], [ e, e, e ], [ 89 / 255, 206 / 255, 147 / 255, 0 ], 10);
1235
- return A.push(t, s, i, n), A;
1236
- }
1237
- getMeshes() {
1238
- return this._meshes;
1239
- }
1240
- }
1241
-
1242
- class p {
1243
- constructor(A) {
1244
- this.A = A, this._meshes = this.t();
1245
- }
1246
- setCoordinate(A) {
1247
- this.A = A;
1248
- }
1249
- t() {
1250
- const A = [], e = 340 / 177, t = u("xuanzhuan", [ 0, 0, 0 ], [ 180, 0, 0 ], [ .5 * e, .5 * e, .5 * e ], [ 50 / 255, 130 / 255, 184 / 255, .8 ], 11);
1251
- return A.push(t), A;
1252
- }
1253
- getMeshes() {
1254
- return this._meshes;
1255
- }
1256
- }
1257
-
1258
- class v {
1259
- constructor(A) {
1260
- this.A = A, this._meshes = this.t();
1261
- }
1262
- setCoordinate(A) {
1263
- this.A = A;
1264
- }
1265
- t() {
1266
- const A = [], e = 340 / 177, t = u("yuanhuan", [ 0, 0, 0 ], [ 0, 0, 0 ], [ .5 * e, .5 * e, .5 * e ], [ 149 / 255, 179 / 255, 199 / 255, .5 ], 12);
1267
- return A.push(t), A;
1268
- }
1269
- getMeshes() {
1270
- return this._meshes;
1271
- }
1272
- }
1273
-
1274
- class d {
1275
- constructor(A) {
1276
- this.A = A, this._meshes = this.t();
1277
- }
1278
- setCoordinate(A) {
1279
- this.A = A;
1280
- }
1281
- t() {
1282
- const A = [], e = u("plane", [ 0, 0, 0 ], [ 0, 0, 0 ], [ 10, 10, 10 ], [ 1, 0, 0, .5 ], 16);
1283
- return A.push(e), A;
1284
- }
1285
- getMeshes() {
1286
- return this._meshes;
1287
- }
1288
- }
1289
-
1290
- class L {
1291
- constructor(A) {
1292
- this.A = A, this._meshes = this.t();
1293
- }
1294
- setCoordinate(A) {
1295
- this.A = A;
1296
- }
1297
- t() {
1298
- const A = [], e = u("xyzScale", [ 0, 0, 0 ], [ 0, 0, 0 ], [ 2, 2, 2 ], null, 113);
1299
- return A.push(e), A;
1300
- }
1301
- getMeshes() {
1302
- return this._meshes;
1303
- }
1304
- }
1305
-
1306
- const M = [], E = [], O = [], F = [], x = [], U = [ 177 / 170, 177 / 170, 177 / 170 ], V = [], S = [ 1, 2, 3, 4, 12 ];
1307
-
1308
- class k {
1309
- constructor() {
1310
- this.translate = new y, this.rotation = new p, this.scaling = new v, this.planeHelper = new d,
1311
- this.xyzScaleHelper = new L, this._meshes = this.t(), this.i = !0;
1312
- }
1313
- t() {
1314
- const A = {};
1315
- A.translate = this.translate.getMeshes(), A.rotation = this.rotation.getMeshes(),
1316
- A.scaling = this.scaling.getMeshes(), A.planeHelper = this.planeHelper.getMeshes(),
1317
- A.xyzScale = this.xyzScaleHelper.getMeshes();
1318
- const e = 340 / 177, t = u("yuanhuan41", [ -2.745 * e, 2.745 * e, 0 ], [ 90, 0, 0 ], [ .5 * e, .5 * e, .5 * e ], [ 149 / 255, 179 / 255, 199 / 255, .6 ], 1), s = u("yuanhuan41", [ 2.745 * e, 2.745 * e, 0 ], [ -90, 0, 180 ], [ .5 * e, .5 * e, .5 * e ], [ 50 / 255, 130 / 255, 184 / 255, .5 ], 2), i = u("yuanhuan41", [ 2.745 * e, -2.745 * e, 0 ], [ 90, 0, 180 ], [ .5 * e, .5 * e, .5 * e ], [ 149 / 255, 179 / 255, 199 / 255, .6 ], 3), n = u("yuanhuan41", [ -2.745 * e, -2.745 * e, 0 ], [ -90, 0, 0 ], [ .5 * e, .5 * e, .5 * e ], [ 50 / 255, 130 / 255, 184 / 255, .5 ], 4), o = u("yuanpan", [ 0, 0, 0 ], [ 90, 0, 0 ], [ .5 * e, .5 * e, .5 * e ], [ 89 / 255, 206 / 255, 147 / 255, .5 ], 5), I = u("zzhou", [ 0, 0, 6.5 ], [ 90, 0, 0 ], [ 1, 1, 1 ], [ 14 / 255, 127 / 255, 191 / 255, 1 ], 6);
1319
- return A.translate.push(t, s, i, n, o, I), A;
1320
- }
1321
- updateMatrix(t, i, n, o, I) {
1322
- const g = i.getCoordinates(), r = t.coordinateToPointAtRes(g, t.getGLRes()), a = i.o();
1323
- s.set(E, r.x, r.y, a);
1324
- const C = s.copy(M, I), h = B(t, i.getTranslation());
1325
- s.add(E, E, h), s.add(E, E, C);
1326
- for (const I in this._meshes) for (let g = 0; g < this._meshes[I].length; g++) {
1327
- const r = this._meshes[I][g];
1328
- for (let g = 0; g < r.length; g++) {
1329
- const a = r[g], C = a.getUniform("uPickingId"), h = s.copy(M, a.translate);
1330
- let w = s.copy(V, a.rotation);
1331
- const c = a.scaling;
1332
- if (11 === C && (this.i ? (w[2] += n, a.rotation[2] += n) : this.i || (w[2] += n,
1333
- a.rotation[2] += n, w[0] = 360, w[2] -= 90)), C > 100 && 1 === i.getTargets().length && (w = i.getTargets()[0].getRotation()),
1334
- S.indexOf(C) > -1) if (12 !== C) c[0] += o, c[1] += o, c[2] += o; else {
1335
- const A = this._meshes.translate[4][0];
1336
- c[0] = 1.2 * A.scaling[0], c[1] = 1.2 * A.scaling[0], c[2] = 1.2 * A.scaling[0];
1337
- }
1338
- let Q = b(i, t);
1339
- if (Q = s.set(O, Q, Q, Q), s.multiply(h, h, Q), s.multiply(Q, Q, c), 1 === C || 2 === C || 3 === C || 4 === C) {
1340
- const A = s.multiply(x, c, U);
1341
- s.multiply(h, h, A);
1342
- }
1343
- const f = A.fromEuler(F, w[0], w[1], w[2]);
1344
- if (s.add(h, h, E), "xyzScale" === I) {
1345
- const A = e.fromRotationTranslationScale([], f, h, Q);
1346
- e.multiply(a.localTransform, A, a.originTransform);
1347
- } else e.fromRotationTranslationScale(a.localTransform, f, h, Q);
1348
- }
1349
- }
1350
- }
1351
- getMeshes(A) {
1352
- const e = {};
1353
- return A ? ("xyzScale" === A ? e[A] = this._meshes[A] : (e.translate = this._meshes.translate,
1354
- "translate" !== A && (e[A] = this._meshes[A])), e) : e;
1355
- }
1356
- I(A) {
1357
- this.i = A;
1358
- }
1359
- dispose() {
1360
- for (const A in this._meshes) for (let e = 0; e < this._meshes[A].length; e++) {
1361
- const t = this._meshes[A][e];
1362
- for (let A = 0; A < t.length; A++) {
1363
- const e = t[A];
1364
- e.geometry.dispose(), e.dispose();
1365
- }
1366
- }
1367
- }
1368
- }
1369
-
1370
- const T = [], _ = [], H = [], J = new I(0, 0), N = [], R = [], K = [], z = [ 0, 0, 0 ];
1371
-
1372
- class G {
1373
- constructor() {
1374
- this.C = [], this.h = [ 0, 0, 0 ], this.l = [ 1, 1, 1 ], this.P = [ 0, 0, 0 ];
1375
- }
1376
- D(A) {
1377
- Array.isArray(A) ? A.forEach((A => {
1378
- this.D(A);
1379
- })) : (A.on("remove", this.u, this), A.m = {
1380
- coordinate: A.getCoordinates(),
1381
- translation: A.getTranslation(),
1382
- rotation: A.getRotation(),
1383
- scale: A.getScale()
1384
- }, this.C.push(A));
1385
- }
1386
- B() {
1387
- this.C.forEach((A => {
1388
- A.off("remove", this.u, this);
1389
- })), this.C = [];
1390
- }
1391
- p(A, e, t, i, n, o, I) {
1392
- for (let I = 0; I < this.C.length; I++) {
1393
- const g = this.C[I], r = g.getRotation(), a = g.getScale(), C = this.v(o, g, i, t, e);
1394
- let h = null;
1395
- h = i >= 0 ? i : i * (this.options && this.options.scaleStrength || 1);
1396
- const w = s.add(K, s.set(T, h * a[0], h * a[1], h * a[2]), a), c = Math.min(...w);
1397
- if (Math.abs(c) < n) {
1398
- const A = Math.abs(c);
1399
- w[0] = w[0] * (n / A), w[1] = w[1] * (n / A), w[2] = w[2] * (n / A);
1400
- }
1401
- const Q = s.add(r, t, r);
1402
- g.setCoordinates(C), this.L(A, w, a);
1403
- const f = g.getTranslation();
1404
- g.setTRS(f, Q, w);
1405
- }
1406
- s.set(K, i, i, i), s.add(this.P, t, this.P), s.add(this.l, K, this.l), s.add(this.h, e, this.h),
1407
- A.indexOf("translate") > -1 ? I.fire("positionchange", {
1408
- action: A,
1409
- type: "positionchange",
1410
- transformtarget: this.C,
1411
- center: this.getCoordinates(),
1412
- scale: this.l,
1413
- rotation: this.P,
1414
- translation: this.h,
1415
- deltaTranslate: e,
1416
- deltaRotation: t,
1417
- deltaScale: i
1418
- }) : I.fire("transforming", {
1419
- action: A,
1420
- type: "transforming",
1421
- transformtarget: this.C,
1422
- center: this.C[0].getTransformOrigin(),
1423
- scale: this.l,
1424
- rotation: this.P,
1425
- translation: this.h,
1426
- deltaTranslate: e,
1427
- deltaRotation: t,
1428
- deltaScale: i
1429
- });
1430
- }
1431
- v(t, i, n, o, I) {
1432
- const g = i.getCenter(), r = i.getTransformOrigin(), a = t.getGLRes(), C = t.coordinateToPointAtRes(g, a, J);
1433
- C.z = t.altitudeToPoint(g.z, a), s.set(N, C.x, C.y, C.z || 0);
1434
- const h = t.coordinateToPointAtRes(r, a, J);
1435
- h.z = t.altitudeToPoint(r.z, a), s.set(R, h.x, h.y, h.z || 0);
1436
- const w = s.sub(T, N, R), c = A.fromEuler(_, 0, 0, o[2]);
1437
- s.set(K, n + 1, n + 1, n + 1);
1438
- const Q = e.fromRotationTranslationScale(H, c, I, K);
1439
- s.transformMat4(w, w, Q), s.add(w, w, R), J.set(w[0], w[1]);
1440
- const f = t.pointAtResToCoordinate(J, a);
1441
- return f.z = w[2] / t.altitudeToPoint(1, a), f;
1442
- }
1443
- L(A, e, t) {
1444
- return "x-scale" === A && (e[1] = t[1], e[2] = t[2]), "y-scale" === A && (e[0] = t[0],
1445
- e[2] = t[2]), "z-scale" === A && (e[0] = t[0], e[1] = t[1]), e;
1446
- }
1447
- M() {
1448
- this.C.forEach((A => {
1449
- if (A.m) {
1450
- const {coordinate: e, translation: t, rotation: s, scale: i} = A.m;
1451
- A.setCoordinates(e), A.setTRS(t, s, i);
1452
- }
1453
- }));
1454
- }
1455
- getScale() {
1456
- return this.l;
1457
- }
1458
- getTranslation() {
1459
- return 1 === this.C.length && this.C[0].getTranslation() || z;
1460
- }
1461
- getRotation() {
1462
- return this.P;
1463
- }
1464
- O() {
1465
- return this.C[0] ? this.C[0].getLayer() : null;
1466
- }
1467
- getCoordinates() {
1468
- let A = 0, e = 0, t = 0;
1469
- const s = this.C.length;
1470
- if (!s) return null;
1471
- for (let i = 0; i < s; i++) {
1472
- const s = this.C[i].getCenter();
1473
- A += s.x, e += s.y, t += s.z || 0;
1474
- }
1475
- A /= s, e /= s, t /= s;
1476
- const i = new g(A, e, t);
1477
- for (let A = 0; A < s; A++) this.C[A].setTransformOrigin(i);
1478
- return i;
1479
- }
1480
- u(A) {
1481
- const e = A.target, t = this.C.indexOf(e);
1482
- t > -1 && (delete e.m, this.C.splice(t, 1));
1483
- }
1484
- getTargets() {
1485
- return this.C;
1486
- }
1487
- o() {
1488
- let A = 0;
1489
- const e = this.C.length;
1490
- for (let t = 0; t < e; t++) {
1491
- A += this.C[t].getPointZ();
1492
- }
1493
- return A /= e, A;
1494
- }
1495
- F() {
1496
- for (let A = 0; A < this.C.length; A++) if (this.C[A].isVisible()) return !0;
1497
- return !1;
1498
- }
1499
- }
1500
-
1501
- const j = [ 5, 6, 7, 8, 9, 10 ], Z = [ 5, 7, 8, 9, 10 ], Y = [ 2, 4, 11 ], W = [ 1, 3, 12 ], q = [ 12, 16 ], X = [ 1, 2, 3, 4 ], $ = [ 1, 2, 3, 4, 12 ], AA = [], eA = [], tA = [], sA = [], iA = [], nA = [], oA = [];
1502
-
1503
- class IA extends(r(a(C))){
1504
- constructor(A = {}) {
1505
- super(A), this.options = A, this.mouseAction = "moving", this.U = this.options.mode || "translate",
1506
- this.V = !0, this.TransformHelper = new k, this.S = new G, this.helperScene = new t.Scene([]),
1507
- this.addToMapCount = 0, this.k();
1508
- }
1509
- setCoordinates(A) {
1510
- this.T.setCoordinates(A), this.transform(this.T);
1511
- }
1512
- enable() {
1513
- return this.V = !0, this.layerRenderer && this.layerRenderer.setToRedraw(), this;
1514
- }
1515
- disable() {
1516
- return this.V = !1, this.layerRenderer && this.layerRenderer.setToRedraw(), this.map && this.map.resetCursor(),
1517
- this;
1518
- }
1519
- setMode(A) {
1520
- this.U = A, this._(), this.layerRenderer && this.layerRenderer.setToRedraw(), this.fire("modechange", {
1521
- mode: A,
1522
- type: "modechange"
1523
- });
1524
- }
1525
- getMode() {
1526
- return this.U;
1527
- }
1528
- isEnable() {
1529
- return this.V;
1530
- }
1531
- H(A) {
1532
- j.indexOf(A) > -1 ? this.U = "translate" : Y.indexOf(A) > -1 ? this.U = "rotation" : W.indexOf(A) > -1 ? this.U = "scaling" : "xyzScale" !== this.U && (this.U = "translate");
1533
- }
1534
- J() {
1535
- return this.U;
1536
- }
1537
- addTo(A) {
1538
- if (this.map) return this.N(), void console.warn("transform control has been added to a map, it suggest remove from the map before");
1539
- this.addToMapCount++, this.map = A;
1540
- const e = A.getLayers((A => A instanceof i))[0];
1541
- e ? this.R.addTo(e) : this.R.addTo(this.map), this.container = A.getContainer(),
1542
- A.on("dom:mousemove", this.K, this), A.on("dom:mousedown", this.G, this), A.on("dom:mouseup", this.j, this),
1543
- A.on("zooming moving dragrotating", this.Z, this), this.Y();
1544
- }
1545
- k() {
1546
- this.R = new w(`${h}_transformcontrol`), this.T = new c([ 0, 0 ], {
1547
- symbol: {
1548
- url: "cube",
1549
- modelHeight: 1,
1550
- uniforms: {
1551
- polygonOpacity: .01
1552
- }
1553
- }
1554
- }).addTo(this.R);
1555
- }
1556
- remove() {
1557
- this.map && (this.N(), this.TransformHelper.dispose(), this.R.remove(), this.layerRenderer && this.layerRenderer.setToRedraw(),
1558
- delete this.T, delete this.R, delete this.map, delete this.layer, delete this.layerRenderer,
1559
- delete this.container, delete this.S);
1560
- }
1561
- N() {
1562
- this.container && this.map && (this.map.off("dom:mousemove", this.K, this), this.map.off("dom:mousedown", this.G, this),
1563
- this.map.off("dom:mouseup", this.j, this), this.map.off("zooming moving dragrotating", this.Z, this),
1564
- this.layer && this.layer.off("renderend", this.render, this));
1565
- }
1566
- K(A) {
1567
- if (this.W()) {
1568
- if (this.currentMousePosition = {
1569
- x: A.containerPoint.x,
1570
- y: A.containerPoint.y
1571
- }, "moving" === this.mouseAction) {
1572
- const A = this.q();
1573
- this.currentPickingObject = this.X(this.currentMousePosition, A, "meshes"), this.currentPickingObject && null != this.currentPickingObject.pickingId ? (this.H(this.currentPickingObject.pickingId),
1574
- 6 === this.currentPickingObject.pickingId ? this.$(!0) : this.$(!1)) : (this.$(!1),
1575
- this.H()), this.AA();
1576
- }
1577
- this.eA(this.currentMousePosition);
1578
- }
1579
- }
1580
- G(A) {
1581
- if (!this.W() || 0 !== A.domEvent.button) return;
1582
- const e = this.q();
1583
- this.currentMousePosition = {
1584
- x: A.containerPoint.x,
1585
- y: A.containerPoint.y
1586
- }, this.tA = !0, this.currentPickingObject = this.X(this.currentMousePosition, e, "meshes"),
1587
- this.firstDownPoint = this.X(this.currentMousePosition, e, "meshes"), this.currentPickingObject && null != this.currentPickingObject.meshId ? (this.mouseAction = "transform",
1588
- this.sA(this.currentPickingObject.pickingId), this.map.config("zoomable", !1), this.map.config("draggable", !1),
1589
- this.layerRenderer && this.layerRenderer.setToRedraw()) : (this.mouseAction = "pan",
1590
- this.map.config("zoomable", !0), this.map.config("draggable", !0), this._()), this.lastMousePosition = this.currentMousePosition,
1591
- this.lastPickingObject = this.currentPickingObject, this.lastPickingMesh = e[this.currentPickingObject.meshId];
1592
- }
1593
- j() {
1594
- "transform" === this.mouseAction && (this.firstDownPoint = null, this._(), this.tA = !0,
1595
- this.fire("transformend", {
1596
- action: this.iA,
1597
- type: "transformend",
1598
- transformtarget: this.S.getTargets()
1599
- })), this.mouseAction = "moving", "xyzScale" !== this.U && (this.U = "translate"),
1600
- this.map.config("zoomable", !0), this.map.config("draggable", !0), this.layerRenderer && this.layerRenderer.setToRedraw();
1601
- }
1602
- Z() {
1603
- const A = this.TransformHelper.planeHelper.getMeshes()[0][0];
1604
- if (!A) return;
1605
- const e = this.map.getBearing();
1606
- A.rotation[2] = -e, this.nA();
1607
- }
1608
- nA() {
1609
- this.W() && (this.TransformHelper.updateMatrix(this.map, this.S, 0, 0, [ 0, 0, 0 ]),
1610
- this.tA = !0);
1611
- }
1612
- picked(A) {
1613
- if (!this.layerRenderer) return !1;
1614
- const e = this.q(), t = this.map;
1615
- let s = A;
1616
- A instanceof I || (s = t.coordinateToContainerPoint(new g(A)));
1617
- const i = this.X(s, e, "picked");
1618
- return !(!i || null === i.meshId);
1619
- }
1620
- _() {
1621
- const A = this.TransformHelper.getMeshes("scaling").scaling[0][0], e = 340 / 177;
1622
- A.scaling = [ .6 * e, .6 * e, .6 * e ], this.layerRenderer && (this.oA(A), this.IA());
1623
- }
1624
- IA() {
1625
- this.TransformHelper._meshes.translate.forEach((A => {
1626
- for (let e = 0; e < A.length; e++) {
1627
- const t = A[e];
1628
- X.indexOf(t.getUniform("uPickingId")) > -1 && t.material.set("color", t.originColor);
1629
- }
1630
- }));
1631
- }
1632
- oA(t) {
1633
- const i = this.S.getCoordinates(), n = this.map.coordinateToPointAtRes(i, this.map.getGLRes()), o = [ n.x, n.y, 0 ], I = B(this.map, this.S.getTranslation());
1634
- s.add(o, o, I);
1635
- const g = s.copy([], t.translate), r = t.scaling;
1636
- let a = b(this.S, this.map);
1637
- a = s.set([], a, a, a), s.multiply(g, g, a), s.multiply(a, a, r), s.add(g, g, o),
1638
- e.fromRotationTranslationScale(t.localTransform, [ 0, 0, 0, 1 ], g, a);
1639
- this.q().forEach((t => {
1640
- const i = t.getUniform("uPickingId");
1641
- if (1 === i || 3 === i || 2 === i || 4 === i) {
1642
- const i = s.copy([], t.translate), n = 170 / 177;
1643
- t.scaling = [ n, n, n ];
1644
- const I = t.scaling, g = t.rotation;
1645
- let r = b(this.S, this.map);
1646
- r = s.set([], r, r, r), s.multiply(i, i, r), s.multiply(r, r, I), s.add(i, i, o);
1647
- const a = A.fromEuler([], g[0], g[1], g[2]);
1648
- e.fromRotationTranslationScale(t.localTransform, a, i, r);
1649
- }
1650
- }));
1651
- }
1652
- gA(A) {
1653
- const e = this.map.containerPointToCoordinate(A), t = this.map.coordinateToPointAtRes(e, this.map.getGLRes());
1654
- return {
1655
- point: [ t.x, t.y ]
1656
- };
1657
- }
1658
- eA(A) {
1659
- if ("transform" === this.mouseAction) {
1660
- const A = this.J(), e = B(this.map, this.S.getTranslation()), t = this.S.o();
1661
- let s = null, i = null;
1662
- if (e[2] + t < .01 && "z-translate" !== this.iA) s = this.gA(this.currentMousePosition),
1663
- i = this.gA(this.lastMousePosition); else {
1664
- const A = this.TransformHelper.planeHelper.getMeshes()[0];
1665
- if (s = this.X(this.currentMousePosition, A, "plane"), i = this.X(this.lastMousePosition, A, "plane"),
1666
- !s || null === s.meshId || !i || null === i.meshId) return;
1667
- }
1668
- const o = [ 0, 0, 0 ], g = [ 0, 0, 0 ];
1669
- let r = 0, a = 0, C = 0;
1670
- if ("translate" === A) {
1671
- if ("xy-translate" === this.iA) {
1672
- const A = s.point[0] - i.point[0], e = s.point[1] - i.point[1];
1673
- o[0] = A, o[1] = e;
1674
- } else if ("x-translate" === this.iA) {
1675
- const A = s.point[0] - i.point[0];
1676
- o[0] = A;
1677
- } else if ("y-translate" === this.iA) {
1678
- const A = s.point[1] - i.point[1];
1679
- o[1] = A;
1680
- } else if ("z-translate" === this.iA) {
1681
- let A = 0;
1682
- if (this.rA()) {
1683
- const e = this.map.getGLRes(), t = this.map._pointAtResToContainerPoint(new I(i.point[0], i.point[1]), e), o = this.map._pointAtResToContainerPoint(new I(s.point[0], s.point[1]), e), g = n.length(n.set(sA, s.point[0] - i.point[0], s.point[1] - i.point[1]));
1684
- A = o.y < t.y ? g : -g;
1685
- } else A = s.point[2] - i.point[2];
1686
- o[2] = A;
1687
- }
1688
- } else if ("rotation" === A) a = this.aA(s.point, i.point), a >= 0 ? this.TransformHelper.I(!0) : this.TransformHelper.I(!1),
1689
- g[2] += a; else if ("scaling" === A || "xyzScale" === A) {
1690
- const A = this.CA(), e = n.length(n.set(sA, this.firstDownPoint.point[0] - A[0], this.firstDownPoint.point[1] - A[1])), t = n.length(n.set(sA, i.point[0] - A[0], i.point[1] - A[1]));
1691
- r = this.hA(s.point, i.point, A, t), C = this.hA(s.point, i.point, A, e);
1692
- }
1693
- this.TransformHelper.updateMatrix(this.map, this.S, a, C, o), this.S.p(this.iA, o, g, r, .01, this.map, this);
1694
- }
1695
- this.lastMousePosition = A, this.lastPickingObject = this.currentPickingObject;
1696
- const e = this.q();
1697
- this.lastPickingMesh = e[this.currentPickingObject.meshId];
1698
- }
1699
- hA(A, e, t, s, i) {
1700
- const o = (n.length(n.set(sA, A[0] - t[0], A[1] - t[1])) - n.length(n.set(sA, e[0] - t[0], e[1] - t[1]))) / s;
1701
- return i ? (i[0] - .01) * o : o;
1702
- }
1703
- CA() {
1704
- const A = this.map, e = this.S.getCoordinates(), t = A.coordinateToPointAtRes(e, A.getGLRes()), i = s.set(iA, t.x, t.y, 0), n = B(A, this.S.getTranslation());
1705
- return s.add(i, i, n), i;
1706
- }
1707
- $(t) {
1708
- const i = this.TransformHelper.planeHelper.getMeshes()[0][0], n = e.getTranslation(tA, i.localTransform), o = e.getScaling(eA, i.localTransform);
1709
- let I = A.fromEuler(AA, 0, 0, 0);
1710
- const g = this.map.getBearing();
1711
- t && !this.rA() ? (I = A.fromEuler(AA, 90, 0, -g), 0 === i.rotation[0] && (this.tA = !0),
1712
- s.set(i.rotation, 90, 0, -g)) : (90 === i.rotation[0] && (this.tA = !0), s.set(i.rotation, 0, 0, -g)),
1713
- e.fromRotationTranslationScale(i.localTransform, I, n, o);
1714
- }
1715
- rA() {
1716
- if (this.map.getPitch()) return !1;
1717
- const A = this.map.cameraPosition, e = this.map.coordinateToPointAtRes(this.map.getCenter(), this.map.getGLRes());
1718
- s.set(e, e.x, e.y, 0);
1719
- const t = this.S.getCoordinates(), i = this.map.coordinateToPointAtRes(t, this.map.getGLRes()), n = B(this.map, this.S.getTranslation()), o = s.set(tA, i.x, i.y, 0), I = s.add(o, o, n), g = s.subtract([], A, I), r = s.subtract([], A, e);
1720
- return s.angle(g, r) < 1 / 180 * Math.PI;
1721
- }
1722
- AA() {
1723
- const A = this.q();
1724
- if (this.currentPickingObject && null != this.currentPickingObject.meshId) {
1725
- this.wA(), this.lastPickingObject && null != this.lastPickingObject.meshId && this.lastPickingObject.meshId !== this.currentPickingObject.meshId && this.cA();
1726
- const e = A[this.currentPickingObject.meshId];
1727
- if (e && q.indexOf(this.currentPickingObject.pickingId) < 0) if (this.currentPickingObject.pickingId > 100) this.QA(e); else {
1728
- const A = [ e.originColor[0], e.originColor[1], e.originColor[2], .8 ];
1729
- e.material.set("color", A), this.fA(e, .5);
1730
- }
1731
- this.layerRenderer.setToRedraw();
1732
- } else this.lastPickingObject && null != this.lastPickingObject.meshId && (this.map.resetCursor(),
1733
- this.cA(), this.layerRenderer.setToRedraw());
1734
- }
1735
- QA(A) {
1736
- const e = [ 1, 179 / 255, 2 / 255, 1 ];
1737
- A.material.set("color", e), A.properties.relatedMeshes && A.properties.relatedMeshes.forEach((A => {
1738
- A.material.set("color", e);
1739
- }));
1740
- }
1741
- wA() {
1742
- 6 === this.currentPickingObject.pickingId ? this.map.setCursor("ns-resize") : Z.indexOf(this.currentPickingObject.pickingId) > -1 ? this.map.setCursor("move") : this.map.setCursor("pointer");
1743
- }
1744
- cA() {
1745
- const A = this.lastPickingMesh;
1746
- if (!A) return;
1747
- const e = A.getUniform("uPickingId"), t = this.q();
1748
- Z.indexOf(e) > -1 ? t.forEach((A => {
1749
- Z.indexOf(A.getUniform("uPickingId")) > -1 && A.material.set("color", A.originColor);
1750
- })) : $.indexOf(e) > -1 ? t.forEach((A => {
1751
- const e = A.getUniform("uPickingId");
1752
- X.indexOf(e) > -1 && A.material.set("color", A.originColor);
1753
- })) : 11 === e && t.forEach((A => {
1754
- X.indexOf(A.getUniform("uPickingId")) > -1 && A.material.set("color", A.originColor);
1755
- })), A.material.set("color", A.originColor), A.properties.relatedMeshes && A.properties.relatedMeshes.forEach((A => {
1756
- A.material.set("color", A.originColor);
1757
- }));
1758
- }
1759
- fA(A, e) {
1760
- const t = A.getUniform("uPickingId"), s = this.q();
1761
- Z.indexOf(t) > -1 ? s.forEach((t => {
1762
- if (Z.indexOf(t.getUniform("uPickingId")) > -1 && t.getUniform("uPickingId") !== A.getUniform("uPickingId")) {
1763
- const A = [ t.originColor[0], t.originColor[1], t.originColor[2], e ];
1764
- t.material.set("color", A);
1765
- }
1766
- })) : "scaling" === this.U ? s.forEach((A => {
1767
- const e = A.getUniform("uPickingId");
1768
- if (1 === e || 3 === e || 2 === e || 4 === e) {
1769
- const e = [ 149 / 255, 179 / 255, 199 / 255, .8 ];
1770
- A.material.set("color", e);
1771
- }
1772
- })) : "rotation" === this.U && s.forEach((A => {
1773
- const e = A.getUniform("uPickingId");
1774
- if (1 === e || 3 === e || 2 === e || 4 === e) {
1775
- const e = A.originColor;
1776
- A.material.set("color", [ e[0], e[1], e[2], 0 ]);
1777
- }
1778
- }));
1779
- }
1780
- reset() {
1781
- this.map && this.S && (this.S.M(), this.TransformHelper.updateMatrix(this.map, this.S, 0, 0, [ 0, 0, 0 ]));
1782
- }
1783
- aA(A, e) {
1784
- const t = this.CA(), s = n.set(nA, e[0] - t[0], e[1] - t[1]), i = n.set(oA, A[0] - t[0], A[1] - t[1]), o = Math.atan2(s[1], s[0]);
1785
- return (Math.atan2(i[1], i[0]) - o) / Math.PI * 180;
1786
- }
1787
- sA(A) {
1788
- return this.iA = 113 === A || 114 === A ? "x-scale" : 115 === A || 116 === A ? "z-scale" : 117 === A || 118 === A ? "y-scale" : 119 === A ? "xyz-scale" : 5 === A ? "xy-translate" : 6 === A ? "z-translate" : 7 === A || 9 === A ? "x-translate" : 8 === A || 10 === A ? "y-translate" : 11 === A ? "z-rotate" : "scale",
1789
- this.iA;
1790
- }
1791
- transform(A) {
1792
- if (!A) return;
1793
- if (this.layerRenderer && this.layerRenderer.layer && (this.layerRenderer.layer.off("renderend", this.render),
1794
- this.layerRenderer.layer.off("resizeCanvas", this.lA)), !this.map) return void console.error("should add to a target first");
1795
- if (this.S && (this.S.B(), this.S.D(A)), !this.S.getTargets().length) return;
1796
- const e = this.map;
1797
- this.TransformHelper.updateMatrix(e, this.S, 0, 0, [ 0, 0, 0 ]), this.PA(), this.tA = !0;
1798
- }
1799
- getTransformTarget() {
1800
- return this.S;
1801
- }
1802
- u() {
1803
- delete this.S;
1804
- }
1805
- PA() {
1806
- const A = this.S.O();
1807
- A && (A.off("renderend", this.render), A.off("resizeCanvas", this.lA));
1808
- const e = this.map, t = A.getRenderer();
1809
- this.layerRenderer = t, this.regl = t.regl, this.renderer = t.renderer, this.DA = this.layerRenderer.getFBORayPicking(),
1810
- this.uA = {
1811
- projViewMatrix: e.projViewMatrix,
1812
- projMatrix: e.projMatrix,
1813
- viewMatrix: e.viewMatrix,
1814
- pointSize: 1
1815
- }, A.on("renderend", this.render, this), A.on("resizeCanvas", this.lA, this), t.setToRedraw();
1816
- }
1817
- lA() {
1818
- this.DA.clear(), this.tA = !0;
1819
- }
1820
- X(A, e, t) {
1821
- const s = this.map;
1822
- if (!(s && this.DA && this.layerRenderer && this.layerRenderer.canvas)) return null;
1823
- const i = s.getDevicePixelRatio(), n = A.x * i, o = A.y * i, I = this.uA, g = this.layerRenderer.canvas.gl && this.layerRenderer.canvas.gl.wrap;
1824
- (this.tA || g || !this.mA || this.mA !== t) && (this.DA.render(e, I, !0), this.mA = t,
1825
- this.tA = !1);
1826
- return this.DA.pick(n, o, 10, I, {
1827
- viewMatrix: this.map.viewMatrix,
1828
- projMatrix: this.map.projMatrix,
1829
- returnPoint: !0
1830
- });
1831
- }
1832
- Y() {
1833
- const A = this.map.getDevicePixelRatio(), s = {
1834
- x: 0,
1835
- y: 0,
1836
- width: () => this.map ? this.map.width * A : 1,
1837
- height: () => this.map ? this.map.height * A : 1
1838
- };
1839
- this.bA = new t.MeshShader({
1840
- vert: "attribute vec3 aPosition;\nuniform mat4 projViewModelMatrix;\nvoid main()\n{\n gl_Position = projViewModelMatrix * vec4(aPosition, 1.0);\n}\n",
1841
- frag: "precision mediump float;\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}\n",
1842
- uniforms: [ "color", {
1843
- name: "projViewModelMatrix",
1844
- type: "function",
1845
- fn: function(A, t) {
1846
- return e.multiply([], t.projViewMatrix, t.modelMatrix);
1847
- }
1848
- } ],
1849
- extraCommandProps: {
1850
- viewport: s,
1851
- depth: {
1852
- enable: !0,
1853
- func: "always",
1854
- mask: !0,
1855
- range: [ 0, 0 ]
1856
- },
1857
- blend: {
1858
- enable: !0,
1859
- func: {
1860
- src: "src alpha",
1861
- dst: "one minus src alpha"
1862
- },
1863
- equation: "add"
1864
- }
1865
- },
1866
- defines: {}
1867
- });
1868
- }
1869
- render() {
1870
- if (!this.W()) return;
1871
- const A = this.q();
1872
- this.helperScene.setMeshes(A);
1873
- const e = this.layerRenderer.getFrameContext();
1874
- if (e && e.renderTarget && this.layerRenderer.getFrameTimestamp() !== e.timestamp) return;
1875
- this.nA(), this.bA.filter = e && e.sceneFilter;
1876
- const t = e && e.renderTarget && e.renderTarget.fbo;
1877
- this.renderer.render(this.bA, this.uA, this.helperScene, t);
1878
- }
1879
- q() {
1880
- let A = [];
1881
- const e = this.TransformHelper.getMeshes(this.U);
1882
- for (const t in e) {
1883
- if ("translate" === t) continue;
1884
- const s = e[t];
1885
- for (let e = 0; e < s.length; e++) A = A.concat(s[e]);
1886
- }
1887
- const t = e.translate;
1888
- if (t) for (let e = 0; e < t.length; e++) A = A.concat(t[e]);
1889
- return A;
1890
- }
1891
- W() {
1892
- const A = this.layerRenderer, e = A && A.layer;
1893
- return A && this.S && e && e.isVisible() && this.S.F() && this.regl && this.V;
1894
- }
1895
- }
1896
-
1897
- IA.mergeOptions({
1898
- scaleStrength: 2
1899
- });
1900
-
1901
- export { IA as TransformControl };
1902
-
1903
- "undefined" != typeof console && console.log("@maptalks/transform-control v0.122.0");
1904
- //# sourceMappingURL=transform-control.es.js.map