@shapediver/viewer.data-engine.tag3d-engine 2.10.1-rc.0 → 2.11.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,3 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
1
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -7,20 +31,22 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
32
  });
9
33
  };
10
- import * as THREE from 'three';
11
- import { TreeNode } from '@shapediver/viewer.shared.node-tree';
12
- import { HttpClient, Logger, Converter, StateEngine, ShapeDiverViewerDataProcessingError } from '@shapediver/viewer.shared.services';
13
- import { AttributeData, GeometryData, MaterialStandardData, PrimitiveData, PRIMITIVE_MODE } from '@shapediver/viewer.shared.types';
14
- import { TextGeometry } from './three/geometries/TextGeometry';
15
- import { Font } from './three/loaders/FontLoader';
16
- import { font } from './font';
17
- export class Tag3dEngine {
34
+ Object.defineProperty(exports, "__esModule", { value: true });
35
+ exports.Tag3dEngine = void 0;
36
+ const THREE = __importStar(require("three"));
37
+ const viewer_shared_node_tree_1 = require("@shapediver/viewer.shared.node-tree");
38
+ const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
39
+ const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
40
+ const TextGeometry_1 = require("./three/geometries/TextGeometry");
41
+ const FontLoader_1 = require("./three/loaders/FontLoader");
42
+ const font_1 = require("./font");
43
+ class Tag3dEngine {
18
44
  constructor() {
19
45
  // #region Properties (6)
20
- this._converter = Converter.instance;
21
- this._httpClient = HttpClient.instance;
22
- this._logger = Logger.instance;
23
- this._stateEngine = StateEngine.instance;
46
+ this._converter = viewer_shared_services_1.Converter.instance;
47
+ this._httpClient = viewer_shared_services_1.HttpClient.instance;
48
+ this._logger = viewer_shared_services_1.Logger.instance;
49
+ this._stateEngine = viewer_shared_services_1.StateEngine.instance;
24
50
  // #endregion Public Methods (1)
25
51
  }
26
52
  // #endregion Properties (6)
@@ -39,14 +65,14 @@ export class Tag3dEngine {
39
65
  loadContent(content) {
40
66
  return __awaiter(this, void 0, void 0, function* () {
41
67
  if (!this._font) {
42
- this._font = new Font(font);
68
+ this._font = new FontLoader_1.Font(font_1.font);
43
69
  this._stateEngine.fontLoaded.resolve(true);
44
70
  }
45
- const node = new TreeNode('tag3d');
71
+ const node = new viewer_shared_node_tree_1.TreeNode('tag3d');
46
72
  if (this._stateEngine.fontLoaded.resolved === false)
47
73
  yield this._stateEngine.fontLoaded;
48
74
  if (!content)
49
- throw new ShapeDiverViewerDataProcessingError('Tag3dEngine.loadContent: Invalid content was provided to tag3d engine.');
75
+ throw new viewer_shared_services_1.ShapeDiverViewerDataProcessingError('Tag3dEngine.loadContent: Invalid content was provided to tag3d engine.');
50
76
  if (content.data && Array.isArray(content.data)) {
51
77
  for (let i = 0; i < content.data.length; i++) {
52
78
  const tag3dInfo = content.data[i];
@@ -58,7 +84,7 @@ export class Tag3dEngine {
58
84
  if (tagLines[lineIndex] === '')
59
85
  continue;
60
86
  // create tag mesh object
61
- let tag = new TextGeometry(tagLines[lineIndex], { size: tag3dInfo.size, height: tag3dInfo.size / 10, font: this._font });
87
+ let tag = new TextGeometry_1.TextGeometry(tagLines[lineIndex], { size: tag3dInfo.size, height: tag3dInfo.size / 10, font: this._font });
62
88
  lineArray.push(tag);
63
89
  }
64
90
  // create temporary object
@@ -143,19 +169,20 @@ export class Tag3dEngine {
143
169
  else if (attributeName === 'UV') {
144
170
  attributeName = 'TEXCOORD_0';
145
171
  }
146
- attributes[attributeName] = new AttributeData(line.attributes[attribute].array, line.attributes[attribute].itemSize, 0, 0, 0, false, line.attributes[attribute].array.length / line.attributes[attribute].itemSize);
172
+ attributes[attributeName] = new viewer_shared_types_1.AttributeData(line.attributes[attribute].array, line.attributes[attribute].itemSize, 0, 0, 0, false, line.attributes[attribute].array.length / line.attributes[attribute].itemSize);
147
173
  }
148
- const child = new TreeNode('tag3d_' + line);
149
- child.data.push(new GeometryData(new PrimitiveData(attributes, null), PRIMITIVE_MODE.TRIANGLES, new MaterialStandardData({ color: tag3dInfo.color, metalness: 0, roughness: 1 })));
174
+ const child = new viewer_shared_node_tree_1.TreeNode('tag3d_' + line);
175
+ child.data.push(new viewer_shared_types_1.GeometryData(new viewer_shared_types_1.PrimitiveData(attributes, null), viewer_shared_types_1.PRIMITIVE_MODE.TRIANGLES, new viewer_shared_types_1.MaterialStandardData({ color: tag3dInfo.color, metalness: 0, roughness: 1 })));
150
176
  node.children.push(child);
151
177
  }
152
178
  }
153
179
  }
154
180
  else {
155
- throw new ShapeDiverViewerDataProcessingError('Tag3dEngine.loadContent: No tag3d data was provided to tag3d engine.');
181
+ throw new viewer_shared_services_1.ShapeDiverViewerDataProcessingError('Tag3dEngine.loadContent: No tag3d data was provided to tag3d engine.');
156
182
  }
157
183
  return node;
158
184
  });
159
185
  }
160
186
  }
187
+ exports.Tag3dEngine = Tag3dEngine;
161
188
  //# sourceMappingURL=Tag3dEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tag3dEngine.js","sourceRoot":"","sources":["../src/Tag3dEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tag3dEngine.js","sourceRoot":"","sources":["../src/Tag3dEngine.ts"],"names":[],"mappings":"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"}