fcs-core-viewer 0.10.5 → 0.11.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/fcs-core-viewer@types/BackendEvents/BackendEvents.d.ts +2 -2
- package/fcs-core-viewer@types/BackendEvents/FileGetter.d.ts +1 -0
- package/fcs-core-viewer@types/CloudViewer/FcsViewer.d.ts +7 -1
- package/fcs-core-viewer@types/Common/CommsChannels/Socket.d.ts +12 -1
- package/fcs-core-viewer@types/DataStorage/ModelData.d.ts +20 -3
- package/fcs-core-viewer@types/Loader/GEOMLoader/EdgeLoader.d.ts +7 -0
- package/fcs-core-viewer@types/Loader/GEOMLoader/FaceLoader.d.ts +8 -0
- package/fcs-core-viewer@types/Loader/GEOMLoader/GeomLoader.d.ts +18 -1
- package/fcs-core-viewer@types/Loader/GEOMLoader/VertexLoader.d.ts +6 -0
- package/package.json +1 -1
|
@@ -72,7 +72,7 @@ export declare class BackendEvents implements IBackendEvents {
|
|
|
72
72
|
center_view: any;
|
|
73
73
|
set_object_color: any;
|
|
74
74
|
refresh_viewer: any;
|
|
75
|
-
|
|
75
|
+
clear_model: any;
|
|
76
76
|
sync_model: any;
|
|
77
77
|
commit_to_document: any;
|
|
78
78
|
remove_from_model: any;
|
|
@@ -154,7 +154,7 @@ export declare class BackendEvents implements IBackendEvents {
|
|
|
154
154
|
/**
|
|
155
155
|
* Clears all entities in the document. Basically, a new empty document is open.
|
|
156
156
|
*/
|
|
157
|
-
private
|
|
157
|
+
private clear_model;
|
|
158
158
|
/**
|
|
159
159
|
* This method is called both times when we are spawning the progress
|
|
160
160
|
* tracker or updating an existing one. To close down the progress tracker,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getFileAsset(fileRelativeUrl: string): Promise<Response>;
|
|
@@ -13,6 +13,12 @@ export declare namespace CloudViewer {
|
|
|
13
13
|
* Engulf all settings to initialise a viewer.
|
|
14
14
|
*/
|
|
15
15
|
class ViewerSettings {
|
|
16
|
+
/**
|
|
17
|
+
* The base URL for all assets and endpoints.
|
|
18
|
+
* This needs to be specified when the viewer is access from a third-party
|
|
19
|
+
* client application.
|
|
20
|
+
*/
|
|
21
|
+
ViewerServerBaseUrl: string;
|
|
16
22
|
/**
|
|
17
23
|
* Contains settings that are responsible for styling of the viewer.
|
|
18
24
|
*/
|
|
@@ -41,7 +47,7 @@ export declare namespace CloudViewer {
|
|
|
41
47
|
/**
|
|
42
48
|
* Constructor to instantiate viewer.
|
|
43
49
|
*/
|
|
44
|
-
constructor(container: HTMLDivElement, initSettings
|
|
50
|
+
constructor(container: HTMLDivElement, initSettings: ViewerSettings, licenseToken?: string, disallowSocketCallbacks?: boolean);
|
|
45
51
|
/**
|
|
46
52
|
* Generates a unique id in the viewer
|
|
47
53
|
*/
|
|
@@ -3,22 +3,33 @@ import { Socket } from 'socket.io-client';
|
|
|
3
3
|
* Socket Class
|
|
4
4
|
*/
|
|
5
5
|
export declare class CurrentUserSocket {
|
|
6
|
+
private static _viewerBaseUrl;
|
|
6
7
|
private static _instance;
|
|
7
8
|
socket: Socket;
|
|
8
9
|
private static _authToken;
|
|
9
10
|
private static _activeModelPath;
|
|
11
|
+
/**
|
|
12
|
+
* This promise resolves when the socket connects
|
|
13
|
+
*/
|
|
14
|
+
static connectionPromise: any;
|
|
15
|
+
/**
|
|
16
|
+
* Resolver function for the promise
|
|
17
|
+
*/
|
|
18
|
+
static connectionResolve: any;
|
|
10
19
|
/**
|
|
11
20
|
* By default, we allow and expect to get callbacks from the backend.
|
|
12
21
|
*/
|
|
13
22
|
private static _allowBackendCallbacks;
|
|
14
23
|
private constructor();
|
|
24
|
+
static setViewerBaseUrl(baseUrl: string): void;
|
|
25
|
+
static getViewerBaseUrl(): string;
|
|
15
26
|
static disallowSocketCallbacks(): void;
|
|
16
27
|
static getInstance(authToken?: string): CurrentUserSocket;
|
|
17
28
|
static getAuthToken(): string | null;
|
|
18
29
|
/**
|
|
19
30
|
* Handle socket errors and log them to console
|
|
20
31
|
*/
|
|
21
|
-
private
|
|
32
|
+
private _handleSocketConnectionStates;
|
|
22
33
|
/**
|
|
23
34
|
* Get socket instance of socket
|
|
24
35
|
*/
|
|
@@ -110,7 +110,7 @@ export declare namespace ModelData {
|
|
|
110
110
|
static instance: PointContainer;
|
|
111
111
|
sceneWrapper: SceneWrapper;
|
|
112
112
|
shapeVIDs: number[];
|
|
113
|
-
|
|
113
|
+
cntObject: THREE.Point;
|
|
114
114
|
generalPointMaterial: THREE.ShaderMaterial;
|
|
115
115
|
sharedPositionBuffer: ArrayBuffer;
|
|
116
116
|
sharedTextureIDBuffer: ArrayBuffer;
|
|
@@ -194,7 +194,7 @@ export declare namespace ModelData {
|
|
|
194
194
|
static title: string;
|
|
195
195
|
hash: string;
|
|
196
196
|
segmentsXYZ: number[];
|
|
197
|
-
|
|
197
|
+
provokingVertexIndices: number[];
|
|
198
198
|
elements: Element[];
|
|
199
199
|
nodes: Node[];
|
|
200
200
|
baseColor: number[];
|
|
@@ -263,6 +263,7 @@ export declare namespace ModelData {
|
|
|
263
263
|
objectVID: number;
|
|
264
264
|
objectUIDs: number[];
|
|
265
265
|
positionXYZ: number[];
|
|
266
|
+
avgNodeXYZ: number[];
|
|
266
267
|
vertexIndex: number;
|
|
267
268
|
count: number;
|
|
268
269
|
edges: Edge[];
|
|
@@ -280,6 +281,8 @@ export declare namespace ModelData {
|
|
|
280
281
|
private createVID;
|
|
281
282
|
select(): void;
|
|
282
283
|
unselect(): void;
|
|
284
|
+
static boxcaster(event: MouseEvent, startPoint: THREE.Vector3, endPoint: THREE.Vector3): any[];
|
|
285
|
+
static raycaster(event: MouseEvent): any[];
|
|
283
286
|
/**
|
|
284
287
|
* Csak a szinet valtoztatja ha kijeloljuk.
|
|
285
288
|
* A baseColor-t nem valtoztatja
|
|
@@ -401,6 +404,7 @@ export declare namespace ModelData {
|
|
|
401
404
|
class Shape {
|
|
402
405
|
private static shapeIDs_used;
|
|
403
406
|
private static shapeIDs_unused;
|
|
407
|
+
boundingBox: THREE.Box3;
|
|
404
408
|
subShapes: {
|
|
405
409
|
faces: {};
|
|
406
410
|
edges: {};
|
|
@@ -411,6 +415,12 @@ export declare namespace ModelData {
|
|
|
411
415
|
itemUID: number;
|
|
412
416
|
constructor(shapeUID: number);
|
|
413
417
|
private createVID;
|
|
418
|
+
/**
|
|
419
|
+
* Create oriented bounding box from array of vertex XYZ coordinates
|
|
420
|
+
* @param position
|
|
421
|
+
* @returns
|
|
422
|
+
*/
|
|
423
|
+
createBoundingBox(position: number[]): any;
|
|
414
424
|
}
|
|
415
425
|
export class TopoFace extends Shape {
|
|
416
426
|
static title: string;
|
|
@@ -468,7 +478,14 @@ export declare namespace ModelData {
|
|
|
468
478
|
export class TopoSolid extends Shape {
|
|
469
479
|
static title: string;
|
|
470
480
|
constructor(shapeUID: number);
|
|
471
|
-
setColor(
|
|
481
|
+
setColor(colorData: any[]): void;
|
|
482
|
+
/**
|
|
483
|
+
* Olyan mint a setColor, de a baseColor-t nem valtoztatja.
|
|
484
|
+
* Ez azert fontos, hogy unselect-nel visszakapja az eredeti szinet
|
|
485
|
+
* @param colorData
|
|
486
|
+
*/
|
|
487
|
+
highlight(): void;
|
|
488
|
+
select(): void;
|
|
472
489
|
setOpacity(): void;
|
|
473
490
|
setVisibility(): void;
|
|
474
491
|
remove(): void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { GeomLoader } from "./GeomLoader";
|
|
2
|
+
export declare class VertexLoader {
|
|
3
|
+
geomLoader: GeomLoader;
|
|
4
|
+
constructor(geomLoader: GeomLoader);
|
|
5
|
+
loadVertex(iShape: any, line: string, itemVID: number, shapeVID: number): void;
|
|
6
|
+
loadEdge(iShape: any, line: string, itemVID: number, shapeVID: number): void;
|
|
7
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { GeomLoader } from "./GeomLoader";
|
|
2
|
+
export declare class FaceLoader {
|
|
3
|
+
geomLoader: GeomLoader;
|
|
4
|
+
constructor(geomLoader: GeomLoader);
|
|
5
|
+
loadVertex(iShape: any, line: string, itemVID: number, shapeVID: number): void;
|
|
6
|
+
loadEdge(iShape: any, line: string, itemVID: number, shapeVID: number): void;
|
|
7
|
+
loadFace(iShape: any, line: string, itemVID: number, shapeVID: number): void;
|
|
8
|
+
}
|
|
@@ -2,13 +2,30 @@ import { ModelData } from "../../DataStorage/ModelData";
|
|
|
2
2
|
export declare class GeomLoader {
|
|
3
3
|
private _fileUrl;
|
|
4
4
|
components: {};
|
|
5
|
+
shapeVIDs: any[];
|
|
5
6
|
uniqueID_To_Instance: {};
|
|
6
7
|
meshMaterialGeom: any;
|
|
7
8
|
meshMaterialFEMesh: any;
|
|
8
9
|
generalLineMaterial: any;
|
|
9
10
|
generalPointMaterial: any;
|
|
11
|
+
iFaces: ModelData.SubShapes.Face[];
|
|
12
|
+
iEdges: ModelData.SubShapes.Edge[];
|
|
13
|
+
iVertices: ModelData.SubShapes.Vertex[];
|
|
14
|
+
hashToVertex: {};
|
|
15
|
+
vertexIndex: number;
|
|
16
|
+
vertexPositionAll: number[];
|
|
17
|
+
vertexPositionShape: number[];
|
|
18
|
+
verticesIndex: number[];
|
|
19
|
+
startIndex: number;
|
|
20
|
+
hashToEdge: {};
|
|
21
|
+
vertexIdxToCoords: {};
|
|
22
|
+
linePosition: number[];
|
|
23
|
+
polygonVerticesIdx: number[];
|
|
24
|
+
facePosition: number[];
|
|
25
|
+
faceUIDToVertices: {};
|
|
26
|
+
faceUIDToEdges: {};
|
|
10
27
|
constructor(fileUrl: string);
|
|
11
|
-
perform(itemName: string, itemUID: number, parentUID: number, shapeUID: number
|
|
28
|
+
perform(itemName: string, itemUID: number, parentUID: number, /*shapeUID: number,*/ shapeType: ModelData.dataTypes): Promise<void>;
|
|
12
29
|
private createShape;
|
|
13
30
|
private createItem;
|
|
14
31
|
}
|