fcs-core-viewer 0.11.1 → 0.12.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.
Files changed (59) hide show
  1. package/fcs-core-viewer@types/Api.d.ts +1 -0
  2. package/fcs-core-viewer@types/BackendEvents/BackendEvents.d.ts +2 -2
  3. package/fcs-core-viewer@types/CloudViewer/FcsViewer.d.ts +6 -1
  4. package/fcs-core-viewer@types/CloudViewer/Settings/StyleSettings.d.ts +8 -1
  5. package/fcs-core-viewer@types/Common/StatusBar/StatusBar.d.ts +1 -0
  6. package/fcs-core-viewer@types/DataStorage/Index.d.ts +5 -0
  7. package/fcs-core-viewer@types/DataStorage/ModelData.d.ts +181 -188
  8. package/fcs-core-viewer@types/DataStorage/ViewerData.d.ts +59 -0
  9. package/fcs-core-viewer@types/FrontendEvents/SidebarEvents.d.ts +1 -0
  10. package/fcs-core-viewer@types/Loader/GEOMLoader/EdgeLoader.d.ts +4 -2
  11. package/fcs-core-viewer@types/Loader/GEOMLoader/FaceLoader.d.ts +3 -1
  12. package/fcs-core-viewer@types/Loader/GEOMLoader/GeomLoader.d.ts +6 -4
  13. package/fcs-core-viewer@types/Loader/GEOMLoader/ShellLoader.d.ts +8 -0
  14. package/fcs-core-viewer@types/Loader/GEOMLoader/VertexLoader.d.ts +3 -1
  15. package/fcs-core-viewer@types/Loader/GEOMLoader/WireLoader.d.ts +9 -0
  16. package/fcs-core-viewer@types/Loader/Loader.d.ts +1 -18
  17. package/fcs-core-viewer@types/Loader/STEPLoader/EdgeLoader.d.ts +0 -44
  18. package/fcs-core-viewer@types/Loader/STEPLoader/FaceLoader.d.ts +0 -66
  19. package/fcs-core-viewer@types/SelectionTools/SelectionMethods/UnselectionMethods.d.ts +1 -1
  20. package/fcs-core-viewer@types/StyleHandler/MainMenuStyle.d.ts +1 -1
  21. package/fcs-core-viewer@types/TaskHandler/Appearance/Request/Visibility.d.ts +1 -0
  22. package/fcs-core-viewer@types/TaskHandler/OperationCollection.d.ts +6 -2
  23. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Request/TranslateDXDYDZ.d.ts +3 -0
  24. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Request/TranslateDXDYDZDistance.d.ts +0 -0
  25. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Request/TranslateTwoPoints.d.ts +3 -0
  26. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Request/TranslateTwoPointsDistance.d.ts +0 -0
  27. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Request/TranslateVector.d.ts +0 -0
  28. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Request/TranslateVectorDistance.d.ts +0 -0
  29. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Response/TranslateDXDYDZ.d.ts +10 -0
  30. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Response/TranslateDXDYDZDistance.d.ts +0 -0
  31. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Response/TranslateTwoPoints.d.ts +3 -0
  32. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Response/TranslateTwoPointsDistance.d.ts +0 -0
  33. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Response/TranslateVector.d.ts +0 -0
  34. package/fcs-core-viewer@types/TaskHandler/TransformationTools/Translate/Response/TranslateVectorDistance.d.ts +0 -0
  35. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/MainMenuComponents/OperationUI.d.ts +0 -1
  36. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/MainMenuComponents/OperationsPanel.d.ts +5 -1
  37. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/MainMenuComponents/ToolsetPanel.d.ts +11 -1
  38. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/OperationPanelComponents/DropdownList.d.ts +2 -3
  39. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/OperationPanelComponents/FileBrowser.d.ts +26 -0
  40. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/OperationPanelComponents/InputField.d.ts +3 -2
  41. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/OperationPanelComponents/Label.d.ts +1 -0
  42. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/BuildingBlocks/OperationPanelComponents/LabeledInputField.d.ts +1 -0
  43. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/MainMenu.d.ts +0 -8
  44. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/Operations/Custom/CustomOperation.d.ts +27 -0
  45. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/Toolboxes/CADToolbox.d.ts +4 -4
  46. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/Toolboxes/CAEToolbox.d.ts +4 -4
  47. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/Toolboxes/CustomToolbox.d.ts +15 -0
  48. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/Toolboxes/ToolboxBuilder.d.ts +3 -2
  49. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/UserInterfaces/IBaseToolbox.d.ts +4 -0
  50. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/UserInterfaces/IButtonGroup.d.ts +5 -0
  51. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/UserInterfaces/ICustomToolbox.d.ts +7 -0
  52. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/UserInterfaces/IMethod.d.ts +21 -0
  53. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/UserInterfaces/IMethodGroup.d.ts +9 -0
  54. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/UserInterfaces/IOperationsPanel.d.ts +2 -0
  55. package/fcs-core-viewer@types/UserInterface/UiApi_deprecated/PluginExample/Plugin.d.ts +0 -1
  56. package/fcs-core-viewer@types/Workspace/StyleHandler.d.ts +17 -0
  57. package/fcs-core-viewer@types/Workspace/ViewerWrapper.d.ts +0 -6
  58. package/package.json +1 -1
  59. package/fcs-core-viewer@types/UserInterface/UIComponents/MainMenu/Toolboxes/BaseToolbox.d.ts +0 -3
