@shapediver/viewer.data-engine.tag3d-engine 3.6.0 → 3.7.1

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/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Required Notice: Copyright 2023 ShapeDiver GmbH (https://www.shapediver.com)
1
+ Required Notice: Copyright 2025 ShapeDiver GmbH (https://www.shapediver.com)
2
2
 
3
3
  https://polyformproject.org/licenses/noncommercial/1.0.0
4
4
 
@@ -18,7 +18,7 @@ Notices
18
18
 
19
19
  You must ensure that anyone who gets a copy of any part of the software from you also gets a copy of these terms or the URL for them above, as well as copies of any plain-text lines beginning with Required Notice: that the licensor provided with the software. For example:
20
20
 
21
- Required Notice: Copyright 2023 ShapeDiver GmbH (https://www.shapediver.com)
21
+ Required Notice: Copyright 2025 ShapeDiver GmbH (https://www.shapediver.com)
22
22
 
23
23
  Changes and New Works License
24
24
 
@@ -6,17 +6,9 @@ import { ShapeDiverResponseOutputContent } from '@shapediver/sdk.geometry-api-sd
6
6
  * There can either be a single glb file for both ascii and non-ascii characters or separate glb files for each.
7
7
  * The advantage of having separate glb files is that the ascii glb can be loaded once and the non-ascii glb can be loaded only when needed.
8
8
  */
9
- export declare type FontInfo = {
10
- glb: string;
11
- height: number;
12
- width: number;
13
- } | {
14
- glb: {
15
- ascii: string;
16
- other: string;
17
- };
18
- height: number;
19
- width: number;
9
+ export declare type FontInfo = string | {
10
+ ascii: string;
11
+ other: string;
20
12
  };
21
13
  export declare class Tag3dEngine {
22
14
  private readonly _logger;
@@ -1 +1 @@
1
- {"version":3,"file":"Tag3dEngine.d.ts","sourceRoot":"","sources":["../src/Tag3dEngine.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAY,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,qCAAqC,CAAC;AAOtF;;;;;GAKG;AACH,oBAAY,QAAQ,GAAG;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB,GAAG;IACA,GAAG,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB,CAAC;AAMF,qBAAa,WAAW;IAGpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IAEnD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAwB;IAChD,OAAO,CAAC,MAAM,CAAC,SAAS,CAOtB;IACF,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;IACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAwB;IAC/C,OAAO,CAAC,MAAM,CAAC,YAAY,CAAwB;IAMnD,WAAkB,QAAQ,gBAEzB;WAMa,WAAW,CAAC,QAAQ,EAAE,QAAQ;IAW5C;;;;;OAKG;IACU,WAAW,CAAC,OAAO,EAAE,+BAA+B,GAAG,OAAO,CAAC,SAAS,CAAC;IAyGtF;;;;;;;;;OASG;YACW,OAAO;CAuKxB"}
1
+ {"version":3,"file":"Tag3dEngine.d.ts","sourceRoot":"","sources":["../src/Tag3dEngine.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAY,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,qCAAqC,CAAC;AAOtF;;;;;GAKG;AACH,oBAAY,QAAQ,GAAG,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;CAAE,CAAC;AAMlE,qBAAa,WAAW;IAGpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IAEnD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAwB;IAChD,OAAO,CAAC,MAAM,CAAC,SAAS,CAGtB;IACF,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;IACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAwB;IAC/C,OAAO,CAAC,MAAM,CAAC,YAAY,CAAwB;IAMnD,WAAkB,QAAQ,gBAEzB;WAMa,WAAW,CAAC,QAAQ,EAAE,QAAQ;IAW5C;;;;;OAKG;IACU,WAAW,CAAC,OAAO,EAAE,+BAA+B,GAAG,OAAO,CAAC,SAAS,CAAC;IAyGtF;;;;;;;;;OASG;YACW,OAAO;CAgNxB"}
@@ -49,13 +49,13 @@ class Tag3dEngine {
49
49
  const node = new viewer_shared_node_tree_1.TreeNode('tag3d');
50
50
  if (!content)
51
51
  throw new viewer_shared_services_1.ShapeDiverViewerDataProcessingError('Tag3dEngine.loadContent: Invalid content was provided to tag3d engine.');
52
- if (typeof Tag3dEngine._fontInfo.glb === 'string') {
52
+ if (typeof Tag3dEngine._fontInfo === 'string') {
53
53
  // if there is a single glb for both ascii and non-ascii characters defined
54
54
  // but the glb has not been loaded yet, we load it now
55
55
  if (!Tag3dEngine._mainGlb) {
56
56
  const geometryEngine = viewer_data_engine_geometry_engine_1.GeometryEngine.instance;
57
57
  Tag3dEngine._mainGlb = yield geometryEngine.loadContent({
58
- href: Tag3dEngine._fontInfo.glb,
58
+ href: Tag3dEngine._fontInfo,
59
59
  format: 'glb'
60
60
  }, 'Tag3dEngine.loadContent');
61
61
  }
@@ -67,7 +67,7 @@ class Tag3dEngine {
67
67
  if (!Tag3dEngine._asciiGlb) {
68
68
  const geometryEngine = viewer_data_engine_geometry_engine_1.GeometryEngine.instance;
69
69
  Tag3dEngine._asciiGlb = yield geometryEngine.loadContent({
70
- href: Tag3dEngine._fontInfo.glb.ascii,
70
+ href: Tag3dEngine._fontInfo.ascii,
71
71
  format: 'glb'
72
72
  }, 'Tag3dEngine.loadContent');
73
73
  }
@@ -145,20 +145,29 @@ class Tag3dEngine {
145
145
  */
146
146
  loadTag(tag3dInfo) {
147
147
  return __awaiter(this, void 0, void 0, function* () {
148
- const characterGlb = Tag3dEngine._fontInfo.glb === 'string' ? Tag3dEngine._mainGlb : Tag3dEngine._asciiGlb;
148
+ const characterGlb = Tag3dEngine._fontInfo === 'string' ? Tag3dEngine._mainGlb : Tag3dEngine._asciiGlb;
149
149
  const material = new viewer_shared_types_1.MaterialStandardData({ color: '#ffffff', metalness: 0, roughness: 1 });
150
- tag3dInfo.size = tag3dInfo.size ? +tag3dInfo.size : 1;
150
+ const fontSize = tag3dInfo.size ? +tag3dInfo.size : 1;
151
+ // as there seems to be some magic scaling value applied in Rhino
152
+ // we tried to match it as best as possible
153
+ const scaledFontSize = fontSize * 1.03;
151
154
  if (tag3dInfo.text === undefined || tag3dInfo.text === '' || /^[ \t\n\r]*$/.test(tag3dInfo.text))
152
155
  return;
156
+ let fontInfo = { ascender: 1499, descender: -349, underlinePosition: -121, underlineThickness: 81, boundingBox: { yMin: -571, xMin: -795, yMax: 1803, xMax: 2776 }, resolution: 1000 };
157
+ characterGlb.traverseData((data) => {
158
+ if (data instanceof viewer_shared_types_1.CustomData) {
159
+ if (data.data.font)
160
+ fontInfo = data.data.font;
161
+ }
162
+ });
153
163
  // split into lines
154
164
  const lines = tag3dInfo.text.split(/\r\n|\r|\n/g);
155
165
  // split into characters per line
156
166
  const charactersPerLine = lines.map(line => line.split(''));
157
- const characterWidth = Tag3dEngine._fontInfo.width / 1000;
158
- const characterHeight = (Tag3dEngine._fontInfo.height / 1000) * 1.25;
167
+ const characterHeight = ((fontInfo.ascender - fontInfo.descender) / fontInfo.resolution) * scaledFontSize;
159
168
  let maxLineWidth = 0;
160
169
  const maxLineHeight = characterHeight * charactersPerLine.length;
161
- let lineHeight = -characterHeight;
170
+ let lineHeight = 0;
162
171
  const characterDictionary = {};
163
172
  for (let i = 0; i < charactersPerLine.length; ++i) {
164
173
  const characters = charactersPerLine[i];
@@ -170,13 +179,13 @@ class Tag3dEngine {
170
179
  const char = characters[j];
171
180
  let nodesWithName = characterGlb.getNodesByName(char);
172
181
  if (nodesWithName.length === 0) {
173
- if (typeof Tag3dEngine._fontInfo.glb !== 'string') {
182
+ if (typeof Tag3dEngine._fontInfo !== 'string') {
174
183
  // if the character is not found in the ascii glb, try to load the non-ascii glb
175
184
  // and search for the character there
176
185
  if (!Tag3dEngine._nonAsciiGlb) {
177
186
  const geometryEngine = viewer_data_engine_geometry_engine_1.GeometryEngine.instance;
178
187
  Tag3dEngine._nonAsciiGlb = yield geometryEngine.loadContent({
179
- href: Tag3dEngine._fontInfo.glb.other,
188
+ href: Tag3dEngine._fontInfo.other,
180
189
  format: 'glb'
181
190
  }, 'Tag3dEngine.loadContent');
182
191
  }
@@ -188,71 +197,88 @@ class Tag3dEngine {
188
197
  if (characterDictionary[char] === undefined) {
189
198
  // if the character does not exist yet, create it
190
199
  const characterNode = new viewer_shared_node_tree_1.TreeNode(char);
191
- nodesWithName.forEach(n => {
192
- n.traverseData((data) => {
193
- if (data instanceof viewer_shared_types_1.GeometryData) {
194
- const clone = data.clone();
195
- clone.material = material;
196
- characterNode.addData(clone);
197
- }
198
- });
200
+ let glyphInfo = { ha: 0, x_min: 0, x_max: 0 };
201
+ nodesWithName[0].traverseData((data) => {
202
+ if (data instanceof viewer_shared_types_1.CustomData) {
203
+ glyphInfo = data.data.glyph;
204
+ lineWidth += (glyphInfo.ha / fontInfo.resolution) * scaledFontSize;
205
+ }
206
+ if (data instanceof viewer_shared_types_1.GeometryData) {
207
+ const clone = data.clone();
208
+ clone.material = material;
209
+ characterNode.addData(clone);
210
+ }
199
211
  });
200
212
  characterDictionary[char] = {
201
213
  characterNode,
202
214
  transformations: [transformationMatrix],
203
- colors: [tag3dInfo.color]
215
+ colors: [tag3dInfo.color],
216
+ glyphInfo
204
217
  };
205
218
  }
206
219
  else {
207
220
  // if the character already exists, add the transformation matrix to the list
208
221
  characterDictionary[char].transformations.push(transformationMatrix);
209
222
  characterDictionary[char].colors.push(tag3dInfo.color);
223
+ lineWidth += (characterDictionary[char].glyphInfo.ha / fontInfo.resolution) * scaledFontSize;
210
224
  }
211
225
  }
212
226
  else {
213
227
  if (char !== ' ')
214
228
  this._logger.warn(`Tag3dEngine.loadContent: Character ${char} not found in font.`);
215
229
  }
216
- lineWidth += characterWidth * tag3dInfo.size;
217
230
  }
218
231
  maxLineWidth = Math.max(maxLineWidth, lineWidth);
219
- lineHeight -= characterHeight * tag3dInfo.size;
232
+ lineHeight -= characterHeight;
220
233
  }
221
234
  const tagJustTranslation = gl_matrix_1.vec3.create();
235
+ const characterHeightWithoutDescender = ((fontInfo.ascender) / fontInfo.resolution) * scaledFontSize;
236
+ const characterDescender = ((fontInfo.descender) / fontInfo.resolution) * scaledFontSize;
237
+ // some magic offsets to make the text appear correctly
238
+ const initialMagicOffset = 0.1;
239
+ const magicOffsetTop = initialMagicOffset - 0.06 * (charactersPerLine.length - 1);
240
+ const top = -maxLineHeight + characterHeightWithoutDescender / 2 + ((charactersPerLine.length - 1) * -characterDescender) + magicOffsetTop * scaledFontSize;
241
+ const magicOffsetRight = 0.1;
242
+ const right = -maxLineWidth + magicOffsetRight * scaledFontSize;
222
243
  switch (tag3dInfo.justification) {
223
244
  case 'TL':
245
+ tagJustTranslation[1] = top;
224
246
  break;
225
247
  case 'TC':
226
- tagJustTranslation[0] = -maxLineWidth * 0.5;
248
+ tagJustTranslation[0] = right * 0.5;
249
+ tagJustTranslation[1] = top;
227
250
  break;
228
251
  case 'TR':
229
- tagJustTranslation[0] = -maxLineWidth;
252
+ tagJustTranslation[0] = right;
253
+ tagJustTranslation[1] = top;
230
254
  break;
231
255
  case 'ML':
232
- tagJustTranslation[1] = maxLineHeight * 0.5;
256
+ tagJustTranslation[1] = top * 0.5;
233
257
  break;
234
258
  case 'MC':
235
- tagJustTranslation[0] = -maxLineWidth * 0.5;
236
- tagJustTranslation[1] = maxLineHeight * 0.5;
259
+ tagJustTranslation[0] = right * 0.5;
260
+ tagJustTranslation[1] = top * 0.5;
237
261
  break;
238
262
  case 'MR':
239
- tagJustTranslation[0] = -maxLineWidth;
240
- tagJustTranslation[1] = maxLineHeight * 0.5;
263
+ tagJustTranslation[0] = right;
264
+ tagJustTranslation[1] = top * 0.5;
241
265
  break;
242
266
  case 'BL':
243
- tagJustTranslation[1] = maxLineHeight;
267
+ tagJustTranslation[1] = 0;
244
268
  break;
245
269
  case 'BC':
246
- tagJustTranslation[0] = -maxLineWidth * 0.5;
247
- tagJustTranslation[1] = maxLineHeight;
270
+ tagJustTranslation[0] = right * 0.5;
271
+ tagJustTranslation[1] = 0;
248
272
  break;
249
273
  case 'BR':
250
- tagJustTranslation[0] = -maxLineWidth;
251
- tagJustTranslation[1] = maxLineHeight;
274
+ tagJustTranslation[0] = right;
275
+ tagJustTranslation[1] = 0;
252
276
  break;
253
277
  }
278
+ const fontSizeVec3 = gl_matrix_1.vec3.fromValues(scaledFontSize, scaledFontSize, scaledFontSize);
279
+ gl_matrix_1.vec3.divide(tagJustTranslation, tagJustTranslation, fontSizeVec3);
254
280
  const tagJustTranslationMatrix = gl_matrix_1.mat4.fromTranslation(gl_matrix_1.mat4.create(), tagJustTranslation);
255
- const scalingMatrix = gl_matrix_1.mat4.fromScaling(gl_matrix_1.mat4.create(), gl_matrix_1.vec3.fromValues(tag3dInfo.size, tag3dInfo.size, tag3dInfo.size));
281
+ const scalingMatrix = gl_matrix_1.mat4.fromScaling(gl_matrix_1.mat4.create(), fontSizeVec3);
256
282
  const rotationMatrix = gl_matrix_1.mat4.create();
257
283
  const translationMatrix = gl_matrix_1.mat4.create();
258
284
  if (tag3dInfo.location.xAxis !== undefined) {
@@ -262,10 +288,10 @@ class Tag3dEngine {
262
288
  // add the justifications to the characters
263
289
  Object.values(characterDictionary).forEach(character => {
264
290
  character.transformations.forEach(transformation => {
265
- // apply the justification translation
266
- gl_matrix_1.mat4.multiply(transformation, transformation, tagJustTranslationMatrix);
267
291
  // apply the scaling matrix
268
292
  gl_matrix_1.mat4.multiply(transformation, transformation, scalingMatrix);
293
+ // apply the justification translation
294
+ gl_matrix_1.mat4.multiply(transformation, transformation, tagJustTranslationMatrix);
269
295
  // apply the global rotation matrix
270
296
  gl_matrix_1.mat4.multiply(transformation, rotationMatrix, transformation);
271
297
  // apply the global translation matrix
@@ -278,12 +304,8 @@ class Tag3dEngine {
278
304
  }
279
305
  exports.Tag3dEngine = Tag3dEngine;
280
306
  Tag3dEngine._fontInfo = {
281
- glb: {
282
- ascii: 'https://viewer.shapediver.com/v3/gltf/tagsAscii.glb',
283
- other: 'https://viewer.shapediver.com/v3/gltf/tagsNonAscii.glb'
284
- },
285
- height: 1467,
286
- width: 833
307
+ ascii: 'https://viewer.shapediver.com/v3/gltf/tagsAsciiSegoeUi.glb',
308
+ other: 'https://viewer.shapediver.com/v3/gltf/tagsNonAsciiSegoeUi.glb'
287
309
  };
288
310
  // #endregion Classes (1)
289
311
  //# sourceMappingURL=Tag3dEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tag3dEngine.js","sourceRoot":"","sources":["../src/Tag3dEngine.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAA0G;AAE1G,iFAA0E;AAE1E,+EAAiG;AACjG,uGAAgF;AAChF,yCAAuC;AAuBvC,8BAA8B;AAE9B,sBAAsB;AAEtB,MAAa,WAAW;IAAxB;QACI,yBAAyB;QAER,YAAO,GAAW,+BAAM,CAAC,QAAQ,CAAC;QAqUnD,iCAAiC;IACrC,CAAC;IAvTG,4BAA4B;IAE5B,gDAAgD;IAEzC,MAAM,KAAK,QAAQ;QACtB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,mDAAmD;IAEnD,oCAAoC;IAE7B,MAAM,CAAC,WAAW,CAAC,QAAkB;QACxC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAClC,CAAC;IAED,uCAAuC;IAEvC,6BAA6B;IAE7B;;;;;OAKG;IACU,WAAW,CAAC,OAAwC;;YAC7D,MAAM,IAAI,GAAG,IAAI,kCAAQ,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAI,CAAC,OAAO;gBACR,MAAM,IAAI,4DAAmC,CAAC,wEAAwE,CAAC,CAAC;YAE5H,IAAI,OAAO,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC/C,2EAA2E;gBAC3E,sDAAsD;gBACtD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACvB,MAAM,cAAc,GAAG,mDAAc,CAAC,QAAQ,CAAC;oBAC/C,WAAW,CAAC,QAAQ,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;wBACpD,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG;wBAC/B,MAAM,EAAE,KAAK;qBAChB,EAAE,yBAAyB,CAAC,CAAC;iBACjC;aACJ;iBAAM;gBACH,wEAAwE;gBACxE,gEAAgE;gBAChE,+EAA+E;gBAC/E,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;oBACxB,MAAM,cAAc,GAAG,mDAAc,CAAC,QAAQ,CAAC;oBAC/C,WAAW,CAAC,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;wBACrD,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK;wBACrC,MAAM,EAAE,KAAK;qBAChB,EAAE,yBAAyB,CAAC,CAAC;iBACjC;aACJ;YAED,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC7C,MAAM,iBAAiB,GAMnB,EAAE,CAAC;gBAEP,MAAM,kBAAkB,GAML,EAAE,CAAC;gBACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC1C,MAAM,SAAS,GAAW,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC3C,IAAI,UAAU;wBAAE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBACvD;gBAED,MAAM,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;oBACxD,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE;wBACnC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;4BAC1B,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;gCACtC,iBAAiB,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;6BAC5C;iCAAM;gCACH,iBAAiB,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC;gCAChF,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;6BACjE;yBACJ;qBACJ;gBACL,CAAC,CAAC,CAAC;gBAEH,MAAM,SAAS,GAAG,IAAI,kCAAQ,CAAC,iBAAiB,CAAC,CAAC;gBAClD,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE;oBACjC,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBAC1E,MAAM,QAAQ,GAAG,IAAI,kCAAQ,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC;oBAC7C,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;oBAEjC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC9B,+CAA+C;wBAC/C,qBAAqB;wBACrB,QAAQ,CAAC,iBAAiB,CAAC;4BACvB,EAAE,EAAE,sBAAsB;4BAC1B,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;yBAC7B,CAAC,CAAC;wBAEH,MAAM,QAAQ,GAAG,IAAI,0CAAoB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC5F,kCAAkC;wBAClC,0FAA0F;wBAC1F,iCAAiC;wBACjC,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE;4BAChC,IAAI,IAAI,YAAY,kCAAY;gCAC5B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;wBACjC,CAAC,CAAC,CAAC;qBACN;yBAAM;wBACH,gDAAgD;wBAChD,uDAAuD;wBACvD,MAAM,YAAY,GAAG,IAAI,kCAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;wBAC/D,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;qBAClC;oBACD,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;iBAChC;gBACD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;aAC5B;iBAAM;gBACH,MAAM,IAAI,4DAAmC,CAAC,sEAAsE,CAAC,CAAC;aACzH;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAED,gCAAgC;IAEhC,8BAA8B;IAE9B;;;;;;;;;OASG;IACW,OAAO,CAAC,SAAiB;;YAOnC,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,QAAS,CAAC,CAAC,CAAC,WAAW,CAAC,SAAU,CAAC;YAC7G,MAAM,QAAQ,GAAG,IAAI,0CAAoB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;YAE5F,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,EAAE,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC5F,OAAO;YAEX,mBAAmB;YACnB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAClD,iCAAiC;YACjC,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5D,MAAM,cAAc,GAAG,WAAW,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC;YAC1D,MAAM,eAAe,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YAErE,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,MAAM,aAAa,GAAG,eAAe,GAAG,iBAAiB,CAAC,MAAM,CAAC;YACjE,IAAI,UAAU,GAAG,CAAC,eAAe,CAAC;YAElC,MAAM,mBAAmB,GAMrB,EAAE,CAAC;YAEP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;gBAC/C,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAEtC,IAAI,SAAS,GAAG,CAAC,CAAC;gBAClB,kCAAkC;gBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;oBACxC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBAE3B,IAAI,aAAa,GAAG,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBACtD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5B,IAAI,OAAO,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,QAAQ,EAAE;4BAC/C,gFAAgF;4BAChF,qCAAqC;4BACrC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;gCAC3B,MAAM,cAAc,GAAG,mDAAc,CAAC,QAAQ,CAAC;gCAC/C,WAAW,CAAC,YAAY,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;oCACxD,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK;oCACrC,MAAM,EAAE,KAAK;iCAChB,EAAE,yBAAyB,CAAC,CAAC;6BACjC;4BAED,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;yBACjE;qBACJ;oBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5B,MAAM,oBAAoB,GAAG,gBAAI,CAAC,eAAe,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,gBAAI,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;wBAE5G,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;4BACzC,iDAAiD;4BACjD,MAAM,aAAa,GAAG,IAAI,kCAAQ,CAAC,IAAI,CAAC,CAAC;4BACzC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gCACtB,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE;oCACpB,IAAI,IAAI,YAAY,kCAAY,EAAE;wCAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;wCAC3B,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;wCAC1B,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;qCAChC;gCACL,CAAC,CAAC,CAAC;4BACP,CAAC,CAAC,CAAC;4BAEH,mBAAmB,CAAC,IAAI,CAAC,GAAG;gCACxB,aAAa;gCACb,eAAe,EAAE,CAAC,oBAAoB,CAAC;gCACvC,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC;6BAC5B,CAAC;yBACL;6BAAM;4BACH,6EAA6E;4BAC7E,mBAAmB,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;4BACrE,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;yBAC1D;qBACJ;yBAAM;wBACH,IAAG,IAAI,KAAK,GAAG;4BACX,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sCAAsC,IAAI,qBAAqB,CAAC,CAAC;qBAC1F;oBAED,SAAS,IAAI,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC;iBAChD;gBAED,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBACjD,UAAU,IAAI,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC;aAClD;YAED,MAAM,kBAAkB,GAAG,gBAAI,CAAC,MAAM,EAAE,CAAC;YAEzC,QAAS,SAAS,CAAC,aAAwB,EAAE;gBACzC,KAAK,IAAI;oBACL,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;oBAC5C,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;oBACtC,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,GAAG,CAAC;oBAC5C,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;oBAC5C,kBAAkB,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,GAAG,CAAC;oBAC5C,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;oBACtC,kBAAkB,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,GAAG,CAAC;oBAC5C,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;oBACtC,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;oBAC5C,kBAAkB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;oBACtC,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;oBACtC,kBAAkB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;oBACtC,MAAM;aACb;YAED,MAAM,wBAAwB,GAAG,gBAAI,CAAC,eAAe,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;YACzF,MAAM,aAAa,GAAG,gBAAI,CAAC,WAAW,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,gBAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YACvH,MAAM,cAAc,GAAG,gBAAI,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,iBAAiB,GAAG,gBAAI,CAAC,MAAM,EAAE,CAAC;YAExC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE;gBACxC,gBAAI,CAAC,GAAG,CAAC,cAAc,EACnB,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EACrF,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EACrF,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EACxF,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CACb,CAAC;gBAEF,gBAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,gBAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACnJ;YAED,2CAA2C;YAC3C,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACnD,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;oBAC/C,sCAAsC;oBACtC,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,wBAAwB,CAAC,CAAC;oBACxE,2BAA2B;oBAC3B,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;oBAC7D,mCAAmC;oBACnC,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;oBAC9D,sCAAsC;oBACtC,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC;gBACrE,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,OAAO,mBAAmB,CAAC;QAC/B,CAAC;KAAA;;AAtUL,kCAyUC;AAnUkB,qBAAS,GAAa;IACjC,GAAG,EAAE;QACD,KAAK,EAAE,qDAAqD;QAC5D,KAAK,EAAE,wDAAwD;KAClE;IACD,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,GAAG;CACb,CAAC;AA8TN,yBAAyB"}
1
+ {"version":3,"file":"Tag3dEngine.js","sourceRoot":"","sources":["../src/Tag3dEngine.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAAsH;AAEtH,iFAA0E;AAE1E,+EAAiG;AACjG,uGAAgF;AAChF,yCAAuC;AAYvC,8BAA8B;AAE9B,sBAAsB;AAEtB,MAAa,WAAW;IAAxB;QACI,yBAAyB;QAER,YAAO,GAAW,+BAAM,CAAC,QAAQ,CAAC;QA0WnD,iCAAiC;IACrC,CAAC;IAhWG,4BAA4B;IAE5B,gDAAgD;IAEzC,MAAM,KAAK,QAAQ;QACtB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,mDAAmD;IAEnD,oCAAoC;IAE7B,MAAM,CAAC,WAAW,CAAC,QAAkB;QACxC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAClC,CAAC;IAED,uCAAuC;IAEvC,6BAA6B;IAE7B;;;;;OAKG;IACU,WAAW,CAAC,OAAwC;;YAC7D,MAAM,IAAI,GAAG,IAAI,kCAAQ,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAI,CAAC,OAAO;gBACR,MAAM,IAAI,4DAAmC,CAAC,wEAAwE,CAAC,CAAC;YAE5H,IAAI,OAAO,WAAW,CAAC,SAAS,KAAK,QAAQ,EAAE;gBAC3C,2EAA2E;gBAC3E,sDAAsD;gBACtD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACvB,MAAM,cAAc,GAAG,mDAAc,CAAC,QAAQ,CAAC;oBAC/C,WAAW,CAAC,QAAQ,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;wBACpD,IAAI,EAAE,WAAW,CAAC,SAAS;wBAC3B,MAAM,EAAE,KAAK;qBAChB,EAAE,yBAAyB,CAAC,CAAC;iBACjC;aACJ;iBAAM;gBACH,wEAAwE;gBACxE,gEAAgE;gBAChE,+EAA+E;gBAC/E,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;oBACxB,MAAM,cAAc,GAAG,mDAAc,CAAC,QAAQ,CAAC;oBAC/C,WAAW,CAAC,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;wBACrD,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,KAAK;wBACjC,MAAM,EAAE,KAAK;qBAChB,EAAE,yBAAyB,CAAC,CAAC;iBACjC;aACJ;YAED,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC7C,MAAM,iBAAiB,GAMnB,EAAE,CAAC;gBAEP,MAAM,kBAAkB,GAML,EAAE,CAAC;gBACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC1C,MAAM,SAAS,GAAW,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC3C,IAAI,UAAU;wBAAE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBACvD;gBAED,MAAM,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;oBACxD,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE;wBACnC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;4BAC1B,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;gCACtC,iBAAiB,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;6BAC5C;iCAAM;gCACH,iBAAiB,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC;gCAChF,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;6BACjE;yBACJ;qBACJ;gBACL,CAAC,CAAC,CAAC;gBAEH,MAAM,SAAS,GAAG,IAAI,kCAAQ,CAAC,iBAAiB,CAAC,CAAC;gBAClD,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE;oBACjC,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBAC1E,MAAM,QAAQ,GAAG,IAAI,kCAAQ,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC;oBAC7C,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;oBAEjC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC9B,+CAA+C;wBAC/C,qBAAqB;wBACrB,QAAQ,CAAC,iBAAiB,CAAC;4BACvB,EAAE,EAAE,sBAAsB;4BAC1B,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;yBAC7B,CAAC,CAAC;wBAEH,MAAM,QAAQ,GAAG,IAAI,0CAAoB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC5F,kCAAkC;wBAClC,0FAA0F;wBAC1F,iCAAiC;wBACjC,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE;4BAChC,IAAI,IAAI,YAAY,kCAAY;gCAC5B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;wBACjC,CAAC,CAAC,CAAC;qBACN;yBAAM;wBACH,gDAAgD;wBAChD,uDAAuD;wBACvD,MAAM,YAAY,GAAG,IAAI,kCAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;wBAC/D,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;qBAClC;oBACD,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;iBAChC;gBACD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;aAC5B;iBAAM;gBACH,MAAM,IAAI,4DAAmC,CAAC,sEAAsE,CAAC,CAAC;aACzH;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAED,gCAAgC;IAEhC,8BAA8B;IAE9B;;;;;;;;;OASG;IACW,OAAO,CAAC,SAAiB;;YAOnC,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,QAAS,CAAC,CAAC,CAAC,WAAW,CAAC,SAAU,CAAC;YACzG,MAAM,QAAQ,GAAG,IAAI,0CAAoB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;YAE5F,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,iEAAiE;YACjE,2CAA2C;YAC3C,MAAM,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;YAEvC,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,EAAE,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC5F,OAAO;YAEX,IAAI,QAAQ,GACZ,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAExK,YAAY,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC/B,IAAI,IAAI,YAAY,gCAAU,EAAE;oBAC5B,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI;wBACb,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;iBACjC;YACL,CAAC,CAAC,CAAC;YAEH,mBAAmB;YACnB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAClD,iCAAiC;YACjC,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5D,MAAM,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;YAE1G,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,MAAM,aAAa,GAAG,eAAe,GAAG,iBAAiB,CAAC,MAAM,CAAC;YACjE,IAAI,UAAU,GAAG,CAAC,CAAC;YAEnB,MAAM,mBAAmB,GAWrB,EAAE,CAAC;YAEP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;gBAC/C,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAEtC,IAAI,SAAS,GAAG,CAAC,CAAC;gBAClB,kCAAkC;gBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;oBACxC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBAE3B,IAAI,aAAa,GAAG,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBACtD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5B,IAAI,OAAO,WAAW,CAAC,SAAS,KAAK,QAAQ,EAAE;4BAC3C,gFAAgF;4BAChF,qCAAqC;4BACrC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;gCAC3B,MAAM,cAAc,GAAG,mDAAc,CAAC,QAAQ,CAAC;gCAC/C,WAAW,CAAC,YAAY,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;oCACxD,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,KAAK;oCACjC,MAAM,EAAE,KAAK;iCAChB,EAAE,yBAAyB,CAAC,CAAC;6BACjC;4BAED,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;yBACjE;qBACJ;oBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5B,MAAM,oBAAoB,GAAG,gBAAI,CAAC,eAAe,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,gBAAI,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;wBAE5G,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;4BACzC,iDAAiD;4BACjD,MAAM,aAAa,GAAG,IAAI,kCAAQ,CAAC,IAAI,CAAC,CAAC;4BACzC,IAAI,SAAS,GAIT,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;4BAClC,aAAa,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE;gCACnC,IAAI,IAAI,YAAY,gCAAU,EAAE;oCAC5B,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;oCAC5B,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;iCACtE;gCAED,IAAI,IAAI,YAAY,kCAAY,EAAE;oCAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;oCAC3B,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;oCAC1B,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iCAChC;4BACL,CAAC,CAAC,CAAC;4BAEH,mBAAmB,CAAC,IAAI,CAAC,GAAG;gCACxB,aAAa;gCACb,eAAe,EAAE,CAAC,oBAAoB,CAAC;gCACvC,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC;gCACzB,SAAS;6BACZ,CAAC;yBACL;6BAAM;4BACH,6EAA6E;4BAC7E,mBAAmB,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;4BACrE,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;4BACvD,SAAS,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;yBAChG;qBACJ;yBAAM;wBACH,IAAG,IAAI,KAAK,GAAG;4BACX,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sCAAsC,IAAI,qBAAqB,CAAC,CAAC;qBAC1F;iBACJ;gBAED,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBACjD,UAAU,IAAI,eAAe,CAAC;aACjC;YAED,MAAM,kBAAkB,GAAG,gBAAI,CAAC,MAAM,EAAE,CAAC;YAEzC,MAAM,+BAA+B,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;YACrG,MAAM,kBAAkB,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;YAEzF,uDAAuD;YACvD,MAAM,kBAAkB,GAAG,GAAG,CAAC;YAC/B,MAAM,cAAc,GAAG,kBAAkB,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAClF,MAAM,GAAG,GAAG,CAAC,aAAa,GAAG,+BAA+B,GAAG,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,cAAc,GAAG,cAAc,CAAC;YAC5J,MAAM,gBAAgB,GAAG,GAAG,CAAC;YAC7B,MAAM,KAAK,GAAG,CAAC,YAAY,GAAG,gBAAgB,GAAG,cAAc,CAAC;YAEhE,QAAS,SAAS,CAAC,aAAwB,EAAE;gBACzC,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;oBAC5B,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC;oBACpC,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;oBAC5B,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;oBAC9B,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;oBAC5B,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;oBAClC,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC;oBACpC,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;oBAClC,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;oBAC9B,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;oBAClC,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC1B,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC;oBACpC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC1B,MAAM;gBACV,KAAK,IAAI;oBACL,kBAAkB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;oBAC9B,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC1B,MAAM;aACb;YAED,MAAM,YAAY,GAAG,gBAAI,CAAC,UAAU,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;YACrF,gBAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;YAClE,MAAM,wBAAwB,GAAG,gBAAI,CAAC,eAAe,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;YACzF,MAAM,aAAa,GAAG,gBAAI,CAAC,WAAW,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;YACpE,MAAM,cAAc,GAAG,gBAAI,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,iBAAiB,GAAG,gBAAI,CAAC,MAAM,EAAE,CAAC;YAExC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE;gBACxC,gBAAI,CAAC,GAAG,CAAC,cAAc,EACnB,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EACrF,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EACrF,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EACxF,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CACb,CAAC;gBAEF,gBAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,gBAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACnJ;YAED,2CAA2C;YAC3C,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACnD,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;oBAC/C,2BAA2B;oBAC3B,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;oBAC7D,sCAAsC;oBACtC,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,wBAAwB,CAAC,CAAC;oBACxE,mCAAmC;oBACnC,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;oBAC9D,sCAAsC;oBACtC,gBAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC;gBACrE,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,OAAO,mBAAmB,CAAC;QAC/B,CAAC;KAAA;;AA3WL,kCA8WC;AAxWkB,qBAAS,GAAa;IACjC,KAAK,EAAE,4DAA4D;IACnE,KAAK,EAAE,+DAA+D;CACzE,CAAC;AAuWN,yBAAyB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapediver/viewer.data-engine.tag3d-engine",
3
- "version": "3.6.0",
3
+ "version": "3.7.1",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "Michael Oppitz <michael@shapediver.com>",
@@ -39,12 +39,12 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@shapediver/sdk.geometry-api-sdk-v2": "1.12.2",
42
- "@shapediver/viewer.data-engine.geometry-engine": "3.6.0",
43
- "@shapediver/viewer.data-engine.shared-types": "3.6.0",
44
- "@shapediver/viewer.shared.global-access-objects": "3.6.0",
45
- "@shapediver/viewer.shared.node-tree": "3.6.0",
46
- "@shapediver/viewer.shared.services": "3.6.0",
47
- "@shapediver/viewer.shared.types": "3.6.0"
42
+ "@shapediver/viewer.data-engine.geometry-engine": "3.7.1",
43
+ "@shapediver/viewer.data-engine.shared-types": "3.7.1",
44
+ "@shapediver/viewer.shared.global-access-objects": "3.7.1",
45
+ "@shapediver/viewer.shared.node-tree": "3.7.1",
46
+ "@shapediver/viewer.shared.services": "3.7.1",
47
+ "@shapediver/viewer.shared.types": "3.7.1"
48
48
  },
49
- "gitHead": "55ab8adc3bb462e58542778431c3cfb01e5fc77c"
49
+ "gitHead": "8bbe1cf6dbde5b0cc23f18a9528df5917dfb5435"
50
50
  }