@pilotdev/pilot-web-3d 1.0.4 → 1.0.5-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/index.d.ts +109 -57
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
/// <reference path="./three/three.d.ts" />
|
|
2
2
|
declare namespace PilotWeb3D {
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
type InitializeSuccessCallback = () => void;
|
|
5
|
+
function Initializer(options: any, callback: InitializeSuccessCallback): void;
|
|
6
|
+
function shutdown(): void;
|
|
7
|
+
type ErrorCallback = (message: string) => void;
|
|
8
|
+
type SuccessCallback = (modelId: any) => void;
|
|
9
|
+
enum DocumentType {
|
|
10
|
+
UNKNOWN = 0,
|
|
11
|
+
DOCUMENT_2D = 1,
|
|
12
|
+
DOCUMENT_3D = 2
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
class GuiViewer3D extends Viewer3D {
|
|
16
|
+
getToolbar(): ViewerToolbar;
|
|
17
|
+
onPostExtensionLoad(extension: Extension): void;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class Model {
|
|
21
21
|
/**
|
|
22
22
|
* Returns all model parts loaded in the viewer.
|
|
23
23
|
* @returns {ModelPart[]} - An array of visible and hidden model parts
|
|
@@ -82,6 +82,16 @@ declare namespace PilotWeb3D {
|
|
|
82
82
|
* @returns {ModelElementIds[]} Array of the currently selected model elements.
|
|
83
83
|
*/
|
|
84
84
|
getSelection(): ModelElementIds[];
|
|
85
|
+
/**
|
|
86
|
+
* Returns the hidden element ids.
|
|
87
|
+
* @returns {ModelElementIds[]} Array of the currently hidden model elements.
|
|
88
|
+
*/
|
|
89
|
+
getHiddenElements(): ModelElementIds[];
|
|
90
|
+
/**
|
|
91
|
+
* Returns the visible element ids.
|
|
92
|
+
* @returns {ModelElementIds[]} Array of the currently visible model elements.
|
|
93
|
+
*/
|
|
94
|
+
getVisibleElements(): ModelElementIds[];
|
|
85
95
|
/**
|
|
86
96
|
* Sets color to elements
|
|
87
97
|
* @param {string[] | string} elementIds - element or array of elements to change color.
|
|
@@ -99,50 +109,58 @@ declare namespace PilotWeb3D {
|
|
|
99
109
|
clearColors(model?: string | ModelPart): void;
|
|
100
110
|
}
|
|
101
111
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
112
|
+
class ModelPart {
|
|
113
|
+
get id(): string;
|
|
114
|
+
get elementTree(): ModelElementTree;
|
|
115
|
+
dispose(): void;
|
|
106
116
|
}
|
|
107
117
|
|
|
108
|
-
|
|
118
|
+
class ModelElementIds {
|
|
109
119
|
modelPartId: string;
|
|
110
120
|
elementIds: string[];
|
|
111
121
|
}
|
|
112
122
|
|
|
113
|
-
|
|
123
|
+
class ModelElementTree {
|
|
114
124
|
enumElementChildren(element: string | ModelElement, callback: (guid: string) => void, recursive?: boolean): void;
|
|
115
125
|
getRootElement(): ModelElement;
|
|
116
126
|
getAllElements(): ModelElement[];
|
|
127
|
+
getElement(id: string) : ModelElement;
|
|
117
128
|
isViewableElement(element: string | ModelElement): boolean;
|
|
118
129
|
isDetachedElement(element: string | ModelElement): boolean;
|
|
119
130
|
getChildLevelNumber(element: string | ModelElement): number;
|
|
120
131
|
}
|
|
121
132
|
|
|
122
|
-
|
|
133
|
+
class ModelElement {
|
|
123
134
|
get id(): string;
|
|
135
|
+
get modelPartId(): string;
|
|
124
136
|
get parent(): ModelElement | undefined;
|
|
125
137
|
get type(): string;
|
|
126
138
|
get name(): string;
|
|
127
139
|
get children(): ModelElement[];
|
|
128
140
|
}
|
|
129
141
|
|
|
130
|
-
|
|
142
|
+
class CoreEventTypes {
|
|
131
143
|
static VIEWER_RESIZE_EVENT: string;
|
|
132
144
|
static VIEWER_MOUSE_DOWN_EVENT: string;
|
|
133
145
|
static VIEWER_MOUSE_MOVE_EVENT: string;
|
|
134
146
|
static VIEWER_MOUSE_UP_EVENT: string;
|
|
135
147
|
static VIEWER_MOUSE_LONG_TOUCH_EVENT: string;
|
|
136
148
|
}
|
|
137
|
-
|
|
138
|
-
|
|
149
|
+
class EventTypes extends CoreEventTypes {
|
|
150
|
+
static SELECTION_CHANGED_EVENT: string;
|
|
151
|
+
static MODEL_PART_LOADED: string;
|
|
152
|
+
static MODEL_PART_UNLOADED: string;
|
|
139
153
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
154
|
+
class SelectionEvent extends Event {
|
|
155
|
+
selected: string[];
|
|
156
|
+
modelPartId: string;
|
|
143
157
|
}
|
|
144
158
|
|
|
145
|
-
|
|
159
|
+
class ModelPartEvent extends Event {
|
|
160
|
+
modelPartId: string;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
interface EventsDispatcher {
|
|
146
164
|
addEventListener(event: string, listener: EventListener, options?: any): void;
|
|
147
165
|
removeEventListener(event: string, listener: EventListener): void;
|
|
148
166
|
hasEventListener(event: string, listener: EventListener): boolean;
|
|
@@ -150,12 +168,15 @@ declare namespace PilotWeb3D {
|
|
|
150
168
|
clearListeners(): void;
|
|
151
169
|
}
|
|
152
170
|
|
|
153
|
-
|
|
154
|
-
position:
|
|
155
|
-
|
|
171
|
+
type CameraPosition = {
|
|
172
|
+
position: { x: number, y: number, z: number },
|
|
173
|
+
eyeDir: { x: number, y: number, z: number },
|
|
174
|
+
angle: number,
|
|
175
|
+
viewCenter: { x: number, y: number, z: number }
|
|
156
176
|
};
|
|
157
|
-
|
|
158
|
-
|
|
177
|
+
|
|
178
|
+
var ViewerInstance: Viewer3D;
|
|
179
|
+
class Viewer3D extends ViewerBase {
|
|
159
180
|
start(): number;
|
|
160
181
|
finish(): void;
|
|
161
182
|
/**
|
|
@@ -195,7 +216,7 @@ declare namespace PilotWeb3D {
|
|
|
195
216
|
makeScreenshot(mimeType?: string, quality?: number): Promise<Blob>;
|
|
196
217
|
}
|
|
197
218
|
|
|
198
|
-
|
|
219
|
+
abstract class ViewerBase {
|
|
199
220
|
container: HTMLElement;
|
|
200
221
|
layerManagers: Map<number, ILayerManager>;
|
|
201
222
|
extensionsLoader: ExtensionLoader;
|
|
@@ -213,21 +234,21 @@ declare namespace PilotWeb3D {
|
|
|
213
234
|
onPostExtensionLoad(extension: Extension): void;
|
|
214
235
|
}
|
|
215
236
|
|
|
216
|
-
|
|
237
|
+
class ExtensionLoader {
|
|
217
238
|
loadExtension(extensionId: string): Promise<Extension>;
|
|
218
239
|
unloadExtension(extensionId: string): Promise<boolean>;
|
|
219
240
|
getExtensions(): Extension[];
|
|
220
241
|
}
|
|
221
242
|
|
|
222
|
-
|
|
243
|
+
function CreateViewer(container: HTMLElement): GuiViewer3D;
|
|
223
244
|
|
|
224
|
-
|
|
245
|
+
interface ILayerManager {
|
|
225
246
|
createLayer(name: string): ILayer;
|
|
226
247
|
deleteLayer(name: string): boolean;
|
|
227
248
|
getLayer(name: string): ILayer | null;
|
|
228
249
|
hasLayer(name: string): boolean;
|
|
229
250
|
}
|
|
230
|
-
|
|
251
|
+
interface ILayer {
|
|
231
252
|
addOverlay(overlay: Overlay): boolean;
|
|
232
253
|
removeOverlay(overlay: Overlay): boolean;
|
|
233
254
|
getOverlays(): Overlay[];
|
|
@@ -235,37 +256,63 @@ declare namespace PilotWeb3D {
|
|
|
235
256
|
getViewBox(): LayerViewBox;
|
|
236
257
|
dispose(): void;
|
|
237
258
|
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
259
|
+
type Overlay = HTMLElement | any;
|
|
260
|
+
type LayerContainer = HTMLElement | any;
|
|
261
|
+
type LayerViewBox = DOMRect | any;
|
|
241
262
|
|
|
242
|
-
|
|
263
|
+
class Toolbar extends Control {
|
|
243
264
|
addControl(control: Control): void;
|
|
244
265
|
removeControl(id: string): void;
|
|
245
266
|
}
|
|
246
267
|
|
|
247
|
-
|
|
268
|
+
class Control {
|
|
248
269
|
container: HTMLElement;
|
|
249
|
-
id: string;
|
|
270
|
+
constructor(id: string);
|
|
250
271
|
addClass(cssClass: string): void;
|
|
251
272
|
removeClass(cssClass: string): void;
|
|
273
|
+
getId(): string;
|
|
274
|
+
setToolTip(tooltipText: string): void;
|
|
252
275
|
}
|
|
253
276
|
|
|
254
|
-
|
|
277
|
+
class ViewerToolbar extends Toolbar {
|
|
255
278
|
}
|
|
256
279
|
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
280
|
+
class Button extends Control {
|
|
281
|
+
constructor(id: string);
|
|
282
|
+
setIsChecked(value: boolean): void;
|
|
283
|
+
setState(state: Button.State): boolean;
|
|
284
|
+
getState(): Button.State;
|
|
285
|
+
setIcon(iconClassName: string): void;
|
|
286
|
+
/**
|
|
287
|
+
* Override this method to be notified when the user clicks on the button.
|
|
288
|
+
* @param {MouseEvent} event
|
|
289
|
+
*/
|
|
290
|
+
onClick: (event: MouseEvent) => void;
|
|
291
|
+
/**
|
|
292
|
+
* Override this method to be notified when the mouse enters the button.
|
|
293
|
+
* @param {MouseEvent} event
|
|
294
|
+
*/
|
|
295
|
+
onMouseOver: (event: MouseEvent) => void;
|
|
296
|
+
/**
|
|
297
|
+
* Override this method to be notified when the mouse leaves the button.
|
|
298
|
+
* @param {MouseEvent} event
|
|
299
|
+
*/
|
|
300
|
+
onMouseOut: (event: MouseEvent) => void;
|
|
260
301
|
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
302
|
+
namespace Button {
|
|
303
|
+
enum State {
|
|
304
|
+
ACTIVE = 0,
|
|
305
|
+
INACTIVE = 1,
|
|
306
|
+
DISABLED = 2
|
|
307
|
+
}
|
|
308
|
+
enum Event {
|
|
309
|
+
STATE_CHANGED = "Button.StateChanged",
|
|
310
|
+
CLICK = "click"
|
|
311
|
+
}
|
|
266
312
|
}
|
|
267
|
-
|
|
268
|
-
|
|
313
|
+
|
|
314
|
+
class ExtensionBase {
|
|
315
|
+
protected _viewer: ViewerBase;
|
|
269
316
|
constructor(viewer3D: ViewerBase, options?: object);
|
|
270
317
|
load(): boolean | Promise<boolean>;
|
|
271
318
|
unload(): boolean;
|
|
@@ -278,13 +325,18 @@ declare namespace PilotWeb3D {
|
|
|
278
325
|
onMouseMove(event: MouseEvent): void;
|
|
279
326
|
onMouseUp(event: MouseEvent): void;
|
|
280
327
|
onMouseLongTouch(event: MouseEvent): void;
|
|
281
|
-
onToolbarCreated(builder:
|
|
328
|
+
onToolbarCreated(builder: Toolbar): void;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
class Extension extends ExtensionBase{
|
|
332
|
+
protected _viewer: Viewer3D;
|
|
333
|
+
constructor(viewer: Viewer3D, options?: object);
|
|
282
334
|
}
|
|
283
335
|
|
|
284
|
-
|
|
336
|
+
class ExtensionManager {
|
|
285
337
|
registerExtensionType(extensionId: string, extension: typeof Extension): boolean;
|
|
286
338
|
unregisterExtensionType(extensionId: string): boolean;
|
|
287
339
|
getExtensionType(extensionId: string): typeof Extension;
|
|
288
340
|
}
|
|
289
|
-
|
|
341
|
+
const theExtensionManager: ExtensionManager;
|
|
290
342
|
}
|