@inweb/viewer-visualize 25.7.0 → 25.7.2
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 +2 -2
- package/dist/viewer-visualize.js +330 -295
- package/dist/viewer-visualize.js.map +1 -1
- package/dist/viewer-visualize.min.js +1 -1
- package/dist/viewer-visualize.module.js +164 -149
- package/dist/viewer-visualize.module.js.map +1 -1
- package/lib/Viewer/Markup/Api/IMarkupLine.d.ts +4 -0
- package/lib/Viewer/Markup/Api/Impl/Konva/KonvaLine.d.ts +2 -3
- package/lib/Viewer/Markup/IMarkup.d.ts +28 -32
- package/lib/Viewer/Markup/IWorldTransform.d.ts +39 -0
- package/lib/Viewer/Markup/Impl/Konva/KonvaMarkup.d.ts +11 -6
- package/lib/Viewer/Markup/Impl/Konva/MarkupColor.d.ts +3 -0
- package/lib/Viewer/Markup/Impl/Visualize/VisualizeMarkup.d.ts +4 -4
- package/lib/Viewer/Markup/MarkupFactory.d.ts +10 -10
- package/lib/Viewer/Viewer.d.ts +60 -42
- package/lib/index.d.ts +12 -0
- package/package.json +5 -5
- package/src/Viewer/Commands/ApplyModelTransform.ts +2 -2
- package/src/Viewer/Commands/ClearMarkup.ts +2 -2
- package/src/Viewer/Commands/ClearSlices.ts +2 -2
- package/src/Viewer/Commands/CreatePreview.ts +2 -2
- package/src/Viewer/Commands/Explode.ts +2 -2
- package/src/Viewer/Commands/GetDefaultViewPositions.ts +2 -2
- package/src/Viewer/Commands/GetModels.ts +2 -2
- package/src/Viewer/Commands/GetSelected.ts +2 -2
- package/src/Viewer/Commands/HideSelected.ts +2 -2
- package/src/Viewer/Commands/IsolateSelected.ts +2 -2
- package/src/Viewer/Commands/RegenerateAll.ts +2 -2
- package/src/Viewer/Commands/ResetView.ts +2 -2
- package/src/Viewer/Commands/SelectModel.ts +2 -2
- package/src/Viewer/Commands/SetActiveDragger.ts +2 -2
- package/src/Viewer/Commands/SetDefaultViewPosition.ts +2 -2
- package/src/Viewer/Commands/SetMarkupColor.ts +2 -2
- package/src/Viewer/Commands/SetSelected.ts +2 -2
- package/src/Viewer/Commands/ShowAll.ts +2 -2
- package/src/Viewer/Commands/Unselect.ts +2 -2
- package/src/Viewer/Commands/ZoomToExtents.ts +2 -2
- package/src/Viewer/Commands/ZoomToObjects.ts +2 -2
- package/src/Viewer/Commands/ZoomToSelected.ts +2 -2
- package/src/Viewer/Commands/index.ts +2 -2
- package/src/Viewer/Draggers/Actions/OrbitAction.ts +2 -2
- package/src/Viewer/Draggers/Actions/PanAction.ts +2 -2
- package/src/Viewer/Draggers/Actions/ZoomAction.ts +2 -2
- package/src/Viewer/Draggers/Common/Geometry.ts +2 -2
- package/src/Viewer/Draggers/Common/GestureManager.ts +2 -2
- package/src/Viewer/Draggers/Common/OdBaseDragger.ts +2 -2
- package/src/Viewer/Draggers/Common/OdaGeAction.ts +2 -2
- package/src/Viewer/Draggers/MeasureLineDragger/MeasureLineItem.ts +2 -2
- package/src/Viewer/Draggers/MeasureLineDragger/MeasureUtils.ts +2 -2
- package/src/Viewer/Draggers/MeasureLineDragger/index.ts +2 -2
- package/src/Viewer/Draggers/OdBaseCuttingPlaneDragger.ts +2 -2
- package/src/Viewer/Draggers/OdCuttingPlaneXAxisDragger.ts +2 -2
- package/src/Viewer/Draggers/OdCuttingPlaneYAxisDragger.ts +2 -2
- package/src/Viewer/Draggers/OdCuttingPlaneZAxisDragger.ts +2 -2
- package/src/Viewer/Draggers/OdOrbitDragger.ts +2 -2
- package/src/Viewer/Draggers/OdPanDragger.ts +2 -2
- package/src/Viewer/Draggers/OdZoomDragger.ts +2 -2
- package/src/Viewer/Draggers/OdZoomWheelDragger.ts +2 -2
- package/src/Viewer/Draggers/OdZoomWindowDragger/OdSelectionFrame.ts +2 -2
- package/src/Viewer/Draggers/OdZoomWindowDragger/index.ts +2 -2
- package/src/Viewer/Draggers/OdaLineDragger.ts +2 -2
- package/src/Viewer/Draggers/OdaTextDragger.ts +2 -2
- package/src/Viewer/Draggers/OdaWalkDragger.ts +2 -2
- package/src/Viewer/Draggers/OrbitAroundBuildingDragger.ts +2 -2
- package/src/Viewer/Loaders/BaseLoader.ts +2 -2
- package/src/Viewer/Loaders/LoaderFactory.ts +2 -2
- package/src/Viewer/Loaders/TCSLoader.ts +2 -2
- package/src/Viewer/Loaders/VsfXLoader.ts +2 -2
- package/src/Viewer/Loaders/VsfXPartialLoader.ts +2 -2
- package/src/Viewer/Loaders/VsfXStreamingLoader.ts +2 -2
- package/src/Viewer/Markup/Api/IMarkupLine.ts +5 -0
- package/src/Viewer/Markup/Api/Impl/Konva/KonvaArrow.ts +1 -1
- package/src/Viewer/Markup/Api/Impl/Konva/KonvaCloud.ts +1 -1
- package/src/Viewer/Markup/Api/Impl/Konva/KonvaEllipse.ts +1 -1
- package/src/Viewer/Markup/Api/Impl/Konva/KonvaLine.ts +4 -5
- package/src/Viewer/Markup/Api/Impl/Konva/KonvaRectangle.ts +1 -1
- package/src/Viewer/Markup/Api/Impl/Konva/KonvaText.ts +1 -1
- package/src/Viewer/Markup/IMarkup.ts +34 -35
- package/src/Viewer/Markup/IWorldTransform.ts +46 -0
- package/src/Viewer/Markup/Impl/Konva/KonvaMarkup.ts +85 -161
- package/src/Viewer/Markup/Impl/Konva/MarkupColor.ts +3 -0
- package/src/Viewer/Markup/Impl/Visualize/VisualizeMarkup.ts +45 -10
- package/src/Viewer/Markup/MarkupFactory.ts +16 -20
- package/src/Viewer/Viewer.ts +103 -95
- package/src/Viewer/utils.ts +2 -2
- package/src/index.ts +14 -2
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { IMarkupLine } from "../../IMarkupLine";
|
|
1
|
+
import { IMarkupLine, MarkupLineType } from "../../IMarkupLine";
|
|
3
2
|
import { IMarkupColorable } from "../../IMarkupColorable";
|
|
4
3
|
export declare class KonvaLine implements IMarkupLine, IMarkupColorable {
|
|
5
4
|
private _ref;
|
|
@@ -8,7 +7,7 @@ export declare class KonvaLine implements IMarkupLine, IMarkupColorable {
|
|
|
8
7
|
x: number;
|
|
9
8
|
y: number;
|
|
10
9
|
}[];
|
|
11
|
-
type?:
|
|
10
|
+
type?: MarkupLineType;
|
|
12
11
|
width?: number;
|
|
13
12
|
color?: string;
|
|
14
13
|
id?: string;
|
|
@@ -1,18 +1,10 @@
|
|
|
1
|
+
import { IEventEmitter } from "@inweb/eventemitter2";
|
|
1
2
|
import { IViewpoint } from "@inweb/viewer-core";
|
|
2
|
-
import {
|
|
3
|
-
import { Viewer } from "../Viewer";
|
|
3
|
+
import { IWorldTransform } from "./IWorldTransform";
|
|
4
4
|
import { IMarkupObject } from "./Api/IMarkupObject";
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
export declare enum MarkupType {
|
|
9
|
-
Unknown = 0,
|
|
10
|
-
Konva = "Konva",
|
|
11
|
-
Visualize = "Visualize"
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Defines type of markup object. For old Visualize markup ({@link MarkupType}) only "Line" and
|
|
15
|
-
* "Text" markup objects are supported.
|
|
6
|
+
* Defines type of markup object. For `VisualizeJS` markup only the `Line` and `Text` markup
|
|
7
|
+
* objects are supported.
|
|
16
8
|
*/
|
|
17
9
|
export declare enum MarkupMode {
|
|
18
10
|
SelectMarkup = "SelectMarkup",
|
|
@@ -25,41 +17,45 @@ export declare enum MarkupMode {
|
|
|
25
17
|
Cloud = "Cloud"
|
|
26
18
|
}
|
|
27
19
|
/**
|
|
28
|
-
*
|
|
20
|
+
* 2D markup core interface.
|
|
29
21
|
*/
|
|
30
22
|
export interface IMarkup {
|
|
31
23
|
/**
|
|
32
|
-
*
|
|
24
|
+
* Line width of the markup objects. Default is 4.
|
|
33
25
|
*/
|
|
34
26
|
lineWidth: number;
|
|
35
27
|
/**
|
|
36
|
-
* Type of the
|
|
28
|
+
* Type of the markup line. Available types: `solid`, `dot`, `dash`. Default is `solid`.
|
|
37
29
|
*/
|
|
38
30
|
lineType: string;
|
|
39
31
|
/**
|
|
40
|
-
* Font size of the markup text. Default is 34.
|
|
32
|
+
* Font size of the markup text. Default is 34 px.
|
|
41
33
|
*/
|
|
42
34
|
fontSize: number;
|
|
43
35
|
/**
|
|
44
36
|
* Start method to init Markup support for the Viewer instance.
|
|
45
37
|
*
|
|
46
|
-
* @param
|
|
47
|
-
*
|
|
48
|
-
*
|
|
38
|
+
* @param canvas -
|
|
39
|
+
* {@link https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement | HTMLCanvasElement}
|
|
40
|
+
* used to operate on.
|
|
41
|
+
* @param canvasEvents - List of `canvas` events that the markup should redirect to the `viewer`.
|
|
42
|
+
* @param viewer - `Viewer` instance viewer that receives `canvas` events.
|
|
43
|
+
* @param worldTransformer - Transformer of screen space into world space and vice versa. If
|
|
44
|
+
* a transformer is defined, viewpoint objects will be stored in world coordinates,
|
|
45
|
+
* otherwise in screen coordinates.
|
|
49
46
|
*/
|
|
50
|
-
initialize(
|
|
47
|
+
initialize(canvas: HTMLCanvasElement, canvasEvents: string[], viewer?: IEventEmitter, worldTransformer?: IWorldTransform): void;
|
|
51
48
|
/**
|
|
52
49
|
* Releases all resources allocated by this `Markup` instance. Call this method before
|
|
53
50
|
* release the `Markup` instance.
|
|
54
51
|
*/
|
|
55
52
|
dispose(): void;
|
|
56
53
|
/**
|
|
57
|
-
*
|
|
58
|
-
* map to register in {@link Viewer.registerDragger}
|
|
54
|
+
* Create markup overlay.
|
|
59
55
|
*/
|
|
60
|
-
|
|
56
|
+
syncOverlay(): void;
|
|
61
57
|
/**
|
|
62
|
-
*
|
|
58
|
+
* Clear markup overlay.
|
|
63
59
|
*/
|
|
64
60
|
clearOverlay(): void;
|
|
65
61
|
/**
|
|
@@ -103,32 +99,32 @@ export interface IMarkup {
|
|
|
103
99
|
*/
|
|
104
100
|
setViewpoint(viewpoint: IViewpoint): void;
|
|
105
101
|
/**
|
|
106
|
-
* Create a
|
|
102
|
+
* Create a viewpoint.
|
|
107
103
|
*/
|
|
108
104
|
getViewpoint(): IViewpoint;
|
|
109
105
|
/**
|
|
110
|
-
* Create a Markup object
|
|
106
|
+
* Create a Markup object.
|
|
111
107
|
*
|
|
112
|
-
* @param type - string identificator of Markup type
|
|
113
|
-
* @param params - object
|
|
108
|
+
* @param type - string identificator of Markup object type.
|
|
109
|
+
* @param params - Markup object parameters.
|
|
114
110
|
*/
|
|
115
111
|
createObject(type: string, params: any): IMarkupObject;
|
|
116
112
|
/**
|
|
117
|
-
* Get
|
|
113
|
+
* Get Markup objects.
|
|
118
114
|
*/
|
|
119
115
|
getObjects(): IMarkupObject[];
|
|
120
116
|
/**
|
|
121
|
-
* Get
|
|
117
|
+
* Get selected Markup objects.
|
|
122
118
|
*/
|
|
123
119
|
getSelectedObjects(): IMarkupObject[];
|
|
124
120
|
/**
|
|
125
|
-
* Select
|
|
121
|
+
* Select Markup objects.
|
|
126
122
|
*
|
|
127
123
|
* @param objects
|
|
128
124
|
*/
|
|
129
125
|
selectObjects(objects: IMarkupObject[]): void;
|
|
130
126
|
/**
|
|
131
|
-
* Clear
|
|
127
|
+
* Clear Markup objects selection.
|
|
132
128
|
*/
|
|
133
129
|
clearSelected(): void;
|
|
134
130
|
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Viewer coordiate system transformer.
|
|
3
|
+
*/
|
|
4
|
+
export interface IWorldTransform {
|
|
5
|
+
/**
|
|
6
|
+
* Transforms `position` from screen space into world space.
|
|
7
|
+
*
|
|
8
|
+
* @param position - screen position in pixels.
|
|
9
|
+
*/
|
|
10
|
+
screenToWorld(position: {
|
|
11
|
+
x: number;
|
|
12
|
+
y: number;
|
|
13
|
+
}): {
|
|
14
|
+
x: number;
|
|
15
|
+
y: number;
|
|
16
|
+
z: number;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Transforms `position` from world space into screen space.
|
|
20
|
+
*
|
|
21
|
+
* @param position - position in world space coordinates.
|
|
22
|
+
*/
|
|
23
|
+
worldToScreen(position: {
|
|
24
|
+
x: number;
|
|
25
|
+
y: number;
|
|
26
|
+
z: number;
|
|
27
|
+
}): {
|
|
28
|
+
x: number;
|
|
29
|
+
y: number;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Returns the scaling factors for each axis in world space.
|
|
33
|
+
*/
|
|
34
|
+
getScale(): {
|
|
35
|
+
x: number;
|
|
36
|
+
y: number;
|
|
37
|
+
z: number;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IEventEmitter } from "@inweb/eventemitter2";
|
|
2
|
+
import { ChangeActiveDraggerEvent, IViewpoint, PanEvent } from "@inweb/viewer-core";
|
|
2
3
|
import { IMarkup } from "../../IMarkup";
|
|
3
|
-
import {
|
|
4
|
-
import { OdBaseDragger } from "../../../Draggers/Common/OdBaseDragger";
|
|
4
|
+
import { IWorldTransform } from "../../IWorldTransform";
|
|
5
5
|
import { IMarkupObject } from "../../Api/IMarkupObject";
|
|
6
|
+
import { MarkupLineType } from "../../Api/IMarkupLine";
|
|
7
|
+
/**
|
|
8
|
+
* 2D markup core.
|
|
9
|
+
*/
|
|
6
10
|
export declare class KonvaMarkup implements IMarkup {
|
|
7
11
|
private _isInitialized;
|
|
8
12
|
private _viewer;
|
|
13
|
+
private _worldTransformer;
|
|
9
14
|
private _canvasOriginal;
|
|
10
15
|
private _canvasEvents;
|
|
11
16
|
private _markupIsActive;
|
|
@@ -23,15 +28,15 @@ export declare class KonvaMarkup implements IMarkup {
|
|
|
23
28
|
private _zIndex;
|
|
24
29
|
private readonly _markupContainerName;
|
|
25
30
|
lineWidth: number;
|
|
26
|
-
lineType:
|
|
31
|
+
lineType: MarkupLineType;
|
|
27
32
|
fontSize: number;
|
|
28
|
-
initialize(
|
|
33
|
+
initialize(canvas: HTMLCanvasElement, canvasEvents: string[], viewer?: IEventEmitter, worldTransformer?: IWorldTransform): void;
|
|
29
34
|
dispose(): void;
|
|
30
35
|
changeActiveDragger: (event: ChangeActiveDraggerEvent) => void;
|
|
31
36
|
resize: () => void;
|
|
32
37
|
pan: (event: PanEvent) => void;
|
|
33
38
|
redirectToViewer: (event: any) => void;
|
|
34
|
-
|
|
39
|
+
syncOverlay(): void;
|
|
35
40
|
clearOverlay(): void;
|
|
36
41
|
getMarkupColor(): {
|
|
37
42
|
r: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { IEventEmitter } from "@inweb/eventemitter2";
|
|
1
2
|
import { IViewpoint } from "@inweb/viewer-core";
|
|
2
3
|
import { IMarkup } from "../../IMarkup";
|
|
3
|
-
import {
|
|
4
|
-
import { OdBaseDragger } from "../../../Draggers/Common/OdBaseDragger";
|
|
4
|
+
import { IWorldTransform } from "../../IWorldTransform";
|
|
5
5
|
import { IMarkupObject } from "../../Api/IMarkupObject";
|
|
6
6
|
export declare class VisualizeMarkup implements IMarkup {
|
|
7
7
|
private _viewer;
|
|
@@ -13,9 +13,9 @@ export declare class VisualizeMarkup implements IMarkup {
|
|
|
13
13
|
lineWidth: number;
|
|
14
14
|
lineType: "solid";
|
|
15
15
|
fontSize: number;
|
|
16
|
-
initialize(
|
|
16
|
+
initialize(canvas: HTMLCanvasElement, canvasEvents: string[], viewer?: IEventEmitter, worldTransformer?: IWorldTransform): void;
|
|
17
17
|
dispose(): void;
|
|
18
|
-
|
|
18
|
+
syncOverlay(): void;
|
|
19
19
|
clearOverlay(): void;
|
|
20
20
|
getMarkupColor(): {
|
|
21
21
|
r: number;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { IMarkup
|
|
1
|
+
import { IMarkup } from "./IMarkup";
|
|
2
|
+
/**
|
|
3
|
+
* The markup type: `Visualize` (deprecated) or `Konva`.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum MarkupType {
|
|
6
|
+
Unknown = 0,
|
|
7
|
+
Konva = "Konva",
|
|
8
|
+
Visualize = "Visualize"
|
|
9
|
+
}
|
|
2
10
|
export declare class MarkupFactory {
|
|
3
|
-
|
|
4
|
-
* Initialize {@link IMarkup} instance
|
|
5
|
-
*
|
|
6
|
-
* @param markupType - Specifies version of the markup support. Two variants of markup
|
|
7
|
-
* support are implemented: old "Visualize" and new "Konva". Default is "Konva". {@link MarkupType}
|
|
8
|
-
*/
|
|
9
|
-
static createMarkup(markupType: MarkupType): IMarkup;
|
|
10
|
-
private static createKonva;
|
|
11
|
-
private static createVisualize;
|
|
11
|
+
static createMarkup(markupType?: MarkupType): IMarkup;
|
|
12
12
|
}
|
package/lib/Viewer/Viewer.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { EventEmitter2 } from "@inweb/eventemitter2";
|
|
2
2
|
import { Assembly, Client, File, Model } from "@inweb/client";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { CanvasEventMap, Dragger, IDragger, IOptions, IViewer, IViewpoint, Options, OptionsEventMap, ViewerEventMap } from "@inweb/viewer-core";
|
|
4
|
+
import { IMarkup } from "./Markup/IMarkup";
|
|
5
|
+
import { IWorldTransform } from "./Markup/IWorldTransform";
|
|
6
|
+
import { MarkupType } from "./Markup/MarkupFactory";
|
|
6
7
|
/**
|
|
7
8
|
* The `Client.js` library class that provides methods to integrate with the
|
|
8
|
-
*
|
|
9
|
+
* {@link https://cloud.opendesign.com/docs/index.html#/visualizejs | VisualizeJS} library.
|
|
9
10
|
*/
|
|
10
|
-
export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventMap> implements IViewer {
|
|
11
|
+
export declare class Viewer extends EventEmitter2<ViewerEventMap & CanvasEventMap & OptionsEventMap> implements IViewer, IWorldTransform {
|
|
11
12
|
private _activeDragger;
|
|
12
13
|
private _zoomWheelDragger;
|
|
13
14
|
private _gestureManager;
|
|
@@ -19,12 +20,12 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
19
20
|
protected _visualizeJsUrl: string;
|
|
20
21
|
protected _visualizeJs: any;
|
|
21
22
|
private canvaseventlistener;
|
|
22
|
-
draggerFactory: Map<string, typeof
|
|
23
|
+
draggerFactory: Map<string, typeof Dragger>;
|
|
23
24
|
canvasEvents: string[];
|
|
24
25
|
private frameId;
|
|
25
26
|
private _resizeObserver;
|
|
27
|
+
private _markup;
|
|
26
28
|
canvas: HTMLCanvasElement | undefined;
|
|
27
|
-
markup: IMarkup;
|
|
28
29
|
_abortController: AbortController | undefined;
|
|
29
30
|
_abortControllerForRequestMap: Map<string, AbortController> | undefined;
|
|
30
31
|
_abortControllerForReferences: AbortController | undefined;
|
|
@@ -40,10 +41,10 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
40
41
|
* _Note: Your own `VisualizeJS` library version must match the version of the `Client.js`
|
|
41
42
|
* you are using._
|
|
42
43
|
* @param params.enableAutoUpdate - Enable auto-update of the viewer after any changes. If
|
|
43
|
-
* the auto-update is disabled, you need to
|
|
44
|
-
*
|
|
45
|
-
* @param params.markupType - Specifies
|
|
46
|
-
*
|
|
44
|
+
* the auto-update is disabled, you need to register the `update` event handler and update
|
|
45
|
+
* the viewer and the active dragger manually. Default is `true`.
|
|
46
|
+
* @param params.markupType - Specifies type of the markup core: `Visualize` (deprecated) or
|
|
47
|
+
* `Konva`. Default is `Konva`.
|
|
47
48
|
*/
|
|
48
49
|
constructor(client?: Client, params?: {
|
|
49
50
|
visualizeJsUrl?: string;
|
|
@@ -51,15 +52,21 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
51
52
|
markupType?: MarkupType;
|
|
52
53
|
});
|
|
53
54
|
/**
|
|
54
|
-
*
|
|
55
|
+
* Viewer options.
|
|
55
56
|
*/
|
|
56
57
|
get options(): Options;
|
|
57
58
|
/**
|
|
58
|
-
* `VisualizeJS` library URL. Use {@link
|
|
59
|
+
* `VisualizeJS` library URL. Use {@link configure | configure()} to change library URL.
|
|
59
60
|
*
|
|
60
61
|
* @readonly
|
|
61
62
|
*/
|
|
62
63
|
get visualizeJsUrl(): string;
|
|
64
|
+
/**
|
|
65
|
+
* 2D markup core.
|
|
66
|
+
*
|
|
67
|
+
* @readonly
|
|
68
|
+
*/
|
|
69
|
+
get markup(): IMarkup;
|
|
63
70
|
/**
|
|
64
71
|
* Change the viewer configuration parameters.
|
|
65
72
|
*
|
|
@@ -70,25 +77,19 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
70
77
|
configure(params: {
|
|
71
78
|
visualizeJsUrl?: string;
|
|
72
79
|
}): this;
|
|
73
|
-
/**
|
|
74
|
-
* A [Viewer]{@link Viewer} event measuring progress of loading a `VisualizeJS` library.
|
|
75
|
-
*
|
|
76
|
-
* @property {string} type - `visualizeprogress`
|
|
77
|
-
* @property {number} loaded - A 64-bit unsigned integer value indicating the amount of work
|
|
78
|
-
* already performed by the underlying process. The ratio of work done can be calculated by
|
|
79
|
-
* dividing total by the value of this property.
|
|
80
|
-
* @property {number} total - A 64-bit unsigned integer representing the total amount of work
|
|
81
|
-
* that the underlying process is in the progress of performing.
|
|
82
|
-
* @event visualizeprogress
|
|
83
|
-
*/
|
|
84
80
|
/**
|
|
85
81
|
* Load `VisualizeJS` module and initialize it with the specified canvas. Call
|
|
86
|
-
* {@link
|
|
82
|
+
* {@link dispose | dispose()} to release allocated resources.
|
|
87
83
|
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
84
|
+
* Fires:
|
|
85
|
+
*
|
|
86
|
+
* - {@link InitializeProgressEvent | initializeprogress}
|
|
87
|
+
*
|
|
88
|
+
* @param canvas -
|
|
89
|
+
* {@link https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement | HTMLCanvasElement}
|
|
90
|
+
* for `VisualizeJS`.
|
|
90
91
|
* @param onProgress - A callback function that handles events measuring progress of loading
|
|
91
|
-
* of the `VisualizeJS` library.
|
|
92
|
+
* of the `VisualizeJS` library.
|
|
92
93
|
*/
|
|
93
94
|
initialize(canvas: HTMLCanvasElement, onProgress?: (event: ProgressEvent) => void): Promise<this>;
|
|
94
95
|
/**
|
|
@@ -167,23 +168,22 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
167
168
|
* @param name - Dragger name.
|
|
168
169
|
* @param dragger - Dragger class.
|
|
169
170
|
*/
|
|
170
|
-
registerDragger(name: string, dragger: typeof
|
|
171
|
+
registerDragger(name: string, dragger: typeof Dragger): void;
|
|
171
172
|
/**
|
|
172
173
|
* Returns active dragger instance or `null` if there is no active dragger.
|
|
173
174
|
*/
|
|
174
|
-
activeDragger():
|
|
175
|
+
activeDragger(): IDragger | null;
|
|
175
176
|
/**
|
|
176
|
-
* Set active dragger. `Viewer` must be
|
|
177
|
-
* dragger or exception is thrown.
|
|
177
|
+
* Set active dragger. `Viewer` must be initialized before enable dragger or exception is thrown.
|
|
178
178
|
*
|
|
179
179
|
* Fires:
|
|
180
180
|
*
|
|
181
181
|
* - {@link ChangeActiveDraggerEvent | changeactivedragger}
|
|
182
182
|
*
|
|
183
|
-
* @param name - Dragger name. Can be one of the {@link
|
|
183
|
+
* @param name - Dragger name. Can be one of the {@link draggers} list.
|
|
184
184
|
* @returns Returns active dragger instance or `null` if there is no dragger with the given name.
|
|
185
185
|
*/
|
|
186
|
-
setActiveDragger(name: string):
|
|
186
|
+
setActiveDragger(name: string): IDragger | null;
|
|
187
187
|
/**
|
|
188
188
|
* Reset the state of the active dragger.
|
|
189
189
|
*/
|
|
@@ -204,6 +204,27 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
204
204
|
* Returns `true` if current drawing is 3D drawing.
|
|
205
205
|
*/
|
|
206
206
|
is3D(): boolean;
|
|
207
|
+
screenToWorld(position: {
|
|
208
|
+
x: number;
|
|
209
|
+
y: number;
|
|
210
|
+
}): {
|
|
211
|
+
x: number;
|
|
212
|
+
y: number;
|
|
213
|
+
z: number;
|
|
214
|
+
};
|
|
215
|
+
worldToScreen(position: {
|
|
216
|
+
x: number;
|
|
217
|
+
y: number;
|
|
218
|
+
z: number;
|
|
219
|
+
}): {
|
|
220
|
+
x: number;
|
|
221
|
+
y: number;
|
|
222
|
+
};
|
|
223
|
+
getScale(): {
|
|
224
|
+
x: number;
|
|
225
|
+
y: number;
|
|
226
|
+
z: number;
|
|
227
|
+
};
|
|
207
228
|
/**
|
|
208
229
|
* Returns a list of original handles for the selected entities.
|
|
209
230
|
*/
|
|
@@ -224,7 +245,6 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
224
245
|
* Load model references into the viewer. References are images, fonts, or any other files to
|
|
225
246
|
* correct rendering of the model.
|
|
226
247
|
*
|
|
227
|
-
* @async
|
|
228
248
|
* @param model - Instance of model with references. If a `File` instance is specified
|
|
229
249
|
* instead of a model, the file references will be loaded.
|
|
230
250
|
*/
|
|
@@ -234,9 +254,8 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
234
254
|
/**
|
|
235
255
|
* Loads a model of a file or assembly into the viewer.
|
|
236
256
|
*
|
|
237
|
-
* This method requires a
|
|
238
|
-
*
|
|
239
|
-
* {@link Viewer#openVsfxFile | openVsfxFile()}.
|
|
257
|
+
* This method requires a {@link Client} instance to work. For standalone viewer instance use
|
|
258
|
+
* {@link openVsfFile | openVsfFile()} or {@link openVsfxFile | openVsfxFile()}.
|
|
240
259
|
*
|
|
241
260
|
* Fires:
|
|
242
261
|
*
|
|
@@ -248,7 +267,6 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
248
267
|
* - {@link GeometryEndEvent | geometryend}
|
|
249
268
|
* - {@link GeometryErrorEvent | geometryerror}
|
|
250
269
|
*
|
|
251
|
-
* @async
|
|
252
270
|
* @param file - File or Assembly or Model instance to load. If a `File` instance with
|
|
253
271
|
* multiple models is specified, the default model will be loaded. If there is no default
|
|
254
272
|
* model, first availiable model will be loaded.
|
|
@@ -285,7 +303,7 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
285
303
|
*/
|
|
286
304
|
openVsfxFile(buffer: Uint8Array | ArrayBuffer): this;
|
|
287
305
|
/**
|
|
288
|
-
* Cancels asynchronous model loading started by {@link
|
|
306
|
+
* Cancels asynchronous model loading started by {@link open | open()}.
|
|
289
307
|
*/
|
|
290
308
|
cancel(): this;
|
|
291
309
|
/**
|
|
@@ -332,14 +350,14 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & OptionsEventM
|
|
|
332
350
|
addMarkupEntity(entityName: string): any;
|
|
333
351
|
/**
|
|
334
352
|
* Draw a viewpoint. To get a list of available model viewpoints, use the
|
|
335
|
-
*
|
|
353
|
+
* `Model.getViewpoints()` or `File.getViewpoints()` or `Assembly.getViewpoints()`.
|
|
336
354
|
*
|
|
337
355
|
* @param viewpoint - Viewpoint data.
|
|
338
356
|
*/
|
|
339
357
|
drawViewpoint(viewpoint: IViewpoint): void;
|
|
340
358
|
/**
|
|
341
359
|
* Create a viewpoint. To add a viewpoint to the list of model viewpoints, use the
|
|
342
|
-
*
|
|
360
|
+
* `Model.saveViewpoint()` or `File.saveViewpoint()` or . `Assembly.saveViewpoint()`.
|
|
343
361
|
*/
|
|
344
362
|
createViewpoint(): IViewpoint;
|
|
345
363
|
private getPoint3dFromArray;
|
package/lib/index.d.ts
CHANGED
|
@@ -2,3 +2,15 @@ import "./Viewer/Commands";
|
|
|
2
2
|
export * from "@inweb/viewer-core";
|
|
3
3
|
export { Viewer } from "./Viewer/Viewer";
|
|
4
4
|
export { OdBaseDragger } from "./Viewer/Draggers/Common/OdBaseDragger";
|
|
5
|
+
export { IMarkup } from "./Viewer/Markup/IMarkup";
|
|
6
|
+
export { IMarkupArrow } from "./Viewer/Markup/Api/IMarkupArrow";
|
|
7
|
+
export { IMarkupCloud } from "./Viewer/Markup/Api/IMarkupCloud";
|
|
8
|
+
export { IMarkupColorable } from "./Viewer/Markup/Api/IMarkupColorable";
|
|
9
|
+
export { IMarkupEllipse } from "./Viewer/Markup/Api/IMarkupEllipse";
|
|
10
|
+
export { IMarkupImage } from "./Viewer/Markup/Api/IMarkupImage";
|
|
11
|
+
export { IMarkupLine, MarkupLineType } from "./Viewer/Markup/Api/IMarkupLine";
|
|
12
|
+
export { IMarkupRectangle } from "./Viewer/Markup/Api/IMarkupRectangle";
|
|
13
|
+
export { IMarkupObject } from "./Viewer/Markup/Api/IMarkupObject";
|
|
14
|
+
export { IMarkupText } from "./Viewer/Markup/Api/IMarkupText";
|
|
15
|
+
export { IWorldTransform } from "./Viewer/Markup/IWorldTransform";
|
|
16
|
+
export { MarkupType } from "./Viewer/Markup/MarkupFactory";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inweb/viewer-visualize",
|
|
3
|
-
"version": "25.7.
|
|
3
|
+
"version": "25.7.2",
|
|
4
4
|
"description": "3D CAD and BIM data Viewer powered by Visualize",
|
|
5
5
|
"homepage": "https://cloud.opendesign.com/docs/index.html",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"scripts": {
|
|
27
27
|
"build": "rollup -c rollup.config.js",
|
|
28
28
|
"test": "karma start karma.conf.js",
|
|
29
|
-
"
|
|
29
|
+
"docs": "typedoc"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@inweb/client": "~25.7.
|
|
33
|
-
"@inweb/eventemitter2": "~25.7.
|
|
34
|
-
"@inweb/viewer-core": "~25.7.
|
|
32
|
+
"@inweb/client": "~25.7.2",
|
|
33
|
+
"@inweb/eventemitter2": "~25.7.2",
|
|
34
|
+
"@inweb/viewer-core": "~25.7.2"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"canvas": "^2.11.2",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///////////////////////////////////////////////////////////////////////////////
|
|
2
|
-
// Copyright (C) 2002-
|
|
2
|
+
// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
|
|
3
3
|
// All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This software and its documentation and related materials are owned by
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// This application incorporates Open Design Alliance software pursuant to a
|
|
16
16
|
// license agreement with Open Design Alliance.
|
|
17
|
-
// Open Design Alliance Copyright (C) 2002-
|
|
17
|
+
// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
|
|
18
18
|
// All rights reserved.
|
|
19
19
|
//
|
|
20
20
|
// By use of this software, its documentation or related materials, you
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///////////////////////////////////////////////////////////////////////////////
|
|
2
|
-
// Copyright (C) 2002-
|
|
2
|
+
// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
|
|
3
3
|
// All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This software and its documentation and related materials are owned by
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// This application incorporates Open Design Alliance software pursuant to a
|
|
16
16
|
// license agreement with Open Design Alliance.
|
|
17
|
-
// Open Design Alliance Copyright (C) 2002-
|
|
17
|
+
// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
|
|
18
18
|
// All rights reserved.
|
|
19
19
|
//
|
|
20
20
|
// By use of this software, its documentation or related materials, you
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///////////////////////////////////////////////////////////////////////////////
|
|
2
|
-
// Copyright (C) 2002-
|
|
2
|
+
// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
|
|
3
3
|
// All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This software and its documentation and related materials are owned by
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// This application incorporates Open Design Alliance software pursuant to a
|
|
16
16
|
// license agreement with Open Design Alliance.
|
|
17
|
-
// Open Design Alliance Copyright (C) 2002-
|
|
17
|
+
// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
|
|
18
18
|
// All rights reserved.
|
|
19
19
|
//
|
|
20
20
|
// By use of this software, its documentation or related materials, you
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///////////////////////////////////////////////////////////////////////////////
|
|
2
|
-
// Copyright (C) 2002-
|
|
2
|
+
// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
|
|
3
3
|
// All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This software and its documentation and related materials are owned by
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// This application incorporates Open Design Alliance software pursuant to a
|
|
16
16
|
// license agreement with Open Design Alliance.
|
|
17
|
-
// Open Design Alliance Copyright (C) 2002-
|
|
17
|
+
// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
|
|
18
18
|
// All rights reserved.
|
|
19
19
|
//
|
|
20
20
|
// By use of this software, its documentation or related materials, you
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///////////////////////////////////////////////////////////////////////////////
|
|
2
|
-
// Copyright (C) 2002-
|
|
2
|
+
// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
|
|
3
3
|
// All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This software and its documentation and related materials are owned by
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// This application incorporates Open Design Alliance software pursuant to a
|
|
16
16
|
// license agreement with Open Design Alliance.
|
|
17
|
-
// Open Design Alliance Copyright (C) 2002-
|
|
17
|
+
// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
|
|
18
18
|
// All rights reserved.
|
|
19
19
|
//
|
|
20
20
|
// By use of this software, its documentation or related materials, you
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///////////////////////////////////////////////////////////////////////////////
|
|
2
|
-
// Copyright (C) 2002-
|
|
2
|
+
// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
|
|
3
3
|
// All rights reserved.
|
|
4
4
|
//
|
|
5
5
|
// This software and its documentation and related materials are owned by
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// This application incorporates Open Design Alliance software pursuant to a
|
|
16
16
|
// license agreement with Open Design Alliance.
|
|
17
|
-
// Open Design Alliance Copyright (C) 2002-
|
|
17
|
+
// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
|
|
18
18
|
// All rights reserved.
|
|
19
19
|
//
|
|
20
20
|
// By use of this software, its documentation or related materials, you
|