@@ -6,6 +6,7 @@ export * from './Foundations/Index';
6
6
  export * from './ViewerEntities/Index';
7
7
  export * from './CloudViewer/Settings/Index';
8
8
  export * from './Model/Index';
9
+ export * from './DataStorage/Index';
9
10
  export * from './CloudViewer/Index';
10
11
  export * from './Common/Index';
11
12
  export * from './UserInterface/UIComponents/Index';
@@ -61,7 +61,7 @@ export declare class BackendEvents implements IBackendEvents {
61
61
  show_progress_tracker: any;
62
62
  finish_progress_tracker: any;
63
63
  show_status_message: any;
64
- translate_two_points: any;
64
+ translate_by_dxdydz: any;
65
65
  measure_distance: any;
66
66
  WhatIs: any;
67
67
  hide: any;
@@ -198,7 +198,7 @@ export declare class BackendEvents implements IBackendEvents {
198
198
  * @param instructions Contains exported STEP file path
199
199
  */
200
200
  private export_STEP_for_selection;
201
- translate_two_points(data: BackendInstructions): Promise<TaskExecutionResponse>;
201
+ translate_by_vector_xyz(data: BackendInstructions): Promise<TaskExecutionResponse>;
202
202
  measure_distance(data: BackendInstructions): Promise<TaskExecutionResponse>;
203
203
  WhatIs(data: BackendInstructions): Promise<TaskExecutionResponse>;
204
204
  }
@@ -144,7 +144,12 @@ export declare namespace CloudViewer {
144
144
  * Get all selected items
145
145
  * Ha nyomjuk a shif-et, a .selected benne marad a tree-ben es kijelolve marad a segment.
146
146
  */
147
- getCurrentlySelectedItems(): NodeListOf<Element>;
147
+ getCurrentlySelectedItems(): any[];
148
+ /**
149
+ *
150
+ * @param itemUID
151
+ */
152
+ getItemNameById(itemUID: number): any;
148
153
  /**
149
154
  * Private implementation of selection highlight color overried.
150
155
  * @param color
@@ -19,7 +19,14 @@ export declare namespace StyleSettings {
19
19
  /**
20
20
  * All widgets to access operations enabled.
21
21
  */
22
- CLOUD_CAE = 2
22
+ CLOUD_CAE = 2,
23
+ /**
24
+ * Any added additional toolboxes beside CAD and CAE toolbox,
25
+ * will only be visible. If there is just one added toolbox
26
+ * then the toolbox panel is also hidden, if there is more then
27
+ * the side panel is visible.
28
+ */
29
+ PLUGINS_ONLY = 3
23
30
  }
24
31
  /**
25
32
  * Style settings customize the viewer so that it changes
@@ -45,6 +45,7 @@ export declare class StatusBar {
45
45
  private messageAndSvgContainer;
46
46
  private label_status;
47
47
  private isClosed;
48
+ private renderingsCount;
48
49
  /**
49
50
  * If set to true, whenever
50
51
  */
@@ -0,0 +1,5 @@
1
+ import * as ModelData from './ModelData';
2
+ declare const DataStorage: {
3
+ ModelData: typeof ModelData.ModelData;
4
+ };
5
+ export { DataStorage };
@@ -74,6 +74,7 @@ export declare namespace ModelData {
74
74
  controls: THREE.TrackballControls;
75
75
  constructor(sceneWrapper: SceneWrapper);
76
76
  static getInstance(): MeshContainer;
77
+ updatePositionAttribute(): void;
77
78
  updateIsSelectedAttribute(): void;
78
79
  updateColorAttribute(): void;
79
80
  updateVisibilityAttribute(): void;
@@ -100,6 +101,7 @@ export declare namespace ModelData {
100
101
  controls: THREE.TrackballControls;
101
102
  constructor(sceneWrapper: SceneWrapper);
102
103
  static getInstance(): LineContainer;
104
+ updatePositionAttribute(): void;
103
105
  updateIsSelectedAttribute(): void;
104
106
  updateColorAttribute(): void;
105
107
  updateVisibilityAttribute(): void;
@@ -121,6 +123,7 @@ export declare namespace ModelData {
121
123
  controls: THREE.TrackballControls;
122
124
  constructor(sceneWrapper: SceneWrapper);
123
125
  static getInstance(): PointContainer;
126
+ updatePositionAttribute(): void;
124
127
  updateColorAttribute(): void;
125
128
  updateVisibilityAttribute(): void;
126
129
  createContainer(): any;
@@ -143,10 +146,31 @@ export declare namespace ModelData {
143
146
  */
144
147
  function generateVID(IDs_used: number[], IDs_unused: number[]): number;
145
148
  }
146
- namespace SubShapes {
147
- class SubShape {
149
+ namespace SubShapes { }
150
+ namespace Shapes {
151
+ class Shape {
152
+ private static shapeIDs_used;
153
+ private static shapeIDs_unused;
154
+ boundingBox: THREE.Box3;
155
+ subShapes: {
156
+ faces: {};
157
+ edges: {};
158
+ vertices: {};
159
+ };
160
+ shapeUIDs: number[];
161
+ shapeVID: number;
162
+ parentShapeVID: number;
163
+ itemUID: number;
164
+ constructor(shapeUID: number);
165
+ private createVID;
166
+ /**
167
+ * Create oriented bounding box from array of vertex XYZ coordinates
168
+ * @param position
169
+ * @returns
170
+ */
171
+ createBoundingBox(position: number[]): any;
148
172
  }
149
- export class Face extends SubShape {
173
+ export class TopoFace extends Shape {
150
174
  static title: string;
151
175
  type: ModelData.dataTypes;
152
176
  itemVID: number;
@@ -158,8 +182,9 @@ export declare namespace ModelData {
158
182
  verticesCount: number;
159
183
  polygonsXYZ: number[];
160
184
  polygonVertexIndices: number[];
185
+ avgNodeXYZ: number[];
161
186
  provokingVertexIndices: number[];
162
- edges: Edge[];
187
+ edges: any[];
163
188
  baseColor: number[];
164
189
  baseOpacity: number;
165
190
  isVisible: number;
@@ -172,10 +197,16 @@ export declare namespace ModelData {
172
197
  lengthNormal: number;
173
198
  lengthColor: number;
174
199
  lengthVisibility: number;
175
- constructor(itemVID: number, itemUID: number, shapeVID: number, shapeUID: number, faceUID: number, /*verticesCount: number,*/ polygonsXYZ: number[], polygonVertexIndices: number[], provokingVertexIndices: number[]);
176
- private createVID;
200
+ constructor(shapeUID: number);
201
+ private createFaceVID;
202
+ translate(dx: number, dy: number, dz: number, translatedEdges?: {}, translatedVertices?: {}): {
203
+ translatedEdges: {};
204
+ translatedVertices: {};
205
+ };
206
+ getPositionArray(): number[];
177
207
  select(): void;
178
208
  unselect(): void;
209
+ static boxcaster(event: MouseEvent, startPoint: THREE.Vector3, endPoint: THREE.Vector3): any[];
179
210
  static raycaster(event: MouseEvent): any[];
180
211
  /**
181
212
  * Csak a szinet valtoztatja ha kijeloljuk.
@@ -190,29 +221,7 @@ export declare namespace ModelData {
190
221
  hide(): void;
191
222
  show(): void;
192
223
  }
193
- export class Border {
194
- static title: string;
195
- hash: string;
196
- segmentsXYZ: number[];
197
- provokingVertexIndices: number[];
198
- elements: Element[];
199
- nodes: Node[];
200
- baseColor: number[];
201
- lineWidth: number;
202
- isVisible: number;
203
- byteOffsetPosition: number;
204
- byteOffsetColor: number;
205
- byteOffsetWidth: number;
206
- byteOffsetVisibility: number;
207
- lengthPosition: number;
208
- lengthColor: number;
209
- lengthWidth: number;
210
- lengthVisibility: number;
211
- constructor(hash: string, segmentsXYZ: number[], elements: Element[]);
212
- hide(): void;
213
- show(): void;
214
- }
215
- export class Edge {
224
+ export class TopoEdge extends Shape {
216
225
  static title: string;
217
226
  type: ModelData.dataTypes;
218
227
  itemVID: number;
@@ -220,9 +229,10 @@ export declare namespace ModelData {
220
229
  objectVID: number;
221
230
  objectUIDs: number[];
222
231
  segmentsXYZ: number[];
232
+ avgNodeXYZ: number[];
223
233
  count: number;
224
- faces: Face[];
225
- vertices: Vertex[];
234
+ faces: TopoFace[];
235
+ vertices: any[];
226
236
  elements: Element[];
227
237
  nodes: Node[];
228
238
  provokingVertexIndices: number[];
@@ -230,18 +240,12 @@ export declare namespace ModelData {
230
240
  lineWidth: number;
231
241
  isVisible: number;
232
242
  isSelected: boolean;
233
- byteOffsetPosition: number;
234
- byteOffsetColor: number;
235
- byteOffsetWidth: number;
236
- byteOffsetVisibility: number;
237
- lengthPosition: number;
238
- lengthColor: number;
239
- lengthWidth: number;
240
- lengthVisibility: number;
241
- constructor(itemVID: number, shapeVID: number, edgeUID: number, segmentsXYZ: number[], count: number, faces: Face[], provokingVertexIndices: number[]);
242
- private createVID;
243
+ constructor(shapeUID: number);
244
+ private createEdgeVID;
245
+ translate(dx: number, dy: number, dz: number, translatedVertices?: {}): {};
243
246
  select(): void;
244
247
  unselect(): void;
248
+ static boxcaster(event: MouseEvent, startPoint: THREE.Vector3, endPoint: THREE.Vector3): any[];
245
249
  static raycaster(event: MouseEvent): any[];
246
250
  /**
247
251
  * Csak a szinet valtoztatja ha kijeloljuk.
@@ -255,30 +259,24 @@ export declare namespace ModelData {
255
259
  hide(): void;
256
260
  show(): void;
257
261
  }
258
- export class Vertex {
262
+ export class TopoVertex extends Shape {
259
263
  static title: string;
260
264
  type: ModelData.dataTypes;
261
265
  itemVID: number;
262
- shapeVID: number;
263
266
  objectVID: number;
264
267
  objectUIDs: number[];
265
268
  positionXYZ: number[];
266
269
  avgNodeXYZ: number[];
267
270
  vertexIndex: number;
268
271
  count: number;
269
- edges: Edge[];
270
- faces: Face[];
272
+ edges: TopoEdge[];
273
+ faces: TopoFace[];
271
274
  baseColor: number;
272
275
  isVisible: number;
273
276
  isSelected: boolean;
274
- byteOffsetPosition: number;
275
- byteOffsetTextureID: number;
276
- byteOffsetVisibility: number;
277
- lengthPosition: number;
278
- lengthTextureID: number;
279
- lengthVisibility: number;
280
- constructor(itemVID: number, shapeVID: number, vertexUID: number, positionXYZ: number[], vertexIndex: number, edges?: Edge[], faces?: Face[]);
281
- private createVID;
277
+ constructor(shapeUID: number);
278
+ private createVertexVID;
279
+ translate(dx: number, dy: number, dz: number): void;
282
280
  select(): void;
283
281
  unselect(): void;
284
282
  static boxcaster(event: MouseEvent, startPoint: THREE.Vector3, endPoint: THREE.Vector3): any[];
@@ -295,31 +293,30 @@ export declare namespace ModelData {
295
293
  hide(): void;
296
294
  show(): void;
297
295
  }
298
- export class Element {
296
+ /**
297
+ * A discrete element (olyan, mint a TopoFace)
298
+ */
299
+ /**
300
+ * Free node (olyan, mint a TopoPoint)
301
+ */
302
+ export class TopoNode extends Shape {
299
303
  static title: string;
300
304
  type: ModelData.dataTypes;
301
305
  itemVID: number;
302
- itemUID: number;
303
306
  shapeVID: number;
304
- shapeUID: number;
305
307
  objectVID: number;
306
308
  objectUIDs: number[];
307
- startIndex: number;
308
- provokingVertexIndex: number;
309
- triaVertexIndices: number[];
310
- polygonsXYZ: number[];
311
- polygonsCount: number;
312
- nodesCount: number;
309
+ positionXYZ: number[];
313
310
  avgNodeXYZ: number[];
314
- borders: Border[];
315
- nodes: Node[];
316
- edges: Edge[];
317
- baseColor: number[];
318
- baseOpacity: number;
311
+ count: number;
312
+ borders: TopoBorder[];
313
+ elements: TopoElement[];
314
+ baseColor: number;
315
+ nodeIndex: number;
319
316
  isVisible: number;
320
317
  isSelected: boolean;
321
- constructor(itemVID: number, itemUID: number, shapeVID: number, shapeUID: number, elementUID: number, polygonsXYZ: number[], avgNodeXYZ: number[], startIndex: number, provokingVertexIndex?: number, triaVertexIndices?: number[]);
322
- private createVID;
318
+ constructor(shapeUID: number);
319
+ private createNodeVID;
323
320
  select(): void;
324
321
  unselect(): void;
325
322
  static boxcaster(event: MouseEvent, startPoint: THREE.Vector3, endPoint: THREE.Vector3): any[];
@@ -331,57 +328,49 @@ export declare namespace ModelData {
331
328
  highlight(): void;
332
329
  unhighlight(): void;
333
330
  setColor(colorData: any[]): void;
334
- setOpacity(alpha: number): void;
335
- setBaseOpacity(alpha: number): void;
336
- addToScene(): void;
331
+ setOpacity(): void;
332
+ setBaseOpacity(): void;
337
333
  hide(): void;
338
334
  show(): void;
339
335
  }
340
- export class Tria_3N extends Element {
341
- static title: string;
342
- constructor(itemVID: number, itemUID: number, shapeVID: number, shapeUID: number, elementUID: number, polygonsXYZ: number[], avgNodeXYZ: number[], startIndex: number, iNodes: ModelData.SubShapes.Node[], provokingVertexIndex: number, triaVertexIndices: number[]);
343
- /**
344
- * Az .msh file-ból kigyujti a nodeUID-kat es a hozza tartozo xyt koordinatakat
345
- */
346
- static extractNodes(strNodeUID: string, strNodeXYZ: string): (number | number[])[];
347
- /**
348
- * Az. msh filebol kigyujti az elemet alkoto node-ok xyz koordinatait es adott elemre specifikus logikaval
349
- * osszekoti a node-okat haromszogekke, mintha STL lenne. Ez a megjelenites miatt fontos, hiszen a three.js
350
- * háromszogeket tud megjeleniteni
351
- */
352
- static extractElement(nodeUIDs: number[], nodesIdx: number[], nodesXYZ: number[], nodeUID_To_coords: {}, nodeUID_To_index: {}): number[][];
353
- drawBorder(iElement: Element, iNodes: Node[], nodeUIDs: number[], nodeUID_To_coords: {}, hash_To_iBorder: {}): void;
354
- }
355
- export class Tria_6N extends Element {
356
- static title: string;
357
- }
358
- export class Quad_4N extends Element {
359
- static title: string;
360
- }
361
- export class Quad_8N extends Element {
362
- static title: string;
363
- }
364
- export class Quad_9N extends Element {
336
+ export class TopoBorder {
365
337
  static title: string;
338
+ hash: string;
339
+ segmentsXYZ: number[];
340
+ provokingVertexIndices: number[];
341
+ elements: TopoElement[];
342
+ nodes: TopoNode[];
343
+ baseColor: number[];
344
+ lineWidth: number;
345
+ isVisible: number;
346
+ constructor(hash: string, segmentsXYZ: number[], elements: TopoElement[]);
347
+ hide(): void;
348
+ show(): void;
366
349
  }
367
- export class Node {
350
+ export class TopoElement extends Shape {
368
351
  static title: string;
369
352
  type: ModelData.dataTypes;
370
353
  itemVID: number;
354
+ itemUID: number;
371
355
  shapeVID: number;
356
+ shapeUID: number;
372
357
  objectVID: number;
373
358
  objectUIDs: number[];
374
- positionXYZ: number[];
359
+ startIndex: number;
360
+ provokingVertexIndex: number;
361
+ triaVertexIndices: number[];
362
+ polygonsXYZ: number[];
363
+ polygonsCount: number;
364
+ nodesCount: number;
375
365
  avgNodeXYZ: number[];
376
- count: number;
377
- borders: Border[];
378
- elements: Element[];
379
- baseColor: number;
380
- nodeIndex: number;
366
+ borders: TopoBorder[];
367
+ nodes: TopoNode[];
368
+ baseColor: number[];
369
+ baseOpacity: number;
381
370
  isVisible: number;
382
371
  isSelected: boolean;
383
- constructor(itemVID: number, shapeVID: number, nodeUID: number, positionXYZ: number[], nodeIndex?: number);
384
- private createVID;
372
+ constructor(shapeUID: number);
373
+ private createElementVID;
385
374
  select(): void;
386
375
  unselect(): void;
387
376
  static boxcaster(event: MouseEvent, startPoint: THREE.Vector3, endPoint: THREE.Vector3): any[];
@@ -393,63 +382,63 @@ export declare namespace ModelData {
393
382
  highlight(): void;
394
383
  unhighlight(): void;
395
384
  setColor(colorData: any[]): void;
396
- setOpacity(): void;
397
- setBaseOpacity(): void;
385
+ setOpacity(alpha: number): void;
386
+ setBaseOpacity(alpha: number): void;
398
387
  hide(): void;
399
388
  show(): void;
400
389
  }
401
- export {};
402
- }
403
- namespace Shapes {
404
- class Shape {
405
- private static shapeIDs_used;
406
- private static shapeIDs_unused;
407
- boundingBox: THREE.Box3;
408
- subShapes: {
409
- faces: {};
410
- edges: {};
411
- vertices: {};
412
- };
413
- shapeUIDs: number[];
414
- shapeVID: number;
415
- itemUID: number;
390
+ export class Tria_3N extends TopoElement {
391
+ static title: string;
392
+ iNodes: ModelData.Shapes.TopoNode[];
416
393
  constructor(shapeUID: number);
417
- private createVID;
418
394
  /**
419
- * Create oriented bounding box from array of vertex XYZ coordinates
420
- * @param position
421
- * @returns
395
+ * Az. msh filebol kigyujti az elemet alkoto node-ok xyz koordinatait es adott elemre specifikus logikaval
396
+ * osszekoti a node-okat haromszogekke, mintha STL lenne. Ez a megjelenites miatt fontos, hiszen a three.js
397
+ * háromszogeket tud megjeleniteni
422
398
  */
423
- createBoundingBox(position: number[]): any;
399
+ static extractElement(nodeUIDs: number[], nodesIdx: number[], nodesXYZ: number[], nodeUID_To_coords: {}, nodeUID_To_index: {}): number[][];
400
+ drawBorder(iElement: TopoElement, iNodes: TopoNode[], nodeUIDs: number[], nodeUID_To_coords: {}, hash_To_iBorder: {}): void;
424
401
  }
425
- export class TopoFace extends Shape {
402
+ export class Tria_6N extends TopoElement {
426
403
  static title: string;
427
- constructor(shapeUID: number);
428
- setColor(r: number, g: number, b: number, alpha: number): void;
429
- setOpacity(): void;
430
- setVisibility(): void;
431
- remove(): void;
432
404
  }
433
- export class TopoEdge extends Shape {
405
+ export class Quad_4N extends TopoElement {
434
406
  static title: string;
407
+ iNodes: ModelData.Shapes.TopoNode[];
435
408
  constructor(shapeUID: number);
436
- setColor(r: number, g: number, b: number, alpha: number): void;
437
- setOpacity(): void;
438
- setVisibility(): void;
439
- remove(): void;
409
+ /**
410
+ * Az. msh filebol kigyujti az elemet alkoto node-ok xyz koordinatait es adott elemre specifikus logikaval
411
+ * osszekoti a node-okat haromszogekke, mintha STL lenne. Ez a megjelenites miatt fontos, hiszen a three.js
412
+ * háromszogeket tud megjeleniteni
413
+ */
414
+ static extractElement(nodeUIDs: number[], nodesIdx: number[], nodesXYZ: number[], nodeUID_To_coords: {}, nodeUID_To_index: {}): number[][];
415
+ drawBorder(iElement: TopoElement, iNodes: TopoNode[], nodeUIDs: number[], nodeUID_To_coords: {}, hash_To_iBorder: {}): void;
440
416
  }
441
- export class TopoVertex extends Shape {
417
+ export class Quad_8N extends TopoElement {
418
+ static title: string;
419
+ }
420
+ export class Quad_9N extends TopoElement {
442
421
  static title: string;
443
- constructor(shapeUID: number);
444
- setColor(r: number, g: number, b: number, alpha: number): void;
445
- setOpacity(): void;
446
- setVisibility(): void;
447
- remove(): void;
448
422
  }
449
423
  export class TopoWire extends Shape {
450
424
  static title: string;
451
425
  constructor(shapeUID: number);
452
- setColor(r: number, g: number, b: number, alpha: number): void;
426
+ /**
427
+ * Set base color of the shape
428
+ * It changes the base color of the TopoEdges
429
+ * @param colorData
430
+ */
431
+ setColor(colorData: any[]): void;
432
+ highlight(): void;
433
+ select(): void;
434
+ /**
435
+ * Hide all subShapes
436
+ */
437
+ hide(): void;
438
+ /**
439
+ * Show all subShapes
440
+ */
441
+ show(): void;
453
442
  setOpacity(): void;
454
443
  setVisibility(): void;
455
444
  remove(): void;
@@ -458,9 +447,8 @@ export declare namespace ModelData {
458
447
  static title: string;
459
448
  constructor(shapeUID: number);
460
449
  /**
461
- * Csak arra hasznaljuk, ha atszinezzuk a shell-t. kijelolsre ne hasznaljuk
462
- * Itt meghivjuk a setBaseColor-t is.
463
- * Ha Highlight-olni szeretnenk a shell-t, akkor a setBaseColor-t ne hivjuk meg.
450
+ * Set base color of the shape
451
+ * It changes the base color of the TopoFaces
464
452
  * @param colorData
465
453
  */
466
454
  setColor(colorData: any[]): void;
@@ -470,7 +458,18 @@ export declare namespace ModelData {
470
458
  * @param colorData
471
459
  */
472
460
  highlight(): void;
461
+ /**
462
+ * Select all TopoFaces of the TopoShell
463
+ */
473
464
  select(): void;
465
+ /**
466
+ * Hide all subShapes
467
+ */
468
+ hide(): void;
469
+ /**
470
+ * Show all subShapes
471
+ */
472
+ show(): void;
474
473
  setOpacity(): void;
475
474
  setVisibility(): void;
476
475
  remove(): void;
@@ -478,6 +477,11 @@ export declare namespace ModelData {
478
477
  export class TopoSolid extends Shape {
479
478
  static title: string;
480
479
  constructor(shapeUID: number);
480
+ /**
481
+ * Set base color of the shape
482
+ * It changes the base color of the TopoFaces
483
+ * @param colorData
484
+ */
481
485
  setColor(colorData: any[]): void;
482
486
  /**
483
487
  * Olyan mint a setColor, de a baseColor-t nem valtoztatja.
@@ -485,29 +489,18 @@ export declare namespace ModelData {
485
489
  * @param colorData
486
490
  */
487
491
  highlight(): void;
492
+ /**
493
+ * Select all TopoFaces of the TopoShell
494
+ */
488
495
  select(): void;
489
- setOpacity(): void;
490
- setVisibility(): void;
491
- remove(): void;
492
- }
493
- /**
494
- * A discrete element (olyan, mint a TopoFace)
495
- */
496
- export class TopoElement extends Shape {
497
- static title: string;
498
- constructor(shapeUID: number);
499
- setColor(r: number, g: number, b: number, alpha: number): void;
500
- setOpacity(): void;
501
- setVisibility(): void;
502
- remove(): void;
503
- }
504
- /**
505
- * Free node (olyan, mint a TopoPoint)
506
- */
507
- export class TopoNode extends Shape {
508
- static title: string;
509
- constructor(shapeUID: number);
510
- setColor(r: number, g: number, b: number, alpha: number): void;
496
+ /**
497
+ * Hide all subShapes
498
+ */
499
+ hide(): void;
500
+ /**
501
+ * Show all subShapes
502
+ */
503
+ show(): void;
511
504
  setOpacity(): void;
512
505
  setVisibility(): void;
513
506
  remove(): void;
@@ -534,6 +527,14 @@ export declare namespace ModelData {
534
527
  */
535
528
  highlight(): void;
536
529
  select(): void;
530
+ /**
531
+ * Hide all subShapes
532
+ */
533
+ hide(): void;
534
+ /**
535
+ * Show all subShapes
536
+ */
537
+ show(): void;
537
538
  remove(): void;
538
539
  }
539
540
  export {};
@@ -551,6 +552,10 @@ export declare namespace ModelData {
551
552
  shapeVIDs: number[];
552
553
  shapeUIDs: number[];
553
554
  constructor(data: {});
555
+ /**
556
+ * Translate the shapes contained in this item
557
+ */
558
+ translate(dx: number, dy: number, dz: number): void;
554
559
  remove(): void;
555
560
  private removeShapesFromDatabase;
556
561
  private addToTreeJSON;
@@ -706,11 +711,6 @@ export declare namespace ModelData {
706
711
  namespace Elements {
707
712
  }
708
713
  enum dataTypes {
709
- Vertex = 0,
710
- Edge = 1,
711
- Face = 2,
712
- Node = 3,
713
- Element = 4,
714
714
  TopoFace = 5,
715
715
  TopoEdge = 6,
716
716
  TopoVertex = 7,
@@ -762,20 +762,13 @@ export declare namespace ModelData {
762
762
  Second = 1
763
763
  }
764
764
  const elementTypesToObjects: {
765
- 2: typeof SubShapes.Tria_3N;
766
- 3: typeof SubShapes.Quad_4N;
767
- 9: typeof SubShapes.Tria_6N;
768
- 16: typeof SubShapes.Quad_8N;
769
- 10: typeof SubShapes.Quad_9N;
765
+ 2: typeof Shapes.Tria_3N;
766
+ 3: typeof Shapes.Quad_4N;
767
+ 9: typeof Shapes.Tria_6N;
768
+ 16: typeof Shapes.Quad_8N;
769
+ 10: typeof Shapes.Quad_9N;
770
770
  };
771
771
  const dataTypesToObjects: {
772
- subShapeTypes: {
773
- 0: typeof SubShapes.Vertex;
774
- 1: typeof SubShapes.Edge;
775
- 2: typeof SubShapes.Face;
776
- 3: typeof SubShapes.Node;
777
- 4: typeof SubShapes.Element;
778
- };
779
772
  shapeTypes: {
780
773
  5: typeof Shapes.TopoFace;
781
774
  6: typeof Shapes.TopoEdge;