mxdraw 0.0.16 → 0.1.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/LICENSE +1 -0
- package/README.md +63 -162
- package/dist/lib/MxModule/McEdGetPointWorldDrawObject/McEdGetPointWorldDrawObjectClass.js +23 -11
- package/dist/lib/MxModule/McEdGetPointWorldDrawObject/McEdGetPointWorldDrawObjectClass.js.map +1 -1
- package/dist/lib/MxModule/McGiWorldDraw/McGiWorldDraw.js +3 -0
- package/dist/lib/MxModule/McGiWorldDraw/McGiWorldDraw.js.map +1 -0
- package/dist/lib/MxModule/McGiWorldDraw/index.js +3 -0
- package/dist/lib/MxModule/McGiWorldDraw/index.js.map +1 -0
- package/dist/lib/MxModule/McGiWorldDrawType/McGiWorldDrawType.js +20 -0
- package/dist/lib/MxModule/McGiWorldDrawType/McGiWorldDrawType.js.map +1 -0
- package/dist/lib/MxModule/McGiWorldDrawType/index.js +5 -0
- package/dist/lib/MxModule/McGiWorldDrawType/index.js.map +1 -0
- package/dist/lib/MxModule/MrxDbgUiPrPoint/MrxDbgUiPrPointClass.js +1 -1
- package/dist/lib/MxModule/MxDbEntity/MxDbEntity.js +122 -0
- package/dist/lib/MxModule/MxDbEntity/MxDbEntity.js.map +1 -0
- package/dist/lib/MxModule/MxDbEntity/index.js +6 -0
- package/dist/lib/MxModule/MxDbEntity/index.js.map +1 -0
- package/dist/lib/MxModule/MxDrawObject/MxDrawObject.js +322 -25
- package/dist/lib/MxModule/MxDrawObject/MxDrawObject.js.map +1 -1
- package/dist/lib/MxModule/MxFun/MxFun.js +45 -15
- package/dist/lib/MxModule/MxFun/MxFun.js.map +1 -1
- package/dist/lib/MxModule/MxFun/index.js +2 -2
- package/dist/lib/MxModule/MxFun/index.js.map +1 -1
- package/dist/lib/MxModule/MxThreeJS/MxThreeJS.js +1 -1
- package/dist/lib/MxModule/MxThreeJS/MxThreeJS.js.map +1 -1
- package/dist/lib/MxModule/loadCoreCode/index.js +6 -0
- package/dist/lib/MxModule/loadCoreCode/index.js.map +1 -0
- package/dist/lib/MxModule/loadCoreCode/loadCoreCode.js +109 -0
- package/dist/lib/MxModule/loadCoreCode/loadCoreCode.js.map +1 -0
- package/dist/lib/MxModule/{useCoreCode → loadCoreCode}/mxfun.es5.js +634 -471
- package/dist/lib/MxModule/loadCoreCode/mxfun.es5.js.map +1 -0
- package/dist/lib/MxModule/useCanvasResizeListener/useCanvasResizeListener.js +77 -24
- package/dist/lib/MxModule/useCanvasResizeListener/useCanvasResizeListener.js.map +1 -1
- package/dist/lib/doc.js +7 -3
- package/dist/lib/doc.js.map +1 -1
- package/dist/lib/mxdraw.js +13 -6
- package/dist/lib/mxdraw.js.map +1 -1
- package/dist/lib/tools/dynamicImport/index.js +143 -0
- package/dist/lib/tools/dynamicImport/index.js.map +1 -0
- package/dist/lib/types/McEdGetPointWorldDrawObject.js +3 -0
- package/dist/lib/types/McEdGetPointWorldDrawObject.js.map +1 -0
- package/dist/lib/types/MrxDbgUiPrPoint.js +3 -0
- package/dist/lib/types/MrxDbgUiPrPoint.js.map +1 -0
- package/dist/lib/types/MxCADObject.js +4 -0
- package/dist/lib/types/MxCADObject.js.map +1 -0
- package/dist/lib/types/MxDrawObject.js +3 -0
- package/dist/lib/types/MxDrawObject.js.map +1 -0
- package/dist/lib/types/MxFun.js +3 -0
- package/dist/lib/types/MxFun.js.map +1 -0
- package/dist/mxdraw.es5.js +28 -3
- package/dist/mxdraw.es5.js.map +1 -1
- package/dist/mxdraw.umd.js +29 -4
- package/dist/mxdraw.umd.js.map +1 -1
- package/dist/types/MxModule/McEdGetPointWorldDrawObject/McEdGetPointWorldDrawObjectClass.d.ts +13 -3
- package/dist/types/MxModule/McGiWorldDraw/McGiWorldDraw.d.ts +156 -0
- package/dist/types/MxModule/McGiWorldDraw/index.d.ts +2 -0
- package/dist/types/MxModule/McGiWorldDrawType/McGiWorldDrawType.d.ts +16 -0
- package/dist/types/MxModule/McGiWorldDrawType/index.d.ts +2 -0
- package/dist/types/MxModule/MrxDbgUiPrPoint/MrxDbgUiPrPointClass.d.ts +2 -2
- package/dist/types/MxModule/MxDbEntity/MxDbEntity.d.ts +159 -0
- package/dist/types/MxModule/MxDbEntity/index.d.ts +3 -0
- package/dist/types/MxModule/MxDrawObject/MxDrawObject.d.ts +251 -1
- package/dist/types/MxModule/MxFun/MxFun.d.ts +29 -12
- package/dist/types/MxModule/MxThreeJS/MxThreeJS.d.ts +10 -10
- package/dist/types/MxModule/loadCoreCode/index.d.ts +3 -0
- package/dist/types/MxModule/loadCoreCode/loadCoreCode.d.ts +9 -0
- package/dist/types/MxModule/{useCoreCode → loadCoreCode}/mxfun.es5.d.ts +0 -0
- package/dist/types/MxModule/store/store.d.ts +1 -1
- package/dist/types/MxModule/useCanvasResizeListener/useCanvasResizeListener.d.ts +9 -5
- package/dist/types/doc.d.ts +5 -2
- package/dist/types/mxdraw.d.ts +9 -4
- package/dist/types/tools/dynamicImport/index.d.ts +1 -0
- package/dist/types/types/McEdGetPointWorldDrawObject.d.ts +9 -0
- package/dist/types/types/MrxDbgUiPrPoint.d.ts +23 -0
- package/dist/types/types/MxCADObject.d.ts +40 -0
- package/dist/types/types/MxDrawObject.d.ts +50 -0
- package/dist/types/types/MxFun.d.ts +33 -0
- package/package.json +6 -1
- package/dist/lib/MxModule/useCoreCode/index.js +0 -6
- package/dist/lib/MxModule/useCoreCode/index.js.map +0 -1
- package/dist/lib/MxModule/useCoreCode/mxfun.es5.js.map +0 -1
- package/dist/lib/MxModule/useCoreCode/useCoreCode.js +0 -100
- package/dist/lib/MxModule/useCoreCode/useCoreCode.js.map +0 -1
- package/dist/types/MxModule/useCoreCode/index.d.ts +0 -3
- package/dist/types/MxModule/useCoreCode/useCoreCode.d.ts +0 -9
package/dist/types/MxModule/McEdGetPointWorldDrawObject/McEdGetPointWorldDrawObjectClass.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/** @module McEdGetPointWorldDrawObject*/
|
|
2
2
|
/**
|
|
3
3
|
* McEdGetPointWorldDrawObject 用于构建一个动态绘制回调对象
|
|
4
|
-
* ```typescript
|
|
4
|
+
* @example ```typescript
|
|
5
5
|
* Mx.McEdGetPointWorldDrawObject()
|
|
6
6
|
* ```
|
|
7
7
|
*/
|
|
8
8
|
export default class McEdGetPointWorldDrawObject {
|
|
9
9
|
[x: string]: any;
|
|
10
|
+
private _McEdGetPointWorldDraw;
|
|
10
11
|
constructor();
|
|
11
12
|
/**
|
|
12
13
|
* 绘制圆
|
|
@@ -68,7 +69,7 @@ export default class McEdGetPointWorldDrawObject {
|
|
|
68
69
|
* })
|
|
69
70
|
* ```
|
|
70
71
|
*/
|
|
71
|
-
setDraw(call: (currentPoint: THREE.Vector3, pWorldDraw
|
|
72
|
+
setDraw(call: (currentPoint: THREE.Vector3, pWorldDraw?: any) => void): void;
|
|
72
73
|
/**
|
|
73
74
|
* 设置绘制对象颜色.
|
|
74
75
|
* @param iColor 颜色
|
|
@@ -78,7 +79,7 @@ export default class McEdGetPointWorldDrawObject {
|
|
|
78
79
|
* pWorldDraw.setColor(0xFFFFFF)
|
|
79
80
|
* ```
|
|
80
81
|
*/
|
|
81
|
-
setColor(iColor:
|
|
82
|
+
setColor(iColor: ColorType): void;
|
|
82
83
|
/**
|
|
83
84
|
* 得到绘制对象颜色.
|
|
84
85
|
* @returns 颜色
|
|
@@ -88,4 +89,13 @@ export default class McEdGetPointWorldDrawObject {
|
|
|
88
89
|
* ```
|
|
89
90
|
*/
|
|
90
91
|
getColor(): void;
|
|
92
|
+
/**
|
|
93
|
+
* 动态绘制一个自定义实体
|
|
94
|
+
* @returns
|
|
95
|
+
* @example
|
|
96
|
+
* ``` typescript
|
|
97
|
+
*
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
drawCustomEntity(ent: any): void;
|
|
91
101
|
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
/** @module McGiWorldDraw*/
|
|
2
|
+
import McGiWorldDrawType from "../McGiWorldDrawType";
|
|
3
|
+
import MxDrawObject from "../MxDrawObject";
|
|
4
|
+
/**
|
|
5
|
+
* McGiWorldDraw 用于构建一个动态绘制回调对象的规范接口
|
|
6
|
+
* @abstract 是 {@link MxDbEntity.worldDraw }必须实现的抽象回调方法中的回调对象 通过回调对象完成一些动态绘制任务
|
|
7
|
+
* @example ```typescript
|
|
8
|
+
*
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
export default interface McGiWorldDraw {
|
|
12
|
+
/**
|
|
13
|
+
* 得到WorldDraw的绘制类型.
|
|
14
|
+
* @returns McGiWorldDrawType
|
|
15
|
+
* @example
|
|
16
|
+
* ``` typescript
|
|
17
|
+
*
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
*/
|
|
21
|
+
getType(): McGiWorldDrawType;
|
|
22
|
+
/**
|
|
23
|
+
* 绘制一个Three.js对象
|
|
24
|
+
* @param ent Three.js对象
|
|
25
|
+
* @returns void
|
|
26
|
+
* @example
|
|
27
|
+
* ``` typescript
|
|
28
|
+
*
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
*/
|
|
32
|
+
drawEntity(ent: THREE.Object3D): void;
|
|
33
|
+
/**
|
|
34
|
+
* 返回动态绘制的控件对像
|
|
35
|
+
* @returns MxDrawObject
|
|
36
|
+
* @example
|
|
37
|
+
* ``` typescript
|
|
38
|
+
*
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
*/
|
|
42
|
+
getMxObject(): MxDrawObject;
|
|
43
|
+
/**
|
|
44
|
+
* 设置绘制颜色
|
|
45
|
+
* @param iColor 颜色值
|
|
46
|
+
* @returns
|
|
47
|
+
* @example
|
|
48
|
+
* ``` typescript
|
|
49
|
+
*
|
|
50
|
+
* ```
|
|
51
|
+
*
|
|
52
|
+
*/
|
|
53
|
+
setColor(iColor: ColorType): void;
|
|
54
|
+
/**
|
|
55
|
+
* 返回绘制颜色
|
|
56
|
+
* @returns
|
|
57
|
+
* @example
|
|
58
|
+
* ``` typescript
|
|
59
|
+
*
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
*/
|
|
63
|
+
getColor(): number;
|
|
64
|
+
/**
|
|
65
|
+
* 设置绘制的线宽
|
|
66
|
+
* @returns
|
|
67
|
+
* @example
|
|
68
|
+
* ``` typescript
|
|
69
|
+
*
|
|
70
|
+
* ```
|
|
71
|
+
*
|
|
72
|
+
*/
|
|
73
|
+
setLineWidth(iLineWidth: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* 返回绘制的线宽
|
|
76
|
+
* @returns
|
|
77
|
+
* @example
|
|
78
|
+
* ``` typescript
|
|
79
|
+
*
|
|
80
|
+
* ```
|
|
81
|
+
*
|
|
82
|
+
*/
|
|
83
|
+
getLineWidth(): number;
|
|
84
|
+
/**
|
|
85
|
+
* 绘制直线
|
|
86
|
+
* @param pt1 第一个点 THREE.Vector3
|
|
87
|
+
* @param pt2 第二个点
|
|
88
|
+
* @returns
|
|
89
|
+
* @example
|
|
90
|
+
* ``` typescript
|
|
91
|
+
*
|
|
92
|
+
* ```
|
|
93
|
+
*
|
|
94
|
+
*/
|
|
95
|
+
drawLine(pt1: THREE.Vector3, pt2: THREE.Vector3): void;
|
|
96
|
+
/**
|
|
97
|
+
* 绘制直线
|
|
98
|
+
* @param x1 第一个点的X坐标
|
|
99
|
+
* @param y1 第一个点的Y坐标
|
|
100
|
+
* @param x2 第二个点的X坐标
|
|
101
|
+
* @param y2 第二个点的Y坐标
|
|
102
|
+
* @returns
|
|
103
|
+
* @example
|
|
104
|
+
* ``` typescript
|
|
105
|
+
*
|
|
106
|
+
* ```
|
|
107
|
+
*
|
|
108
|
+
*/
|
|
109
|
+
drawLine2(x1: number, y1: number, x2: number, y2: number): void;
|
|
110
|
+
/**
|
|
111
|
+
* 绘制圆
|
|
112
|
+
* @param cen 圆的中心点 THREE.Vector3
|
|
113
|
+
* @param dRadius 圆的半径
|
|
114
|
+
* @returns
|
|
115
|
+
* @example
|
|
116
|
+
* ``` typescript
|
|
117
|
+
*
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
120
|
+
*/
|
|
121
|
+
drawCircle(cen: THREE.Vector3, dRadius: number): void;
|
|
122
|
+
/**
|
|
123
|
+
* 绘文本
|
|
124
|
+
* @param sText 文本信息
|
|
125
|
+
* @param iSize 文字大小
|
|
126
|
+
* @param dAngle 角度
|
|
127
|
+
* @param pt 位置
|
|
128
|
+
* @returns
|
|
129
|
+
* @example
|
|
130
|
+
* ``` typescript
|
|
131
|
+
*
|
|
132
|
+
* ```
|
|
133
|
+
*
|
|
134
|
+
*/
|
|
135
|
+
drawText(sText: string, iSize: number, dAngle: number, pt: THREE.Vector3): void;
|
|
136
|
+
/**
|
|
137
|
+
* 设置DrawOrder
|
|
138
|
+
* @returns
|
|
139
|
+
* @example
|
|
140
|
+
* ``` typescript
|
|
141
|
+
*
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
*/
|
|
145
|
+
setRenderOrder(iRenderOrder: number): void;
|
|
146
|
+
/**
|
|
147
|
+
* 得到DrawOrder
|
|
148
|
+
* @returns
|
|
149
|
+
* @example
|
|
150
|
+
* ``` typescript
|
|
151
|
+
*
|
|
152
|
+
* ```
|
|
153
|
+
*
|
|
154
|
+
*/
|
|
155
|
+
getRenderOrder(): number;
|
|
156
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** @module McGiWorldDrawType*/
|
|
2
|
+
/**
|
|
3
|
+
* 动态绘制类型
|
|
4
|
+
* @example ```typescript
|
|
5
|
+
|
|
6
|
+
* ```
|
|
7
|
+
*/
|
|
8
|
+
declare enum McGiWorldDrawType {
|
|
9
|
+
/** 正常绘制 */
|
|
10
|
+
kWorldDraw = 1,
|
|
11
|
+
/** 动态拖动的绘制 */
|
|
12
|
+
kDynDragDraw = 2,
|
|
13
|
+
/** 对选择高亮的绘制 */
|
|
14
|
+
kSelectDraw = 3
|
|
15
|
+
}
|
|
16
|
+
export default McGiWorldDrawType;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/** @module MrxDbgUiPrPointClass */
|
|
2
|
-
import { MrxDbgUiPrBaseReturn } from '
|
|
2
|
+
import { MrxDbgUiPrBaseReturn } from '../../types/MrxDbgUiPrPoint';
|
|
3
3
|
/**
|
|
4
4
|
* MrxDbgUiPrPoint 用于构建一个取点对象
|
|
5
|
-
* ```typescript
|
|
5
|
+
* @example ```typescript
|
|
6
6
|
* new Mx.MrxDbgUiPrPoint()
|
|
7
7
|
* ```
|
|
8
8
|
*/
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/** @module MxDbEntity*/
|
|
2
|
+
import McGiWorldDraw from '../McGiWorldDraw';
|
|
3
|
+
/**
|
|
4
|
+
* MxDbEntity 用于构建一个自定义对象的抽象类(该类无法实例化 请通过继承的方式对其抽象方法进行实现)
|
|
5
|
+
* @description MxDbEntity 属于 abstract class(抽象类) 主要用途是通过继承这个类实现一个用于动态绘制的回调对象
|
|
6
|
+
* 继承实现这个类必须实现的抽象方法:(方法名称前有'Abstract'标签就是必须实现的方法)
|
|
7
|
+
* @example ```typescript
|
|
8
|
+
* import THREE from "three"
|
|
9
|
+
* import { McGiWorldDraw, MxDbEntity } from "mxdraw"
|
|
10
|
+
* class MxLineEntity extends MxDbEntity {
|
|
11
|
+
* constructor() {
|
|
12
|
+
* super(); // 在派生类的构造函数中必须调用 super()
|
|
13
|
+
* }
|
|
14
|
+
* private pt1: THREE.Vector3 = new THREE.Vector3();
|
|
15
|
+
* private pt2: THREE.Vector3 = new THREE.Vector3();
|
|
16
|
+
* worldDraw(pWorldDraw: McGiWorldDraw) {
|
|
17
|
+
* pWorldDraw.drawLine(this.pt1,this.pt2);
|
|
18
|
+
* }
|
|
19
|
+
* ...
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export default abstract class MxDbEntity {
|
|
24
|
+
private iColor;
|
|
25
|
+
/**
|
|
26
|
+
* 自定义对象的绘制函数。在方法中定义如何绘制图形
|
|
27
|
+
* @param pWorldDraw 绘制对象{@link McGiWorldDraw }
|
|
28
|
+
* @returns void
|
|
29
|
+
* @example
|
|
30
|
+
* ``` typescript
|
|
31
|
+
*
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
35
|
+
abstract worldDraw(pWorldDraw: McGiWorldDraw): void;
|
|
36
|
+
/**
|
|
37
|
+
* 返回自定义对象的夹点.
|
|
38
|
+
* @param
|
|
39
|
+
* @returns Array<THREE.Vector3>
|
|
40
|
+
* @example
|
|
41
|
+
* ``` typescript
|
|
42
|
+
*
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
*/
|
|
46
|
+
abstract getGripPoints(): Array<THREE.Vector3>;
|
|
47
|
+
/**
|
|
48
|
+
* 移动自定义对象的夹点.
|
|
49
|
+
* @param
|
|
50
|
+
* @returns boolean
|
|
51
|
+
* @example
|
|
52
|
+
* ``` typescript
|
|
53
|
+
*
|
|
54
|
+
* ```
|
|
55
|
+
*
|
|
56
|
+
*/
|
|
57
|
+
abstract moveGripPointsAt(index: number, offset: THREE.Vector3): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* 新创建一个自定义对象
|
|
60
|
+
* @param
|
|
61
|
+
* @returns MxDbEntity
|
|
62
|
+
* @example
|
|
63
|
+
* ``` typescript
|
|
64
|
+
*
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
abstract create(): MxDbEntity;
|
|
68
|
+
/**
|
|
69
|
+
* 自定义对象数据输入,必须要实现该函数
|
|
70
|
+
* @param
|
|
71
|
+
* @returns boolean
|
|
72
|
+
* @example
|
|
73
|
+
* ``` typescript
|
|
74
|
+
* class MxLine extends MxDbEntity {
|
|
75
|
+
* dwgIn(obj) {
|
|
76
|
+
* // 必须调用 同步自定义数据对象输入
|
|
77
|
+
* this.onDwgIn(obj)
|
|
78
|
+
* }
|
|
79
|
+
* }
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
abstract dwgIn(obj: any): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* 自定义对象数据输出,必须要实现该函数
|
|
85
|
+
* @param
|
|
86
|
+
* @returns object
|
|
87
|
+
* @example
|
|
88
|
+
* ``` typescript
|
|
89
|
+
* class MxLine extends MxDbEntity {
|
|
90
|
+
* dwgOut(obj) {
|
|
91
|
+
* // 必须调用 同步自定义数据对象输出
|
|
92
|
+
* this.onDwgOut(obj)
|
|
93
|
+
* }
|
|
94
|
+
* }
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
abstract dwgOut(obj: any): object;
|
|
98
|
+
private getImp;
|
|
99
|
+
/**
|
|
100
|
+
* 更新显示
|
|
101
|
+
* @param
|
|
102
|
+
* @returns boolean
|
|
103
|
+
* @example
|
|
104
|
+
* ``` typescript
|
|
105
|
+
*
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
upDisplay(): boolean;
|
|
109
|
+
/**
|
|
110
|
+
* 删除对象
|
|
111
|
+
* @param
|
|
112
|
+
* @returns boolean
|
|
113
|
+
* @example
|
|
114
|
+
* ``` typescript
|
|
115
|
+
*
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
erase(): boolean;
|
|
119
|
+
/**
|
|
120
|
+
* 设置颜色
|
|
121
|
+
* @param
|
|
122
|
+
* @returns boolean
|
|
123
|
+
* @example
|
|
124
|
+
* ``` typescript
|
|
125
|
+
*
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
setColor(iColor: ColorType): void;
|
|
129
|
+
/**
|
|
130
|
+
* 得到颜色
|
|
131
|
+
* @param
|
|
132
|
+
* @returns boolean
|
|
133
|
+
* @example
|
|
134
|
+
* ``` typescript
|
|
135
|
+
*
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
getColor(): ColorType;
|
|
139
|
+
/**
|
|
140
|
+
* 得到对象类型名
|
|
141
|
+
* @param
|
|
142
|
+
* @returns string
|
|
143
|
+
* @example
|
|
144
|
+
* ``` typescript
|
|
145
|
+
*
|
|
146
|
+
* ```
|
|
147
|
+
*/
|
|
148
|
+
getTypeName(): string;
|
|
149
|
+
/**
|
|
150
|
+
* 自定义对象内部数据输入同步(实现dwgIn抽象方法 必须在实现中调用 this.onDwgIn())
|
|
151
|
+
* @param obj dwgIn抽象方法的回调数据
|
|
152
|
+
*/
|
|
153
|
+
protected onDwgIn(obj: any): void;
|
|
154
|
+
/**
|
|
155
|
+
* 自定义对象内部数据输出同步(实现dwgIn抽象方法 必须在实现中调用 this.onDwgIn()
|
|
156
|
+
* @param obj dwgOut抽象方法的回调数据
|
|
157
|
+
*/
|
|
158
|
+
protected onDwgOut(obj: any): void;
|
|
159
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** @module MxDrawObject */
|
|
2
|
-
import { MxDrawObjectType } from '
|
|
2
|
+
import { MxDrawObjectType } from '../../types/MxDrawObject';
|
|
3
|
+
import MxDbEntity from '../MxDbEntity';
|
|
3
4
|
/**
|
|
4
5
|
* 引入mxdraw库不会挂载MxDrawObject 只能在以下特定函数中获取
|
|
5
6
|
* @function
|
|
@@ -11,6 +12,7 @@ import { MxDrawObjectType } from '@/types/MxDrawObject';
|
|
|
11
12
|
*
|
|
12
13
|
*/
|
|
13
14
|
export default class MxDrawObject {
|
|
15
|
+
private _mxdrawObj;
|
|
14
16
|
constructor(Mxdraw: MxDrawObjectType);
|
|
15
17
|
/**
|
|
16
18
|
* @instance
|
|
@@ -245,4 +247,252 @@ export default class MxDrawObject {
|
|
|
245
247
|
setIniset(options: {
|
|
246
248
|
EnableOsnapFunction: boolean;
|
|
247
249
|
}): void;
|
|
250
|
+
/**
|
|
251
|
+
* 屏幕坐标到ThreeJS坐标
|
|
252
|
+
* @returns THREE.Vector3
|
|
253
|
+
* @example
|
|
254
|
+
* ```typescript
|
|
255
|
+
*
|
|
256
|
+
*
|
|
257
|
+
* ```
|
|
258
|
+
*/
|
|
259
|
+
screenCoord2World(x: number, y: number, z?: number): THREE.Vector3;
|
|
260
|
+
/**
|
|
261
|
+
* ThreeJS坐标到屏幕坐标
|
|
262
|
+
* @returns THREE.Vector3
|
|
263
|
+
* @example
|
|
264
|
+
* ```typescript
|
|
265
|
+
*
|
|
266
|
+
*
|
|
267
|
+
* ```
|
|
268
|
+
*/
|
|
269
|
+
worldCoord2Screen(x: number, y: number, z: number): THREE.Vector3;
|
|
270
|
+
/**
|
|
271
|
+
* 屏幕坐标到DWG文档坐标
|
|
272
|
+
* @returns THREE.Vector3
|
|
273
|
+
* @example
|
|
274
|
+
* ```typescript
|
|
275
|
+
*
|
|
276
|
+
*
|
|
277
|
+
* ```
|
|
278
|
+
*/
|
|
279
|
+
screenCoord2Doc(x: number, y: number, z: number): THREE.Vector3;
|
|
280
|
+
/**
|
|
281
|
+
* ThreeJS坐标长度到DWG文档坐标长度
|
|
282
|
+
* @returns number
|
|
283
|
+
* @example
|
|
284
|
+
* ```typescript
|
|
285
|
+
*
|
|
286
|
+
*
|
|
287
|
+
* ```
|
|
288
|
+
*/
|
|
289
|
+
worldCoordLong2Doc(l: number): number;
|
|
290
|
+
/**
|
|
291
|
+
* DWG文档坐标长度到ThreeJS坐标长度
|
|
292
|
+
* @returns number
|
|
293
|
+
* @example
|
|
294
|
+
* ```typescript
|
|
295
|
+
*
|
|
296
|
+
*
|
|
297
|
+
* ```
|
|
298
|
+
*/
|
|
299
|
+
docCoordLong2World(l: number): number;
|
|
300
|
+
/**
|
|
301
|
+
* DWG文档坐标到ThreeJS坐标
|
|
302
|
+
* @returns number
|
|
303
|
+
* @example
|
|
304
|
+
* ```typescript
|
|
305
|
+
*
|
|
306
|
+
*
|
|
307
|
+
* ```
|
|
308
|
+
*/
|
|
309
|
+
docCoord2World(x: number, y: number, z: number): THREE.Vector3;
|
|
310
|
+
/**
|
|
311
|
+
* DWG文档坐标到ThreeJS坐标
|
|
312
|
+
* @returns THREE.Vector3
|
|
313
|
+
* @example
|
|
314
|
+
* ```typescript
|
|
315
|
+
*
|
|
316
|
+
*
|
|
317
|
+
* ```
|
|
318
|
+
*/
|
|
319
|
+
docCoord2World2(pt: THREE.Vector3): THREE.Vector3;
|
|
320
|
+
/**
|
|
321
|
+
* ThreeJS坐标到DWG文档坐标
|
|
322
|
+
* @returns number
|
|
323
|
+
* @example
|
|
324
|
+
* ```typescript
|
|
325
|
+
*
|
|
326
|
+
*
|
|
327
|
+
* ```
|
|
328
|
+
*/
|
|
329
|
+
worldCoord2Doc(x: number, y: number, z: number): THREE.Vector3;
|
|
330
|
+
/**
|
|
331
|
+
* ThreeJS坐标到DWG文档坐标
|
|
332
|
+
* @returns THREE.Vector3
|
|
333
|
+
* @example
|
|
334
|
+
* ```typescript
|
|
335
|
+
*
|
|
336
|
+
*
|
|
337
|
+
* ```
|
|
338
|
+
*/
|
|
339
|
+
worldCoord2Doc2(pt: THREE.Vector3): THREE.Vector3;
|
|
340
|
+
/**
|
|
341
|
+
* DWG文档坐标到屏幕坐标
|
|
342
|
+
* @returns number
|
|
343
|
+
* @example
|
|
344
|
+
* ```typescript
|
|
345
|
+
*
|
|
346
|
+
*
|
|
347
|
+
* ```
|
|
348
|
+
*/
|
|
349
|
+
docCoord2Screen(x: number, y: number, z: number): THREE.Vector3;
|
|
350
|
+
/**
|
|
351
|
+
* 屏幕坐标长度到DWG文档坐标长度
|
|
352
|
+
* @returns number
|
|
353
|
+
* @example
|
|
354
|
+
* ```typescript
|
|
355
|
+
*
|
|
356
|
+
*
|
|
357
|
+
* ```
|
|
358
|
+
*/
|
|
359
|
+
screenCoordLong2Doc(l: number): number;
|
|
360
|
+
/**
|
|
361
|
+
* DWG文档坐标长度到屏幕坐标长度
|
|
362
|
+
* @returns number
|
|
363
|
+
* @example
|
|
364
|
+
* ```typescript
|
|
365
|
+
*
|
|
366
|
+
*
|
|
367
|
+
* ```
|
|
368
|
+
*/
|
|
369
|
+
docCoordLong2Screen(l: number): number;
|
|
370
|
+
/**
|
|
371
|
+
* 屏幕坐标长度到ThreeJS坐标长度
|
|
372
|
+
* @returns number
|
|
373
|
+
* @example
|
|
374
|
+
* ```typescript
|
|
375
|
+
*
|
|
376
|
+
*
|
|
377
|
+
* ```
|
|
378
|
+
*/
|
|
379
|
+
screenCoordLong2World(l: number): number;
|
|
380
|
+
/**
|
|
381
|
+
* ThreeJS坐标长度到屏幕坐标长度
|
|
382
|
+
* @returns number
|
|
383
|
+
* @example
|
|
384
|
+
* ```typescript
|
|
385
|
+
*
|
|
386
|
+
*
|
|
387
|
+
* ```
|
|
388
|
+
*/
|
|
389
|
+
worldCoordLong2Screen(l: number): number;
|
|
390
|
+
/**
|
|
391
|
+
* 初始WebGL Renderer的创建参数,该函数在MxFun.createMxObject函数调用时,调用。
|
|
392
|
+
* @param param
|
|
393
|
+
* @returns void
|
|
394
|
+
* @example
|
|
395
|
+
* ```typescript
|
|
396
|
+
* mxObj.initRendererParam({preserveDrawingBuffer: true})
|
|
397
|
+
*
|
|
398
|
+
* ```
|
|
399
|
+
*/
|
|
400
|
+
initRendererParam(param: object): void;
|
|
401
|
+
/**
|
|
402
|
+
* 添加一个自定义实体到图上。
|
|
403
|
+
* @param ent 自定义实体对象
|
|
404
|
+
* @returns number 返回对象的id.
|
|
405
|
+
* @example
|
|
406
|
+
* ```typescript
|
|
407
|
+
*
|
|
408
|
+
*
|
|
409
|
+
* ```
|
|
410
|
+
*/
|
|
411
|
+
addMxEntity(ent: MxDbEntity): number;
|
|
412
|
+
/**
|
|
413
|
+
* 得到图上当前选择的对象.
|
|
414
|
+
* @returns Array<number> 返回对象的id数组.
|
|
415
|
+
* @example
|
|
416
|
+
* ```typescript
|
|
417
|
+
*
|
|
418
|
+
*
|
|
419
|
+
* ```
|
|
420
|
+
*/
|
|
421
|
+
getMxCurrentSelect(): Array<number>;
|
|
422
|
+
/**
|
|
423
|
+
*通过id获取绘制的对象.
|
|
424
|
+
* @param id 返回对象的id
|
|
425
|
+
* @returns MxDbEntity
|
|
426
|
+
* @example
|
|
427
|
+
* ```typescript
|
|
428
|
+
*
|
|
429
|
+
*
|
|
430
|
+
* ```
|
|
431
|
+
*/
|
|
432
|
+
getMxEntity(id: number): MxDbEntity;
|
|
433
|
+
/**
|
|
434
|
+
* 查找某点位置处的用户自绘对象.
|
|
435
|
+
* @param ptMouse 查找的点位 THREE.Vector3
|
|
436
|
+
* @param isWorldCoord 点是否是默认坐标 默认为 true
|
|
437
|
+
* @returns MxDbEntity[] 返回用户自绘对象数组
|
|
438
|
+
* @example
|
|
439
|
+
* ```typescript
|
|
440
|
+
*
|
|
441
|
+
*
|
|
442
|
+
* ```
|
|
443
|
+
*/
|
|
444
|
+
findMxEntityAtPoint(ptMouse: THREE.Vector3, isWorldCoord?: boolean): Array<MxDbEntity>;
|
|
445
|
+
/**
|
|
446
|
+
*得到所有用户自绘对象.
|
|
447
|
+
* @returns MxDbEntity[] 返回用户自绘对象数组
|
|
448
|
+
* @example
|
|
449
|
+
* ```typescript
|
|
450
|
+
*
|
|
451
|
+
*
|
|
452
|
+
* ```
|
|
453
|
+
*/
|
|
454
|
+
getAllMxEntity(): Array<MxDbEntity>;
|
|
455
|
+
/**
|
|
456
|
+
* 设置鼠标中键移动视区。
|
|
457
|
+
* @param isPan 设置是否可以鼠标中键移动视区
|
|
458
|
+
* @returns
|
|
459
|
+
* @example
|
|
460
|
+
* ```typescript
|
|
461
|
+
*
|
|
462
|
+
*
|
|
463
|
+
* ```
|
|
464
|
+
*/
|
|
465
|
+
setMouseMiddlePan(isPan: boolean): void;
|
|
466
|
+
/**
|
|
467
|
+
*重新设置ThreeJS Controls状态.
|
|
468
|
+
* @returns
|
|
469
|
+
* @example
|
|
470
|
+
* ```typescript
|
|
471
|
+
*
|
|
472
|
+
*
|
|
473
|
+
* ```
|
|
474
|
+
*/
|
|
475
|
+
resetThreeJSControls(): void;
|
|
476
|
+
/**
|
|
477
|
+
* 启用或禁用鼠标中键滚动缩放视区
|
|
478
|
+
* @param isEnable 是否启用
|
|
479
|
+
* @returns
|
|
480
|
+
* @example
|
|
481
|
+
* ```typescript
|
|
482
|
+
*
|
|
483
|
+
*
|
|
484
|
+
* ```
|
|
485
|
+
*/
|
|
486
|
+
enableZoom(isEnable: boolean): void;
|
|
487
|
+
/**
|
|
488
|
+
* 启用或禁用鼠标移动视区
|
|
489
|
+
* @param isEnable 是否启用
|
|
490
|
+
* @returns
|
|
491
|
+
* @example
|
|
492
|
+
* ```typescript
|
|
493
|
+
*
|
|
494
|
+
*
|
|
495
|
+
* ```
|
|
496
|
+
*/
|
|
497
|
+
enablePan(isEnable: boolean): void;
|
|
248
498
|
}
|