@xtctwins/tctwins-bimx-viewer 0.1.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.
- package/README.md +0 -0
- package/dist/tctwins-bimx-viewer.min.es.js +847 -0
- package/dist/version.js +2 -0
- package/package.json +60 -0
- package/types/index.d.ts +6 -0
- package/types/src/BIMViewer.d.ts +668 -0
- package/types/src/BusyModal.d.ts +28 -0
- package/types/src/Controller.d.ts +142 -0
- package/types/src/EventTrigger.d.ts +23 -0
- package/types/src/IFCElementDescriptions/IFCElementDescriptions.d.ts +780 -0
- package/types/src/IFCObjectDefaults/ModelIFCObjectColors.d.ts +26 -0
- package/types/src/IFCObjectDefaults/ViewerIFCObjectColors.d.ts +161 -0
- package/types/src/TMap.d.ts +27 -0
- package/types/src/collision/ObjectsKdTree3.d.ts +37 -0
- package/types/src/contextMenus/CanvasContextMenu.d.ts +12 -0
- package/types/src/contextMenus/ModelsContextMenu.d.ts +13 -0
- package/types/src/contextMenus/ObjectContextMenu.d.ts +20 -0
- package/types/src/contextMenus/TreeViewContextMenu.d.ts +20 -0
- package/types/src/explorer/ClassesExplorer.d.ts +75 -0
- package/types/src/explorer/ModelsExplorer.d.ts +106 -0
- package/types/src/explorer/ObjectsExplorer.d.ts +44 -0
- package/types/src/explorer/StoreysExplorer.d.ts +58 -0
- package/types/src/inspector/PropertiesInspector.d.ts +39 -0
- package/types/src/messages.d.ts +373 -0
- package/types/src/server/OSSHelper.d.ts +4 -0
- package/types/src/server/Server.d.ts +129 -0
- package/types/src/toolbar/AnnotationTool.d.ts +71 -0
- package/types/src/toolbar/CommentsTool.d.ts +248 -0
- package/types/src/toolbar/FirstPersonMode.d.ts +55 -0
- package/types/src/toolbar/FitAction.d.ts +21 -0
- package/types/src/toolbar/HideTool.d.ts +13 -0
- package/types/src/toolbar/MarqueeSelectionTool.d.ts +28 -0
- package/types/src/toolbar/MeasureTool.d.ts +12 -0
- package/types/src/toolbar/MeasureTools/MeasureAngleTool.d.ts +115 -0
- package/types/src/toolbar/MeasureTools/MeasureDistanceTool.d.ts +123 -0
- package/types/src/toolbar/NavCubeMode.d.ts +21 -0
- package/types/src/toolbar/OrthoMode.d.ts +21 -0
- package/types/src/toolbar/QueryTool.d.ts +13 -0
- package/types/src/toolbar/ResetAction.d.ts +16 -0
- package/types/src/toolbar/SectionTool.d.ts +131 -0
- package/types/src/toolbar/SelectionTool.d.ts +14 -0
- package/types/src/toolbar/SettingTool.d.ts +13 -0
- package/types/src/toolbar/ShowSpacesMode.d.ts +22 -0
- package/types/src/toolbar/ThreeDMode.d.ts +20 -0
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import Controller from "../Controller";
|
|
2
|
+
import EventTrigger from "../EventTrigger";
|
|
3
|
+
export declare type pathComments = {
|
|
4
|
+
/** 当前批注ID */
|
|
5
|
+
commentsId: string;
|
|
6
|
+
/** 当前批注类型 */
|
|
7
|
+
type: "path";
|
|
8
|
+
/** 画笔路径 */
|
|
9
|
+
d_path: string;
|
|
10
|
+
/** 颜色 */
|
|
11
|
+
stroke: string;
|
|
12
|
+
/** 画笔粗细 */
|
|
13
|
+
stroke_width: string;
|
|
14
|
+
};
|
|
15
|
+
export declare type circleComments = {
|
|
16
|
+
/** 当前批注ID */
|
|
17
|
+
commentsId: string;
|
|
18
|
+
/** 当前批注类型 */
|
|
19
|
+
type: "ellipse";
|
|
20
|
+
/** x轴位置 */
|
|
21
|
+
cx: string;
|
|
22
|
+
/** y轴位置 */
|
|
23
|
+
cy: string;
|
|
24
|
+
/** 半径x */
|
|
25
|
+
rx: string;
|
|
26
|
+
/** 半径y */
|
|
27
|
+
ry: string;
|
|
28
|
+
/** 颜色 */
|
|
29
|
+
stroke: string;
|
|
30
|
+
/** 画笔粗细 */
|
|
31
|
+
stroke_width: string;
|
|
32
|
+
};
|
|
33
|
+
export declare type rectangleComments = {
|
|
34
|
+
/** 当前批注ID */
|
|
35
|
+
commentsId: string;
|
|
36
|
+
/** 当前批注类型 */
|
|
37
|
+
type: "rect";
|
|
38
|
+
/** 宽 */
|
|
39
|
+
x: string;
|
|
40
|
+
/** 高 */
|
|
41
|
+
y: string;
|
|
42
|
+
/** 颜色 */
|
|
43
|
+
stroke: string;
|
|
44
|
+
/** 画笔粗细 */
|
|
45
|
+
stroke_width: string;
|
|
46
|
+
};
|
|
47
|
+
export declare type arrowComments = {
|
|
48
|
+
/** 当前批注ID */
|
|
49
|
+
commentsId: string;
|
|
50
|
+
/** 当前批注类型 */
|
|
51
|
+
type: "arrow";
|
|
52
|
+
/** 箭头起点 */
|
|
53
|
+
start: string;
|
|
54
|
+
/** 箭头终点 */
|
|
55
|
+
end: string;
|
|
56
|
+
/** 颜色 */
|
|
57
|
+
stroke: string;
|
|
58
|
+
/** 画笔粗细 */
|
|
59
|
+
stroke_width: string;
|
|
60
|
+
};
|
|
61
|
+
export declare type textComments = {
|
|
62
|
+
/** 当前批注ID */
|
|
63
|
+
commentsId: string;
|
|
64
|
+
/** 当前批注类型 */
|
|
65
|
+
type: "text";
|
|
66
|
+
/** 文字内容 */
|
|
67
|
+
content: string;
|
|
68
|
+
/** 颜色 */
|
|
69
|
+
stroke: string;
|
|
70
|
+
/** 画笔粗细 */
|
|
71
|
+
stroke_width: string;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* 表示截图工具类
|
|
75
|
+
* @class
|
|
76
|
+
*/
|
|
77
|
+
export default class CommentsTool extends Controller {
|
|
78
|
+
protected eventTrigger: EventTrigger;
|
|
79
|
+
protected _commentsList: any;
|
|
80
|
+
protected _currentsComments: any;
|
|
81
|
+
protected _currentMode: string;
|
|
82
|
+
protected _Pathcolor: string;
|
|
83
|
+
protected _Ellipsecolor: string;
|
|
84
|
+
protected _Rectcolor: string;
|
|
85
|
+
protected _Arrowcolor: string;
|
|
86
|
+
protected _Textcolor: string;
|
|
87
|
+
protected _PathstrokeWidth: string;
|
|
88
|
+
protected _EllipsestrokeWidth: string;
|
|
89
|
+
protected _RectstrokeWidth: string;
|
|
90
|
+
protected _ArrowstrokeWidth: string;
|
|
91
|
+
protected _TextstrokeWidth: string;
|
|
92
|
+
protected _FontSize: string;
|
|
93
|
+
protected _stratchPos: string;
|
|
94
|
+
protected isCreating: boolean;
|
|
95
|
+
protected isDrawing: boolean;
|
|
96
|
+
protected isChosed: boolean;
|
|
97
|
+
protected isHolding: boolean;
|
|
98
|
+
protected isStretch: boolean;
|
|
99
|
+
protected isMoving: boolean;
|
|
100
|
+
protected isHovering: boolean;
|
|
101
|
+
protected isDuplicate: boolean;
|
|
102
|
+
protected isTyping: boolean;
|
|
103
|
+
protected chosedTarget: any;
|
|
104
|
+
protected selectionBox: any;
|
|
105
|
+
protected handles: any;
|
|
106
|
+
protected _revocationMechanism: RevocationMechanism | null;
|
|
107
|
+
protected _offsetX: number;
|
|
108
|
+
protected _offsetY: number;
|
|
109
|
+
protected _isTouch: boolean;
|
|
110
|
+
/**
|
|
111
|
+
* 创建一个截图工具对象
|
|
112
|
+
* @param {*} parent
|
|
113
|
+
* @param {*} cfg
|
|
114
|
+
*/
|
|
115
|
+
constructor(parent: any, cfg: any);
|
|
116
|
+
saveSVG(): void;
|
|
117
|
+
protected initEventListeners(): void;
|
|
118
|
+
clickCreateText(touchevent: any, textContent: string): void;
|
|
119
|
+
protected getInitVector(vectorNum1: number, vectorNum2: number): number[];
|
|
120
|
+
protected getVerticalUnitVector(vectorNum1: number, vectorNum2: number): number[];
|
|
121
|
+
protected getTwoPointLength(Num1: number, Num2: number): number;
|
|
122
|
+
protected hiddenAllInput(): void;
|
|
123
|
+
protected showHiddenSelectedBox(show: boolean): void;
|
|
124
|
+
protected updateSelectionBox(): void;
|
|
125
|
+
protected publishComments(): void;
|
|
126
|
+
protected updateCommentsColor(): void;
|
|
127
|
+
protected deleteSvgCommentsListeners(): void;
|
|
128
|
+
protected deleteCurrentComments(): void;
|
|
129
|
+
protected getTime(): any;
|
|
130
|
+
protected duplicateComment(): void;
|
|
131
|
+
protected AddNewState(done: Function): void;
|
|
132
|
+
protected saveCurrentState(done: Function): void;
|
|
133
|
+
protected displayState(stateContent: gType[]): void;
|
|
134
|
+
autoSaveInput(callback?: Function): void;
|
|
135
|
+
/**
|
|
136
|
+
* 设置当前批注类型
|
|
137
|
+
* @param type
|
|
138
|
+
*/
|
|
139
|
+
setCurrentMode(type: string): void;
|
|
140
|
+
/**
|
|
141
|
+
* 重做
|
|
142
|
+
*/
|
|
143
|
+
ReDo(done?: Function): void;
|
|
144
|
+
/**
|
|
145
|
+
* 撤销
|
|
146
|
+
*/
|
|
147
|
+
UnDo(done?: Function): void;
|
|
148
|
+
checkSelectionBox(): void;
|
|
149
|
+
/**
|
|
150
|
+
* 结束批注功能
|
|
151
|
+
*/
|
|
152
|
+
endCommentsTool(): void;
|
|
153
|
+
/**
|
|
154
|
+
* 保存批注并发布
|
|
155
|
+
*/
|
|
156
|
+
saveComments(callback?: Function): void;
|
|
157
|
+
/**
|
|
158
|
+
* 修改选中对象颜色
|
|
159
|
+
* @param color 颜色名称或者代码
|
|
160
|
+
*/
|
|
161
|
+
setTargetColor(color: string): void;
|
|
162
|
+
/**
|
|
163
|
+
* 修改选中对象尺寸
|
|
164
|
+
* @param size 默认是5
|
|
165
|
+
*/
|
|
166
|
+
setTargetWidth(size: number): void;
|
|
167
|
+
/**
|
|
168
|
+
* 设置是否为触屏模式
|
|
169
|
+
* @param {boolean} value
|
|
170
|
+
*/
|
|
171
|
+
set isTouch(value: boolean);
|
|
172
|
+
set offsetX(x: number);
|
|
173
|
+
set offsetY(y: number);
|
|
174
|
+
/**
|
|
175
|
+
* 设置path批注颜色
|
|
176
|
+
* @param color 颜色名称或者代码
|
|
177
|
+
*/
|
|
178
|
+
set pathColor(color: string);
|
|
179
|
+
/**
|
|
180
|
+
* 设置Ellipse批注颜色
|
|
181
|
+
* @param color 颜色名称或者代码
|
|
182
|
+
*/
|
|
183
|
+
set ellipseColor(color: string);
|
|
184
|
+
/**
|
|
185
|
+
* 设置Rect批注颜色
|
|
186
|
+
* @param color 颜色名称或者代码
|
|
187
|
+
*/
|
|
188
|
+
set rectColor(color: string);
|
|
189
|
+
/**
|
|
190
|
+
* 设置Arrow批注颜色
|
|
191
|
+
* @param color 颜色名称或者代码
|
|
192
|
+
*/
|
|
193
|
+
set arrowColor(color: string);
|
|
194
|
+
/**
|
|
195
|
+
* 设置Text批注颜色
|
|
196
|
+
* @param color 颜色名称或者代码
|
|
197
|
+
*/
|
|
198
|
+
set textColor(color: string);
|
|
199
|
+
/**
|
|
200
|
+
* 设置Path批注粗细
|
|
201
|
+
* @param width 默认是3
|
|
202
|
+
*/
|
|
203
|
+
set pathStrokeWidth(width: string);
|
|
204
|
+
/**
|
|
205
|
+
* 设置Ellipse批注粗细
|
|
206
|
+
* @param width 默认是3
|
|
207
|
+
*/
|
|
208
|
+
set ellipseStrokeWidth(width: string);
|
|
209
|
+
/**
|
|
210
|
+
* 设置Rect批注粗细
|
|
211
|
+
* @param width 默认是3
|
|
212
|
+
*/
|
|
213
|
+
set rectStrokeWidth(width: string);
|
|
214
|
+
/**
|
|
215
|
+
* 设置Arrow箭头大小
|
|
216
|
+
* @param size 默认是3
|
|
217
|
+
*/
|
|
218
|
+
set arrowSize(size: string);
|
|
219
|
+
/**
|
|
220
|
+
* 设置Text字体大小
|
|
221
|
+
* @param size 默认是14,建议区间12-16
|
|
222
|
+
*/
|
|
223
|
+
set textFontSize(size: string);
|
|
224
|
+
destroy(): void;
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* 撤销机制
|
|
228
|
+
*/
|
|
229
|
+
declare class RevocationMechanism {
|
|
230
|
+
stateMap: Map<number, any>;
|
|
231
|
+
stateIndex: number;
|
|
232
|
+
protected eventTrigger: EventTrigger;
|
|
233
|
+
constructor(eventTrigger: EventTrigger);
|
|
234
|
+
AddNewState(content: gType[], done: Function): void;
|
|
235
|
+
ReDo(returnContent: Function): void;
|
|
236
|
+
UnDo(returnContent: Function): void;
|
|
237
|
+
destroy(): void;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* 表示批注的内容的g标签类,用于保存g标签内容及其子级内容
|
|
241
|
+
*/
|
|
242
|
+
declare class gType {
|
|
243
|
+
attributes: NamedNodeMap;
|
|
244
|
+
childrenContents: Map<string, any>;
|
|
245
|
+
textContent: string | null;
|
|
246
|
+
constructor(attributes: NamedNodeMap, childrenContents: Map<string, any>, textContent: string | null);
|
|
247
|
+
}
|
|
248
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { CameraControl } from "@xtctwins/tctwins-core";
|
|
2
|
+
import Controller from "../Controller";
|
|
3
|
+
/**
|
|
4
|
+
* 表示第一人称漫游模式
|
|
5
|
+
* @class
|
|
6
|
+
*/
|
|
7
|
+
export default class FirstPersonMode extends Controller {
|
|
8
|
+
/**
|
|
9
|
+
* 创建第一人称模式
|
|
10
|
+
* @param {*} parent
|
|
11
|
+
* @param {*} cfg
|
|
12
|
+
*/
|
|
13
|
+
protected cameraControl: CameraControl;
|
|
14
|
+
constructor(parent: any, cfg: any);
|
|
15
|
+
/**
|
|
16
|
+
* 停止漫游
|
|
17
|
+
*/
|
|
18
|
+
setdirectionChangeCancel(): void;
|
|
19
|
+
/**
|
|
20
|
+
* 设置漫游移动速率
|
|
21
|
+
* @param {number} rate
|
|
22
|
+
*/
|
|
23
|
+
set moveRate(rate: number);
|
|
24
|
+
/**
|
|
25
|
+
* 漫游向右
|
|
26
|
+
* @param {boolean} go
|
|
27
|
+
*/
|
|
28
|
+
set goRight(go: boolean);
|
|
29
|
+
/**
|
|
30
|
+
* 漫游向左
|
|
31
|
+
* @param {boolean} go
|
|
32
|
+
*/
|
|
33
|
+
set goLeft(go: boolean);
|
|
34
|
+
/**
|
|
35
|
+
* 漫游向上
|
|
36
|
+
* @param {boolean} go
|
|
37
|
+
*/
|
|
38
|
+
set goUp(go: boolean);
|
|
39
|
+
/**
|
|
40
|
+
* 漫游向下
|
|
41
|
+
* @param {boolean} go
|
|
42
|
+
*/
|
|
43
|
+
set goDown(go: boolean);
|
|
44
|
+
/**
|
|
45
|
+
* 漫游向前
|
|
46
|
+
* @param {boolean} go
|
|
47
|
+
*/
|
|
48
|
+
set goForward(go: boolean);
|
|
49
|
+
/**
|
|
50
|
+
* 漫游向后
|
|
51
|
+
* @param {boolean} go
|
|
52
|
+
*/
|
|
53
|
+
set goBackward(go: boolean);
|
|
54
|
+
private smallCanvas;
|
|
55
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Controller from "../Controller";
|
|
2
|
+
/**
|
|
3
|
+
* 表示视角自适应的类
|
|
4
|
+
* @class
|
|
5
|
+
*/
|
|
6
|
+
export default class FitAction extends Controller {
|
|
7
|
+
/**
|
|
8
|
+
* 创建视角自适应实例
|
|
9
|
+
* @param {*} parent
|
|
10
|
+
* @param {*} cfg
|
|
11
|
+
*/
|
|
12
|
+
constructor(parent: any, cfg?: any);
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
16
|
+
fit(callback?: Function): void;
|
|
17
|
+
set fov(fov: any);
|
|
18
|
+
get fov(): any;
|
|
19
|
+
set duration(duration: any);
|
|
20
|
+
get duration(): any;
|
|
21
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Frustum } from "@xtctwins/tctwins-core";
|
|
2
|
+
import Controller from "../Controller";
|
|
3
|
+
import ObjectsKdTree3 from "../collision/ObjectsKdTree3";
|
|
4
|
+
/**
|
|
5
|
+
* @ignore
|
|
6
|
+
* 表示框选工具类
|
|
7
|
+
* @class
|
|
8
|
+
*/
|
|
9
|
+
export default class MarqueeSelectionTool extends Controller {
|
|
10
|
+
protected _objectsKdTree3: ObjectsKdTree3;
|
|
11
|
+
protected _marquee: any;
|
|
12
|
+
protected _marqueeFrustum: Frustum;
|
|
13
|
+
protected _marqueeFrustumProjMat: any;
|
|
14
|
+
protected _marqueeDir: any;
|
|
15
|
+
protected _marqueeElement: HTMLElement;
|
|
16
|
+
/**
|
|
17
|
+
* 创建一个框选工具对象
|
|
18
|
+
* @param {*} parent
|
|
19
|
+
* @param {*} cfg
|
|
20
|
+
*/
|
|
21
|
+
constructor(parent: any, cfg: any);
|
|
22
|
+
/**
|
|
23
|
+
*
|
|
24
|
+
*/
|
|
25
|
+
protected _setMarqueeDir(marqueeDir: any): void;
|
|
26
|
+
protected _marqueePick(): any;
|
|
27
|
+
protected _buildMarqueeFrustum(): void;
|
|
28
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import Controller from "../Controller";
|
|
2
|
+
import MeasureAngleTool from "./MeasureTools/MeasureAngleTool";
|
|
3
|
+
import MeasureDistanceTool from "./MeasureTools/MeasureDistanceTool";
|
|
4
|
+
export default class MeasureTool extends Controller {
|
|
5
|
+
private _measure_distance_tool;
|
|
6
|
+
private _measure_angle_tool;
|
|
7
|
+
constructor(parent: any, cfg: any);
|
|
8
|
+
get measureAngleTool(): MeasureAngleTool;
|
|
9
|
+
get measureDistanceTool(): MeasureDistanceTool;
|
|
10
|
+
setMeasureOffSet(offsetX: number, offsetY: number): void;
|
|
11
|
+
destroy(): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { AngleMeasurement } from "@xtctwins/tctwins-core/types/plugins/AngleMeasurementsPlugin/AngleMeasurement";
|
|
2
|
+
import Controller from "../../Controller";
|
|
3
|
+
import EventTrigger from "../../EventTrigger";
|
|
4
|
+
/**
|
|
5
|
+
* 表示角度测量类
|
|
6
|
+
* @class */
|
|
7
|
+
export default class MeasureAngleTool extends Controller {
|
|
8
|
+
private _angleMeasurementsPlugin;
|
|
9
|
+
private _angleMeasurementsMouseControl;
|
|
10
|
+
private _angleMeasurementsTouchControl;
|
|
11
|
+
protected eventTrigger: EventTrigger;
|
|
12
|
+
private _approximate;
|
|
13
|
+
private _precision;
|
|
14
|
+
private angleMeasureContainer;
|
|
15
|
+
constructor(parent: any, cfg: any);
|
|
16
|
+
initSettings(): void;
|
|
17
|
+
protected _initializeMeasure(): void;
|
|
18
|
+
/**
|
|
19
|
+
* 设置精度
|
|
20
|
+
* @param {number} precision
|
|
21
|
+
*/
|
|
22
|
+
set precision(precision: number);
|
|
23
|
+
get precision(): number;
|
|
24
|
+
/**
|
|
25
|
+
* @param {number} offsetX
|
|
26
|
+
*/
|
|
27
|
+
set offsetX(offsetX: number);
|
|
28
|
+
/**
|
|
29
|
+
* @return {number} mouse offset
|
|
30
|
+
*/
|
|
31
|
+
get offsetX(): number;
|
|
32
|
+
/**
|
|
33
|
+
* @param {number} offsetX
|
|
34
|
+
*/
|
|
35
|
+
set offsetY(offsetY: number);
|
|
36
|
+
/**
|
|
37
|
+
* @return {number} mouse offset
|
|
38
|
+
*/
|
|
39
|
+
get offsetY(): number;
|
|
40
|
+
/**
|
|
41
|
+
* 设置是否自动捕捉聚焦
|
|
42
|
+
* @param snappingEnabled
|
|
43
|
+
* @returns
|
|
44
|
+
*/
|
|
45
|
+
setSnappingEnabled(snappingEnabled: boolean): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* @returns 返回测量结果个数
|
|
48
|
+
*/
|
|
49
|
+
getNumMeasurements(): number;
|
|
50
|
+
/**
|
|
51
|
+
* @returns 返回测量结果列表
|
|
52
|
+
*/
|
|
53
|
+
getMeasurementsList(): {
|
|
54
|
+
[key: string]: AngleMeasurement;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* @param id
|
|
58
|
+
* @returns 返回指定id测量对象
|
|
59
|
+
*/
|
|
60
|
+
getMeasurementById(id: string): AngleMeasurement;
|
|
61
|
+
/**
|
|
62
|
+
*
|
|
63
|
+
* @param id
|
|
64
|
+
* @returns 返回指定id测量角度结果
|
|
65
|
+
*/
|
|
66
|
+
getMeasureResultByID(id: string): number;
|
|
67
|
+
/**
|
|
68
|
+
* 设置指定id测量线的颜色
|
|
69
|
+
* @param id
|
|
70
|
+
* @param color
|
|
71
|
+
*/
|
|
72
|
+
setMeasureColorByID(id: string, color: string): void;
|
|
73
|
+
/**
|
|
74
|
+
* 设置指定id测量线能否识别 "mouseOver" "mouseLeave" 等事件
|
|
75
|
+
* @param id
|
|
76
|
+
* @param clickable
|
|
77
|
+
*/
|
|
78
|
+
setMeasureClickbleById(id: string, clickable: boolean): void;
|
|
79
|
+
/**
|
|
80
|
+
* 设置指定id测量对象高亮
|
|
81
|
+
* @param id
|
|
82
|
+
* @param highlighted
|
|
83
|
+
*/
|
|
84
|
+
setMeasureHightlighted(id: string, highlighted: boolean): void;
|
|
85
|
+
/**
|
|
86
|
+
* 设置所有高亮或取消
|
|
87
|
+
* @param highlighted
|
|
88
|
+
*/
|
|
89
|
+
setAllHightLighted(highlighted: boolean): void;
|
|
90
|
+
/**
|
|
91
|
+
* 设置指定id测量结果隐藏或显示
|
|
92
|
+
* @param id string
|
|
93
|
+
* @param visible boolean
|
|
94
|
+
*/
|
|
95
|
+
setVisibleById(id: string, visible: boolean): void;
|
|
96
|
+
/**
|
|
97
|
+
* 设置指定id角度标签隐藏或展示
|
|
98
|
+
* @param id
|
|
99
|
+
* @param angleVisible
|
|
100
|
+
*/
|
|
101
|
+
setAngleLabelVisible(id: string, angleVisible: boolean): void;
|
|
102
|
+
/**
|
|
103
|
+
* @param id 删除指定id测量对象
|
|
104
|
+
*/
|
|
105
|
+
destroyMeasurementById(id: string): void;
|
|
106
|
+
/**
|
|
107
|
+
* 清除所有测量内容
|
|
108
|
+
*/
|
|
109
|
+
clear(): void;
|
|
110
|
+
stop(): void;
|
|
111
|
+
/**
|
|
112
|
+
* destroy测量插件对象
|
|
113
|
+
*/
|
|
114
|
+
destroy(): void;
|
|
115
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { DistanceMeasurement } from "@xtctwins/tctwins-core/types/plugins/DistanceMeasurementsPlugin/DistanceMeasurement";
|
|
2
|
+
import Controller from "../../Controller";
|
|
3
|
+
import EventTrigger from "../../EventTrigger";
|
|
4
|
+
/**
|
|
5
|
+
* 表示距离测量类
|
|
6
|
+
* @class */
|
|
7
|
+
export default class MeasureDistanceTool extends Controller {
|
|
8
|
+
private _distanceMeasurementsPlugin;
|
|
9
|
+
private _distanceMeasurementsMouseControl;
|
|
10
|
+
private _distanceMeasurementsTouchControl;
|
|
11
|
+
protected eventTrigger: EventTrigger;
|
|
12
|
+
private _approximate;
|
|
13
|
+
private _precision;
|
|
14
|
+
private _unit;
|
|
15
|
+
private _scale;
|
|
16
|
+
private distanceMeasureContainer;
|
|
17
|
+
constructor(parent: any, cfg: any);
|
|
18
|
+
initSettings(): void;
|
|
19
|
+
protected _initializeMeasure(): void;
|
|
20
|
+
/**
|
|
21
|
+
* @param {string} unit
|
|
22
|
+
*/
|
|
23
|
+
set unit(unit: string);
|
|
24
|
+
set scale(scale: number);
|
|
25
|
+
get scale(): number;
|
|
26
|
+
/**
|
|
27
|
+
* 设置精度
|
|
28
|
+
* @param {number} precision
|
|
29
|
+
*/
|
|
30
|
+
set precision(precision: number);
|
|
31
|
+
get precision(): number;
|
|
32
|
+
/**
|
|
33
|
+
* @param {number} offsetX
|
|
34
|
+
*/
|
|
35
|
+
set offsetX(offsetX: number);
|
|
36
|
+
/**
|
|
37
|
+
* @return {number} mouse offset
|
|
38
|
+
*/
|
|
39
|
+
get offsetX(): number;
|
|
40
|
+
/**
|
|
41
|
+
* @param {number} offsetX
|
|
42
|
+
*/
|
|
43
|
+
set offsetY(offsetY: number);
|
|
44
|
+
/**
|
|
45
|
+
* @return {number} mouse offset
|
|
46
|
+
*/
|
|
47
|
+
get offsetY(): number;
|
|
48
|
+
/**
|
|
49
|
+
* 设置是否自动捕捉聚焦
|
|
50
|
+
* @param snappingEnabled
|
|
51
|
+
* @returns
|
|
52
|
+
*/
|
|
53
|
+
setSnappingEnabled(snappingEnabled: boolean): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* @returns 返回测量结果个数
|
|
56
|
+
*/
|
|
57
|
+
getNumMeasurements(): number;
|
|
58
|
+
/**
|
|
59
|
+
* @returns 返回测量结果列表
|
|
60
|
+
*/
|
|
61
|
+
getMeasurementsList(): {
|
|
62
|
+
[key: string]: DistanceMeasurement;
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* @param id
|
|
66
|
+
* @returns 返回指定id测量对象
|
|
67
|
+
*/
|
|
68
|
+
getMeasurementById(id: string): DistanceMeasurement;
|
|
69
|
+
/**
|
|
70
|
+
*
|
|
71
|
+
* @param id
|
|
72
|
+
* @returns 返回指定id测量距离结果
|
|
73
|
+
*/
|
|
74
|
+
getMeasureResultByID(id: string): number;
|
|
75
|
+
/**
|
|
76
|
+
* 设置指定id测量线的颜色
|
|
77
|
+
* @param id
|
|
78
|
+
* @param color
|
|
79
|
+
*/
|
|
80
|
+
setMeasureColorByID(id: string, color: string): void;
|
|
81
|
+
/**
|
|
82
|
+
* 设置指定id测量线能否识别 "mouseOver" "mouseLeave" 等事件
|
|
83
|
+
* @param id
|
|
84
|
+
* @param clickable
|
|
85
|
+
*/
|
|
86
|
+
setMeasureClickbleById(id: string, clickable: boolean): void;
|
|
87
|
+
/**
|
|
88
|
+
* 设置指定id测量对象高亮
|
|
89
|
+
* @param id
|
|
90
|
+
* @param highlighted
|
|
91
|
+
*/
|
|
92
|
+
setMeasureHightlighted(id: string, highlighted: boolean): void;
|
|
93
|
+
/**
|
|
94
|
+
* 设置所有高亮或取消
|
|
95
|
+
* @param highlighted
|
|
96
|
+
*/
|
|
97
|
+
setAllHightLighted(highlighted: boolean): void;
|
|
98
|
+
/**
|
|
99
|
+
* 设置指定id测量结果隐藏或显示
|
|
100
|
+
* @param id string
|
|
101
|
+
* @param visible boolean
|
|
102
|
+
*/
|
|
103
|
+
setVisibleById(id: string, visible: boolean): void;
|
|
104
|
+
/**
|
|
105
|
+
* 设置指定id测量标签隐藏或显示
|
|
106
|
+
* @param id string
|
|
107
|
+
* @param labelsVisible boolean
|
|
108
|
+
*/
|
|
109
|
+
setLableVisibleById(id: string, labelsVisible: boolean): void;
|
|
110
|
+
/**
|
|
111
|
+
* @param id 删除指定id测量对象
|
|
112
|
+
*/
|
|
113
|
+
destroyMeasurementById(id: string): void;
|
|
114
|
+
/**
|
|
115
|
+
* 清除所有测量内容
|
|
116
|
+
*/
|
|
117
|
+
clear(): void;
|
|
118
|
+
stop(): void;
|
|
119
|
+
/**
|
|
120
|
+
* destroy测量插件对象
|
|
121
|
+
*/
|
|
122
|
+
destroy(): void;
|
|
123
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NavCubePlugin } from "@xtctwins/tctwins-core";
|
|
2
|
+
import Controller from "../Controller";
|
|
3
|
+
/**
|
|
4
|
+
* 表示导航盒
|
|
5
|
+
* @class
|
|
6
|
+
*/
|
|
7
|
+
export default class NavCubeMode extends Controller {
|
|
8
|
+
protected _navCube: NavCubePlugin;
|
|
9
|
+
/**
|
|
10
|
+
* 创建一个导航盒对象
|
|
11
|
+
* @param {*} parent
|
|
12
|
+
* @param {*} cfg
|
|
13
|
+
*/
|
|
14
|
+
constructor(parent: any, cfg: any);
|
|
15
|
+
/**
|
|
16
|
+
* 设置相机视角方向
|
|
17
|
+
* @param areaId
|
|
18
|
+
*/
|
|
19
|
+
flyByClick(areaId: number): void;
|
|
20
|
+
destroy(): void;
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Controller from "../Controller";
|
|
2
|
+
/**
|
|
3
|
+
* 表示正交模式类
|
|
4
|
+
* @class
|
|
5
|
+
*/
|
|
6
|
+
export default class OrthoMode extends Controller {
|
|
7
|
+
protected _active: any;
|
|
8
|
+
/**
|
|
9
|
+
* 创建一个正交模式对象
|
|
10
|
+
* @param {*} parent
|
|
11
|
+
* @param {*} cfg
|
|
12
|
+
*/
|
|
13
|
+
constructor(parent: any, cfg: any);
|
|
14
|
+
/**
|
|
15
|
+
* @param {boolean} active
|
|
16
|
+
* @param {Function} done
|
|
17
|
+
*/
|
|
18
|
+
setActive(active: boolean, done?: Function): void;
|
|
19
|
+
protected _enterOrthoMode(done?: Function): void;
|
|
20
|
+
protected _exitOrthoMode(done?: Function): void;
|
|
21
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import Controller from "../Controller";
|
|
2
|
+
/**
|
|
3
|
+
* 表示重置响应类
|
|
4
|
+
* @class
|
|
5
|
+
*/
|
|
6
|
+
export default class ResetAction extends Controller {
|
|
7
|
+
protected _modelMementos: any;
|
|
8
|
+
/**
|
|
9
|
+
* 创建一个重置响应对象
|
|
10
|
+
* @param {*} parent
|
|
11
|
+
* @param {*} cfg
|
|
12
|
+
*/
|
|
13
|
+
constructor(parent: any, cfg?: any);
|
|
14
|
+
reset(): void;
|
|
15
|
+
protected _resetCamera(): void;
|
|
16
|
+
}
|