mx3d 2024.1.22 → 2024.6.2-8.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/README.md +8 -8
- package/docs/README.md +24 -0
- package/docs/_sidebar.md +29 -0
- package/docs/cabinet/24_back.jpg +0 -0
- package/docs/cabinet/24_font.jpg +0 -0
- package/docs/cabinet/43_back.jpg +0 -0
- package/docs/cabinet/43_font.jpg +0 -0
- package/docs/cabinet/cabinet.md +250 -0
- package/docs/camera.md +109 -0
- package/docs/css/dark.css +979 -0
- package/docs/css/local.google.fonts.css +295 -0
- package/docs/css/vue.css +1025 -0
- package/docs/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2 +0 -0
- package/docs/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2 +0 -0
- package/docs/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu.woff2 +0 -0
- package/docs/gui/2D.md +153 -0
- package/docs/gui/3D.md +154 -0
- package/docs/gui/bg.png +0 -0
- package/docs/heatMap/heatMap.md +290 -0
- package/docs/index.html +90 -0
- package/docs/js/bootstrap/bootstrap-theme.min.css +5 -0
- package/docs/js/bootstrap/bootstrap.min.css +5 -0
- package/docs/js/bootstrap/bootstrap.min.js +1 -0
- package/docs/js/bootstrap/jquery.min.js +1 -0
- package/docs/js/docsify@4.min.js +1 -0
- package/docs/js/search.min.js +1 -0
- package/docs/models/capacity.md +88 -0
- package/docs/models/effect.md +73 -0
- package/docs/models/event.md +100 -0
- package/docs/models/line.md +97 -0
- package/docs/models/model.md +164 -0
- package/docs/models/modelmgr.md +79 -0
- package/docs/project/projectmgr.md +64 -0
- package/docs/releases.md +128 -0
- package/docs/started/environment.md +103 -0
- package/docs/started/quickstart.md +112 -0
- package/index.d.ts +1109 -23
- package/mx3d.min.js +1 -1
- package/mx3d.seat.min.js +1 -1
- package/package.json +1 -1
- package/components/AlarmFlashing.d.ts +0 -12
- package/components/App.d.ts +0 -39
- package/components/Builder.d.ts +0 -73
- package/components/Capacity.d.ts +0 -11
- package/components/Environment.d.ts +0 -31
- package/components/HeatMap.d.ts +0 -14
- package/components/Icon.d.ts +0 -33
- package/components/IconFromMesh.d.ts +0 -29
- package/components/Line.d.ts +0 -14
- package/components/LineFromMesh.d.ts +0 -13
- package/components/StatusType.d.ts +0 -5
- package/components/UI.d.ts +0 -10
- package/earths/TileLoader.d.ts +0 -6
- package/effects/Cloud.d.ts +0 -42
- package/effects/Effect.d.ts +0 -13
- package/effects/IEffect.d.ts +0 -4
- package/effects/Rain.d.ts +0 -34
- package/effects/Thunder.d.ts +0 -31
- package/events/DefaultEvent.d.ts +0 -14
- package/events/EventType.d.ts +0 -9
- package/events/FPSCameraEvent.d.ts +0 -18
- package/events/IEvent.d.ts +0 -7
- package/hub/HubService.d.ts +0 -5
- package/lights/Directional.d.ts +0 -8
- package/lights/Hemispheric.d.ts +0 -7
- package/lights/ILightObject.d.ts +0 -11
- package/lights/LightObject.d.ts +0 -16
- package/lights/LightType.d.ts +0 -8
- package/lights/Point.d.ts +0 -8
- package/lights/Spot.d.ts +0 -11
- package/mapboxgl/BabylonLayer.d.ts +0 -0
- package/mapboxgl/Earth.d.ts +0 -0
- package/mapboxgl/Parse3dtile.d.ts +0 -0
- package/models/BaseModel.d.ts +0 -15
- package/models/BuildingObject.d.ts +0 -7
- package/models/CabinetObject.d.ts +0 -13
- package/models/CampusObject.d.ts +0 -8
- package/models/ConduitObject.d.ts +0 -17
- package/models/CornerObject.d.ts +0 -45
- package/models/DefaultObject.d.ts +0 -61
- package/models/DoorObject.d.ts +0 -7
- package/models/FloorObject.d.ts +0 -12
- package/models/IBase.d.ts +0 -23
- package/models/IObject.d.ts +0 -15
- package/models/IRegion.d.ts +0 -49
- package/models/LeakWaterObject.d.ts +0 -12
- package/models/ObjectType.d.ts +0 -17
- package/models/OptimizedWallObject.d.ts +0 -7
- package/models/Project.d.ts +0 -30
- package/models/RackModel.d.ts +0 -12
- package/models/RackObject.d.ts +0 -61
- package/models/StoreyObject.d.ts +0 -10
- package/models/UI3DTextObject.d.ts +0 -14
- package/models/VirtualBoxObject.d.ts +0 -13
- package/models/WallObject.d.ts +0 -12
- package/models/WindowObject.d.ts +0 -7
- package/mx3d.kernel.min.js +0 -1
- package/runtime/index.d.ts +0 -52
- package/tools/ArrayEx.d.ts +0 -3
- package/tools/BaseNode.d.ts +0 -5
- package/tools/CameraController.d.ts +0 -26
- package/tools/Dictionary.d.ts +0 -13
- package/tools/GUID.d.ts +0 -3
- package/tools/RES.d.ts +0 -3
- package/tools/Resources.d.ts +0 -26
- package/tools/Sight.d.ts +0 -15
- package/tools/ToolTips.d.ts +0 -14
- package/tools/Tools.d.ts +0 -21
- package/tools/axios.d.ts +0 -2
- /package/{earths/3dTile.d.ts → docs/.nojekyll} +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/gui/2D.md
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
## 初始化
|
|
2
|
+
|
|
3
|
+
```javascript
|
|
4
|
+
/// <param name="id">所要挂靠的物体id</param>
|
|
5
|
+
/// <param name="object">x需挂载的对象</param>
|
|
6
|
+
/// <param name="height">size: { width: UI宽度, height: UI高度 }</param>
|
|
7
|
+
/// <param name="_height">离地高度</param>
|
|
8
|
+
let gui = MX3D.UI.createIcon(id: "string", IObject: object, size: { width: number, height: number }, _height: number);
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## 设置背景图片
|
|
12
|
+
|
|
13
|
+
```javascript
|
|
14
|
+
/// <param name="background">设置背景图片</param>
|
|
15
|
+
gui.background = '/icons/camera.png'
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## 设置文字
|
|
19
|
+
|
|
20
|
+
```javascript
|
|
21
|
+
/// <param name="textArr">需创建的文字集合</param>
|
|
22
|
+
/// <param name="textArr.text">文字</param>
|
|
23
|
+
/// <param name="textArr.fontSize">字体大小</param>
|
|
24
|
+
/// <param name="textArr.color">字体颜色</param>
|
|
25
|
+
/// <param name="textArr.top">顶部偏移</param>
|
|
26
|
+
/// <param name="textArr.left">左侧偏移</param>
|
|
27
|
+
//注:默认偏移为gui中心点
|
|
28
|
+
let textArr = [
|
|
29
|
+
{ text: '27.5℃', fontSize: '12', color: '#dea32c', top: -12, left: 20 },
|
|
30
|
+
{ text: '68.22%', fontSize: '12', color: '#009ad6', top: 14, left: 20 },
|
|
31
|
+
]
|
|
32
|
+
gui.setTexts(textArr)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 点击事件
|
|
36
|
+
|
|
37
|
+
```javascript
|
|
38
|
+
/// <param name="Function">回调方法</param>
|
|
39
|
+
gui.onPointerClick = Function
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## 显示隐藏
|
|
43
|
+
|
|
44
|
+
```javascript
|
|
45
|
+
gui.isEnabled(true)
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## 销毁
|
|
49
|
+
|
|
50
|
+
```javascript
|
|
51
|
+
gui.dispose()
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## 示例
|
|
55
|
+
|
|
56
|
+
### 代码
|
|
57
|
+
|
|
58
|
+
```javascript
|
|
59
|
+
//创建
|
|
60
|
+
var uis = []
|
|
61
|
+
var _objs = app.project.findObjectsByCustomType('Humiture', {
|
|
62
|
+
isCurrent: false,
|
|
63
|
+
isEnabled: true,
|
|
64
|
+
})
|
|
65
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
66
|
+
let gui = MX3D.UI.createIcon(
|
|
67
|
+
'UI_' + i,
|
|
68
|
+
_objs[i],
|
|
69
|
+
{ width: 200, height: 150 },
|
|
70
|
+
0.6
|
|
71
|
+
)
|
|
72
|
+
gui.background = './gui/bg.png'
|
|
73
|
+
let textArr = [
|
|
74
|
+
{ text: '27.5℃', fontSize: '20', color: '#dea32c', top: -30, left: 40 },
|
|
75
|
+
{ text: '68.22%', fontSize: '20', color: '#009ad6', top: 5, left: 40 },
|
|
76
|
+
]
|
|
77
|
+
gui.setTexts(textArr)
|
|
78
|
+
uis.push(gui)
|
|
79
|
+
}
|
|
80
|
+
//显示
|
|
81
|
+
for (let i = 0; i < uis.length; i++) {
|
|
82
|
+
uis[i].isEnabled(true)
|
|
83
|
+
}
|
|
84
|
+
//隐藏
|
|
85
|
+
for (let i = 0; i < uis.length; i++) {
|
|
86
|
+
uis[i].isEnabled(false)
|
|
87
|
+
}
|
|
88
|
+
//销毁
|
|
89
|
+
for (let i = 0; i < uis.length; i++) {
|
|
90
|
+
uis[i].dispose()
|
|
91
|
+
}
|
|
92
|
+
uis = []
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### 示例
|
|
96
|
+
|
|
97
|
+
<div id="container" style="width: 100%;height: 500px;position: relative;">
|
|
98
|
+
<div style="position: absolute;top: 20px;left: 20px;width: 120px;z-index: 5;" class="btn-group-vertical" role="group">
|
|
99
|
+
<button type="button" id="but_create" class="btn btn-default">创建</button>
|
|
100
|
+
<button type="button" id="but_show" class="btn btn-default">显示</button>
|
|
101
|
+
<button type="button" id="but_hide" class="btn btn-default">隐藏</button>
|
|
102
|
+
<button type="button" id="but_dispose" class="btn btn-default">销毁</button>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
<script>
|
|
107
|
+
MX3D.accessToken = "0498A36E67B5ED17E7A7B23D0AC4ACB2E1D6DE1209A0C0894BA0B6973C606201DDCEF2EACFE268AB31FBE04616680A3F453EA85544AE248BA2B115141E029B13C3C90718BA0F15AE6A78BA9F3D70C41650FA4EDDC64D1DEFE5CBA2767EC3A52B347393871ACAC3FF01DF62EAF2F0AEB93578E90EB1F3B7B0793949E88BB4AF1EBB9AA0B0635B93738EC96287638F8716DD6FAC6087C8C8BE4F674F3853042BC60E391D9F5D54";
|
|
108
|
+
app = new MX3D.App({
|
|
109
|
+
container: document.getElementById("container")
|
|
110
|
+
});
|
|
111
|
+
app.load({
|
|
112
|
+
pk: "9a0b0f36-f283-49b5-b964-9a3bc630abda",
|
|
113
|
+
progress: (_x) => { //加载进度
|
|
114
|
+
console.log(_x)
|
|
115
|
+
},
|
|
116
|
+
complete:()=>{ ///加载完成
|
|
117
|
+
console.log("加载完成");
|
|
118
|
+
// console.log(parseInt(new Date().getTime() - _t) / 1000);
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
var uis=[];
|
|
123
|
+
|
|
124
|
+
$("#but_create").click(function(){
|
|
125
|
+
var _objs = app.project.findObjectsByCustomType('Humiture',{ isCurrent: false, isEnabled: true });
|
|
126
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
127
|
+
let gui = MX3D.UI.createIcon("UI_"+i, _objs[i], { width: 445/2.2, height: 334/2.2 }, 0.6);
|
|
128
|
+
gui.background = './gui/bg.png';
|
|
129
|
+
let textArr= [
|
|
130
|
+
{ text: '27.5℃', fontSize: '20', color: '#dea32c', top: -30, left: 40 },
|
|
131
|
+
{ text: '68.22%', fontSize: '20', color: '#009ad6', top: 5, left: 40 },
|
|
132
|
+
]
|
|
133
|
+
gui.setTexts(textArr)
|
|
134
|
+
uis.push(gui);
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
$("#but_show").click(function(){
|
|
138
|
+
for (let i = 0; i < uis.length; i++) {
|
|
139
|
+
uis[i].isEnabled(true)
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
$("#but_hide").click(function(){
|
|
143
|
+
for (let i = 0; i < uis.length; i++) {
|
|
144
|
+
uis[i].isEnabled(false)
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
$("#but_dispose").click(function(){
|
|
148
|
+
for (let i = 0; i < uis.length; i++) {
|
|
149
|
+
uis[i].dispose()
|
|
150
|
+
}
|
|
151
|
+
uis=[];
|
|
152
|
+
});
|
|
153
|
+
</script>
|
package/docs/gui/3D.md
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
## 初始化
|
|
2
|
+
|
|
3
|
+
```javascript
|
|
4
|
+
/// <summary>
|
|
5
|
+
/// 创建3dUI
|
|
6
|
+
/// </summary>
|
|
7
|
+
/// <param name="_id">UI编号;自定义</param>
|
|
8
|
+
/// <param name="_anchor">需挂载的对象</param>
|
|
9
|
+
/// <param name="_scaling">大小</param>
|
|
10
|
+
/// <param name="_height">相对于物体高度</param>
|
|
11
|
+
/// <param name="_app">场景实例</param>
|
|
12
|
+
let gui = MX3D.UI.createIconFromMesh(_id: string, _anchor: IObject, _scaling: number, _height: number);
|
|
13
|
+
// let gui = MX3D.UI.createIconFromMesh('_campus.children[8].id', 10, 0, app);
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 设置背景
|
|
17
|
+
|
|
18
|
+
```javascript
|
|
19
|
+
/// <param>背景图片路径</param>
|
|
20
|
+
await gui.setBackground('./gui/bg.png');
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## 设置文字
|
|
24
|
+
|
|
25
|
+
```javascript
|
|
26
|
+
/// <param name="textArr">需创建的文字集合</param>
|
|
27
|
+
/// <param name="textArr.text">文字</param>
|
|
28
|
+
/// <param name="textArr.fontSize">字体大小</param>
|
|
29
|
+
/// <param name="textArr.color">字体颜色</param>
|
|
30
|
+
/// <param name="textArr.top">顶部偏移</param>
|
|
31
|
+
/// <param name="textArr.left">左侧偏移</param>
|
|
32
|
+
//注:无法确定偏移中心,需多次测试确定
|
|
33
|
+
let textArr = [
|
|
34
|
+
{ text: '27.5℃', fontSize: '50px', color: '#dea32c', top: 120, left: 230 },
|
|
35
|
+
{ text: '68.22%', fontSize: '50px', color: '#009ad6', top: 200, left: 230 },
|
|
36
|
+
]
|
|
37
|
+
gui.setContents(textArr)
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## 点击事件
|
|
41
|
+
|
|
42
|
+
```javascript
|
|
43
|
+
/// <param name="_action">回调方法</param>
|
|
44
|
+
gui.addEventListener(_action: Function)
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## 显示隐藏
|
|
48
|
+
|
|
49
|
+
```javascript
|
|
50
|
+
gui.isEnabled(true)
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## 销毁
|
|
54
|
+
|
|
55
|
+
```javascript
|
|
56
|
+
gui.dispose()
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## 示例
|
|
60
|
+
|
|
61
|
+
### 代码
|
|
62
|
+
|
|
63
|
+
```javascript
|
|
64
|
+
//创建
|
|
65
|
+
var uis = []
|
|
66
|
+
var _objs = app.project.findObjectsByCustomType('Humiture', {
|
|
67
|
+
isCurrent: false,
|
|
68
|
+
isEnabled: true,
|
|
69
|
+
})
|
|
70
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
71
|
+
let gui = MX3D.UI.createIconFromMesh('UI_' + i,_objs[i],2,0.5);
|
|
72
|
+
await gui.setBackground('./gui/bg.png');
|
|
73
|
+
|
|
74
|
+
let textArr = [
|
|
75
|
+
{ text: '27.5℃', fontSize: '50px', color: '#dea32c', top: 120, left: 230 },
|
|
76
|
+
{ text: '68.22%', fontSize: '50px', color: '#009ad6', top: 200, left: 230 },
|
|
77
|
+
]
|
|
78
|
+
gui.setContents(textArr)
|
|
79
|
+
uis.push(gui)
|
|
80
|
+
}
|
|
81
|
+
//显示
|
|
82
|
+
for (let i = 0; i < uis.length; i++) {
|
|
83
|
+
uis[i].isEnabled(true)
|
|
84
|
+
}
|
|
85
|
+
//隐藏
|
|
86
|
+
for (let i = 0; i < uis.length; i++) {
|
|
87
|
+
uis[i].isEnabled(false)
|
|
88
|
+
}
|
|
89
|
+
//销毁
|
|
90
|
+
for (let i = 0; i < uis.length; i++) {
|
|
91
|
+
uis[i].dispose()
|
|
92
|
+
}
|
|
93
|
+
uis = []
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### 效果
|
|
97
|
+
|
|
98
|
+
<div id="container" style="width: 100%;height: 500px;position: relative;">
|
|
99
|
+
<div style="position: absolute;top: 20px;left: 20px;width: 120px;z-index: 5;" class="btn-group-vertical" role="group">
|
|
100
|
+
<button type="button" id="but_create" class="btn btn-default">创建</button>
|
|
101
|
+
<button type="button" id="but_show" class="btn btn-default">显示</button>
|
|
102
|
+
<button type="button" id="but_hide" class="btn btn-default">隐藏</button>
|
|
103
|
+
<button type="button" id="but_dispose" class="btn btn-default">销毁</button>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
<script>
|
|
108
|
+
MX3D.accessToken = "0498A36E67B5ED17E7A7B23D0AC4ACB2E1D6DE1209A0C0894BA0B6973C606201DDCEF2EACFE268AB31FBE04616680A3F453EA85544AE248BA2B115141E029B13C3C90718BA0F15AE6A78BA9F3D70C41650FA4EDDC64D1DEFE5CBA2767EC3A52B347393871ACAC3FF01DF62EAF2F0AEB93578E90EB1F3B7B0793949E88BB4AF1EBB9AA0B0635B93738EC96287638F8716DD6FAC6087C8C8BE4F674F3853042BC60E391D9F5D54";
|
|
109
|
+
app = new MX3D.App({
|
|
110
|
+
container: document.getElementById("container")
|
|
111
|
+
});
|
|
112
|
+
app.load({
|
|
113
|
+
pk: "9a0b0f36-f283-49b5-b964-9a3bc630abda",
|
|
114
|
+
progress: (_x) => { //加载进度
|
|
115
|
+
console.log(_x)
|
|
116
|
+
},
|
|
117
|
+
complete:()=>{ ///加载完成
|
|
118
|
+
console.log("加载完成");
|
|
119
|
+
// console.log(parseInt(new Date().getTime() - _t) / 1000);
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
var uis=[];
|
|
124
|
+
|
|
125
|
+
$("#but_create").click( async()=>{
|
|
126
|
+
var _objs = app.project.findObjectsByCustomType('Humiture', {isCurrent: false,isEnabled: true})
|
|
127
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
128
|
+
let gui = MX3D.UI.createIconFromMesh('UI_' + i,_objs[i],2,0.5);
|
|
129
|
+
await gui.setBackground('./gui/bg.png');
|
|
130
|
+
let textArr = [
|
|
131
|
+
{ text: '27.5℃', fontSize: '50px', color: '#dea32c', top: 120, left: 230 },
|
|
132
|
+
{ text: '68.22%', fontSize: '50px', color: '#009ad6', top: 200, left: 230 },
|
|
133
|
+
]
|
|
134
|
+
gui.setContents(textArr)
|
|
135
|
+
uis.push(gui)
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
$("#but_show").click(function(){
|
|
139
|
+
for (let i = 0; i < uis.length; i++) {
|
|
140
|
+
uis[i].isEnabled(true)
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
$("#but_hide").click(function(){
|
|
144
|
+
for (let i = 0; i < uis.length; i++) {
|
|
145
|
+
uis[i].isEnabled(false)
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
$("#but_dispose").click(function(){
|
|
149
|
+
for (let i = 0; i < uis.length; i++) {
|
|
150
|
+
uis[i].dispose()
|
|
151
|
+
}
|
|
152
|
+
uis=[];
|
|
153
|
+
});
|
|
154
|
+
</script>
|
package/docs/gui/bg.png
ADDED
|
Binary file
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
## 矩阵云图
|
|
2
|
+
|
|
3
|
+
```javascript
|
|
4
|
+
/// <summary>
|
|
5
|
+
/// 创建矩阵温度云图
|
|
6
|
+
/// </summary>
|
|
7
|
+
/// <param name="anchor">挂载的物体(非空)</param>
|
|
8
|
+
/// <param name="value">云图原数据(非空)
|
|
9
|
+
////// <param name="column">云图总行</param>
|
|
10
|
+
////// <param name="row">云图总列</param>
|
|
11
|
+
////// <param name="data">云图点位值</param>
|
|
12
|
+
/// </param>
|
|
13
|
+
/// <param name="height">距离挂载物体高度</param>
|
|
14
|
+
/// <param name="isAlpha">云图是否透明;默认为true</param>
|
|
15
|
+
/// <param name="isParticle">是否生成粒子体积云图;默认为true</param>
|
|
16
|
+
/// <param name="radius">云图辐射半径</param>
|
|
17
|
+
/// <param name="range">云图范围</param>
|
|
18
|
+
var map= MX3D.Builder.createMatrixCloud({
|
|
19
|
+
anchor: IObject,
|
|
20
|
+
value: {
|
|
21
|
+
maxX: number, maxY: number,
|
|
22
|
+
data: Array<{ x: number, y: number, value: number }>
|
|
23
|
+
},
|
|
24
|
+
displayValues: boolean,
|
|
25
|
+
height: number,
|
|
26
|
+
isLevelRender: boolean,
|
|
27
|
+
isAlpha: boolean,
|
|
28
|
+
isParticle: boolean,
|
|
29
|
+
radius: number,
|
|
30
|
+
range: { max: number, min: number }
|
|
31
|
+
});
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## 点状云图
|
|
35
|
+
|
|
36
|
+
```javascript
|
|
37
|
+
/// <summary>
|
|
38
|
+
/// 创建点状云图
|
|
39
|
+
/// </summary>
|
|
40
|
+
/// <param name="anchor">挂载的物体(非空)</param>
|
|
41
|
+
/// <param name="value">数值(非空)></param>
|
|
42
|
+
/// <param name="displayValues">是否显示数值;默认:false></param>
|
|
43
|
+
/// <param name="isAlpha">云图是否透明;默认为true</param>
|
|
44
|
+
/// <param name="isParticle">是否生成粒子体积云图;默认为true</param>
|
|
45
|
+
/// <param name="radius">云图大小;默认:1</param>
|
|
46
|
+
/// <param name="range">云图区间</param>
|
|
47
|
+
var map = MX3D.Builder.createPunctateCloud({
|
|
48
|
+
anchor: IObject,
|
|
49
|
+
value: number,
|
|
50
|
+
radius: number,
|
|
51
|
+
isLevelRender: boolean,
|
|
52
|
+
displayValues: boolean,
|
|
53
|
+
isAlpha: boolean,
|
|
54
|
+
isParticle: boolean,
|
|
55
|
+
range: { max: number, min: number },
|
|
56
|
+
})
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## 柱状云图
|
|
60
|
+
|
|
61
|
+
```javascript
|
|
62
|
+
/// <summary>
|
|
63
|
+
/// 创建柱状温度云图
|
|
64
|
+
/// </summary>
|
|
65
|
+
/// <param name="anchor">挂载的物体(非空)</param>
|
|
66
|
+
/// <param name="data">云图原数据(非空)></param>
|
|
67
|
+
/// <param name="displayValues">是否显示数值;默认:false></param>
|
|
68
|
+
/// <param name="isAlpha">云图是否透明;默认为true</param>
|
|
69
|
+
/// <param name="isParticle">是否生成粒子体积云图;默认为true</param>
|
|
70
|
+
/// <param name="radius">云图辐射半径</param>
|
|
71
|
+
/// <param name="range">云图颜色区间</param>
|
|
72
|
+
var map= MX3D.Builder.createColumnCloud({
|
|
73
|
+
anchor: IObject,
|
|
74
|
+
data: Array<{ index: number, value: number }>,
|
|
75
|
+
displayValues: boolean = false,
|
|
76
|
+
isAlpha: boolean = true,
|
|
77
|
+
isParticle: boolean = true,
|
|
78
|
+
radius: number = 4,
|
|
79
|
+
range: { max: number, min: number } = { max: 30, min: 16 }
|
|
80
|
+
});
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## 示例
|
|
84
|
+
|
|
85
|
+
### 代码
|
|
86
|
+
|
|
87
|
+
```javascript
|
|
88
|
+
//创建的云图
|
|
89
|
+
var maps = []
|
|
90
|
+
|
|
91
|
+
///矩阵云图
|
|
92
|
+
var data = [
|
|
93
|
+
{ y: 6, x: 4, value: 25.32 },
|
|
94
|
+
{ y: 4, x: 10, value: 27.57 },
|
|
95
|
+
{ y: 4, x: 3, value: 27.57 }
|
|
96
|
+
...
|
|
97
|
+
]
|
|
98
|
+
var _obj = app.project.findObjectsByCustomType('Floor', {isCurrent: false,isEnabled: true})[1];
|
|
99
|
+
var map = MX3D.Builder.createMatrixCloud({
|
|
100
|
+
anchor: _obj,
|
|
101
|
+
value: {
|
|
102
|
+
maxX: 12,
|
|
103
|
+
maxY: 9,
|
|
104
|
+
data: data,
|
|
105
|
+
},
|
|
106
|
+
height: 1,
|
|
107
|
+
})
|
|
108
|
+
maps.push(map)
|
|
109
|
+
|
|
110
|
+
///柱状云图
|
|
111
|
+
var _objs = app.project.findObjectsByCustomType('Cabinet', {isCurrent: false,isEnabled: true})
|
|
112
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
113
|
+
let gui = MX3D.Builder.createColumnCloud({
|
|
114
|
+
anchor: _objs[i],
|
|
115
|
+
data: [
|
|
116
|
+
{ index: 0, value: 25 },
|
|
117
|
+
{ index: 0, value: 27 },
|
|
118
|
+
{ index: 0, value: 29 },
|
|
119
|
+
],
|
|
120
|
+
})
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
//点状云图
|
|
124
|
+
var _objs = app.project.findObjectsByCustomType('Humiture', {isCurrent: false,isEnabled: true})
|
|
125
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
126
|
+
let map = MX3D.Builder.createPunctateCloud({
|
|
127
|
+
anchor: _objs[i],
|
|
128
|
+
value: 25
|
|
129
|
+
})
|
|
130
|
+
maps.push(map)
|
|
131
|
+
}
|
|
132
|
+
//销毁
|
|
133
|
+
for (let i = 0; i < maps.length; i++) {
|
|
134
|
+
maps[i].dispose()
|
|
135
|
+
}
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### 效果
|
|
139
|
+
|
|
140
|
+
<div id="container" style="width: 100%;height: 500px;position: relative;">
|
|
141
|
+
<div style="position: absolute;top: 20px;left: 20px;width: 120px;z-index: 5;" class="btn-group-vertical" role="group">
|
|
142
|
+
<button type="button" id="but_createMatrixHeatMap" class="btn btn-default">平面云图</button>
|
|
143
|
+
<button type="button" id="but_createColumnarHeatMap" class="btn btn-default">柱状云图</button>
|
|
144
|
+
<button type="button" id="but_createPunctateCloud" class="btn btn-default">点状云图</button>
|
|
145
|
+
<button type="button" id="but_detele" class="btn btn-default">销毁</button>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
|
|
149
|
+
<script>
|
|
150
|
+
MX3D.accessToken = "0498A36E67B5ED17E7A7B23D0AC4ACB2E1D6DE1209A0C0894BA0B6973C606201DDCEF2EACFE268AB31FBE04616680A3F453EA85544AE248BA2B115141E029B13C3C90718BA0F15AE6A78BA9F3D70C41650FA4EDDC64D1DEFE5CBA2767EC3A52B347393871ACAC3FF01DF62EAF2F0AEB93578E90EB1F3B7B0793949E88BB4AF1EBB9AA0B0635B93738EC96287638F8716DD6FAC6087C8C8BE4F674F3853042BC60E391D9F5D54";
|
|
151
|
+
app = new MX3D.App({
|
|
152
|
+
container: document.getElementById("container")
|
|
153
|
+
});
|
|
154
|
+
app.load({
|
|
155
|
+
pk: "9a0b0f36-f283-49b5-b964-9a3bc630abda",
|
|
156
|
+
progress: (_x) => { //加载进度
|
|
157
|
+
console.log(_x)
|
|
158
|
+
},
|
|
159
|
+
complete:()=>{ ///加载完成
|
|
160
|
+
console.log("加载完成");
|
|
161
|
+
// console.log(app.project.getSceneTree());
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
var maps=[];
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
$("#but_createMatrixHeatMap").click(function(){
|
|
170
|
+
var data = [
|
|
171
|
+
{ y: 6, x: 4, value: 25.32 },
|
|
172
|
+
{ y: 4, x: 10, value: 27.57 },
|
|
173
|
+
{ y: 4, x: 3, value: 27.57 },
|
|
174
|
+
{ y: 6, x: 7, value: 27.12 },
|
|
175
|
+
{ y: 6, x: 6, value: 27.12 },
|
|
176
|
+
{ y: 4, x: 11, value: 27.12 },
|
|
177
|
+
{ y: 3, x: 4, value: 27.12 },
|
|
178
|
+
{ y: 6, x: 3, value: 27.13 },
|
|
179
|
+
{ y: 4, x: 8, value: 27.13 },
|
|
180
|
+
{ y: 3, x: 6, value: 27.13 },
|
|
181
|
+
{ y: 3, x: 5, value: 27.13 },
|
|
182
|
+
{ y: 3, x: 2, value: 27.13 },
|
|
183
|
+
{ y: 1, x: 7, value: 27.13 },
|
|
184
|
+
{ y: 6, x: 2, value: 27.78 },
|
|
185
|
+
{ y: 3, x: 7, value: 27.78 },
|
|
186
|
+
{ y: 3, x: 1, value: 27.78 },
|
|
187
|
+
{ y: 1, x: 4, value: 27.78 },
|
|
188
|
+
{ y: 5, x: 2, value: 28.26 },
|
|
189
|
+
{ y: 3, x: 8, value: 28.26 },
|
|
190
|
+
{ y: 3, x: 0, value: 28.26 },
|
|
191
|
+
{ y: 8, x: 8, value: 29.76 },
|
|
192
|
+
{ y: 5, x: 1, value: 29.76 },
|
|
193
|
+
{ y: 4, x: 0, value: 29.76 },
|
|
194
|
+
{ y: 3, x: 9, value: 29.76 },
|
|
195
|
+
{ y: 6, x: 1, value: 28.24 },
|
|
196
|
+
{ y: 5, x: 0, value: 28.24 },
|
|
197
|
+
{ y: 3, x: 11, value: 28.24 },
|
|
198
|
+
{ y: 3, x: 10, value: 28.24 },
|
|
199
|
+
{ y: 0, x: 1, value: 28.24 },
|
|
200
|
+
{ y: 6, x: 9, value: 28.61 },
|
|
201
|
+
{ y: 6, x: 0, value: 28.61 },
|
|
202
|
+
{ y: 5, x: 10, value: 28.61 },
|
|
203
|
+
{ y: 6, x: 10, value: 25.61 },
|
|
204
|
+
{ y: 5, x: 9, value: 25.61 },
|
|
205
|
+
{ y: 5, x: 11, value: 25.86 },
|
|
206
|
+
{ y: 5, x: 8, value: 25.86 },
|
|
207
|
+
{ y: 5, x: 7, value: 27.04 },
|
|
208
|
+
{ y: 4, x: 2, value: 27.04 },
|
|
209
|
+
{ y: 4, x: 1, value: 27.04 },
|
|
210
|
+
{ y: 4, x: 9, value: 25.17 },
|
|
211
|
+
{ y: 4, x: 5, value: 25.17 },
|
|
212
|
+
{ y: 4, x: 4, value: 25.17 },
|
|
213
|
+
{ y: 4, x: 6, value: 28.69 },
|
|
214
|
+
{ y: 4, x: 7, value: 27.3 },
|
|
215
|
+
{ y: 6, x: 11, value: 27.49 },
|
|
216
|
+
{ y: 6, x: 8, value: 27.49 },
|
|
217
|
+
{ y: 3, x: 3, value: 27.49 },
|
|
218
|
+
{ y: 5, x: 4, value: 26.09 },
|
|
219
|
+
{ y: 5, x: 5, value: 27.1 },
|
|
220
|
+
{ y: 6, x: 5, value: 29.49 },
|
|
221
|
+
{ y: 5, x: 6, value: 26.7 },
|
|
222
|
+
]
|
|
223
|
+
var _obj = app.project.findObjectsByCustomType("Floor",{ isCurrent: false, isEnabled: true })[0];
|
|
224
|
+
var map = MX3D.Builder.createMatrixCloud({
|
|
225
|
+
anchor:_obj,
|
|
226
|
+
value:{
|
|
227
|
+
maxX: 12,
|
|
228
|
+
maxY: 9,
|
|
229
|
+
data: data,
|
|
230
|
+
},
|
|
231
|
+
height:1
|
|
232
|
+
})
|
|
233
|
+
maps.push(map);
|
|
234
|
+
});
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
$("#but_createColumnarHeatMap").click(function(){
|
|
238
|
+
var _objs = app.project.findObjectsByCustomType('Cabinet',{ isCurrent: false, isEnabled: true });
|
|
239
|
+
//for (let i = 0; i < _objs.length; i++) {
|
|
240
|
+
let map = MX3D.Builder.createColumnCloud({anchor:_objs[0],data:[{index: 0,value: 25},{index: 0,value: 27},{index: 0,value: 29}]});
|
|
241
|
+
maps.push(map);
|
|
242
|
+
//}
|
|
243
|
+
});
|
|
244
|
+
|
|
245
|
+
$("#but_createPunctateCloud").click(function(){
|
|
246
|
+
var _objs = app.project.findObjectsByCustomType('Humiture',{ isCurrent: false, isEnabled: true });
|
|
247
|
+
for (let i = 0; i < _objs.length; i++) {
|
|
248
|
+
let map = MX3D.Builder.createPunctateCloud({anchor:_objs[i],value:25});
|
|
249
|
+
maps.push(map);
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
|
|
253
|
+
$("#but_detele").click(function(){
|
|
254
|
+
for (let i = 0; i < maps.length; i++) {
|
|
255
|
+
maps[i].dispose();
|
|
256
|
+
}
|
|
257
|
+
maps=[];
|
|
258
|
+
});
|
|
259
|
+
</script>
|
|
260
|
+
|
|
261
|
+
## 云图属性
|
|
262
|
+
|
|
263
|
+
### 显示隐藏云图
|
|
264
|
+
|
|
265
|
+
```javascript
|
|
266
|
+
/// <summary>
|
|
267
|
+
/// 显示隐藏云图
|
|
268
|
+
/// </summary>
|
|
269
|
+
/// <param name="_bool">true||false</param>
|
|
270
|
+
map.isEnabled(_bool: boolean);
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### 显示隐藏数值
|
|
274
|
+
|
|
275
|
+
```javascript
|
|
276
|
+
/// <summary>
|
|
277
|
+
/// 显示隐藏数值
|
|
278
|
+
/// </summary>
|
|
279
|
+
/// <param name="_bool">true||false</param>
|
|
280
|
+
map.displayValues=_bool: boolean;
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### 销毁云图
|
|
284
|
+
|
|
285
|
+
```javascript
|
|
286
|
+
/// <summary>
|
|
287
|
+
/// 销毁云图
|
|
288
|
+
/// </summary>
|
|
289
|
+
map.dispose()
|
|
290
|
+
```
|
package/docs/index.html
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="zh-cn">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<title>SDK</title>
|
|
7
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
|
8
|
+
<meta name="description" content="Description">
|
|
9
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
|
|
10
|
+
|
|
11
|
+
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
|
|
12
|
+
<script src="./js/bootstrap/jquery.min.js"></script>
|
|
13
|
+
<!-- 最新版本的 Bootstrap 核心 CSS 文件 -->
|
|
14
|
+
<link rel="stylesheet" href="./js/bootstrap/bootstrap.min.css">
|
|
15
|
+
<!-- 可选的 Bootstrap 主题文件(一般不用引入) -->
|
|
16
|
+
<link rel="stylesheet" href="./js/bootstrap/bootstrap-theme.min.css">
|
|
17
|
+
<!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
|
|
18
|
+
<script src="./js/bootstrap/bootstrap.min.js"></script>
|
|
19
|
+
|
|
20
|
+
<!-- 蓝黑色主题 -->
|
|
21
|
+
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsify-themeable@0/dist/css/theme-simple-dark.css"> -->
|
|
22
|
+
<!-- 黑色主题 -->
|
|
23
|
+
<!-- <link rel="stylesheet" href="./css/dark.css"> -->
|
|
24
|
+
<link rel="stylesheet" href="./css/vue.css">
|
|
25
|
+
<!-- <script src="../dist/mx3d.seat.min.js"></script>
|
|
26
|
+
<script src="/mx3d.js"></script> -->
|
|
27
|
+
<script src="../mx3d.seat.min.js"></script>
|
|
28
|
+
<script src="../mx3d.min.js"></script>
|
|
29
|
+
<!-- <script src="/core/mx3d.seat.min.js"></script>
|
|
30
|
+
<script src="../mx3d.js"></script> -->
|
|
31
|
+
<!-- <script src="/dist/mx3d.kernel.min.js"></script>
|
|
32
|
+
<script src="/dist/mx3d.min.js"></script> -->
|
|
33
|
+
<!-- <link rel="stylesheet" href="//unpkg.com/docsify/themes/buble.css"> -->
|
|
34
|
+
<!-- <link rel="stylesheet" href="//unpkg.com/docsify/themes/dark.css"> -->
|
|
35
|
+
<!-- <link rel="stylesheet" href="//unpkg.com/docsify/themes/pure.css"> -->
|
|
36
|
+
<!-- <link rel="stylesheet" href="//unpkg.com/docsify/themes/dolphin.css"> -->
|
|
37
|
+
</head>
|
|
38
|
+
|
|
39
|
+
<body>
|
|
40
|
+
<div id="app"></div>
|
|
41
|
+
<script>
|
|
42
|
+
window.$docsify = {
|
|
43
|
+
// routerMode: 'history',
|
|
44
|
+
name: '我搭世界sdk教程文档',
|
|
45
|
+
// repo: 'http://192.168.21.99:8080/MJ.GZ/sdk_v2.git',
|
|
46
|
+
loadSidebar: true,
|
|
47
|
+
subMaxLevel: 3,
|
|
48
|
+
executeScript: true,
|
|
49
|
+
alias: {
|
|
50
|
+
'/.*/_sidebar.md': '/_sidebar.md'
|
|
51
|
+
},
|
|
52
|
+
auto2top: true, //切换页面后是否自动跳转到页面顶部
|
|
53
|
+
//全文搜索
|
|
54
|
+
search: {
|
|
55
|
+
maxAge: 86400000, // 过期时间,单位毫秒,默认一天
|
|
56
|
+
paths: 'auto',
|
|
57
|
+
placeholder: '搜索',
|
|
58
|
+
noData: '找不到结果',
|
|
59
|
+
// 搜索标题的最大程级, 1 - 6
|
|
60
|
+
depth: 4,
|
|
61
|
+
},
|
|
62
|
+
vueComponents: {
|
|
63
|
+
'button-counter': {
|
|
64
|
+
template: `<button @click="count += 1">You clicked me {{ count }} times</button>`,
|
|
65
|
+
data() {
|
|
66
|
+
return {
|
|
67
|
+
count: 0,
|
|
68
|
+
};
|
|
69
|
+
},
|
|
70
|
+
methods: {
|
|
71
|
+
greet(event) {
|
|
72
|
+
// `this` inside methods points to the current active instance
|
|
73
|
+
alert(`Hello ${this.name}!`)
|
|
74
|
+
// `event` is the native DOM event
|
|
75
|
+
if (event) {
|
|
76
|
+
alert(event.target.tagName)
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
</script>
|
|
84
|
+
<!-- Docsify v4 -->
|
|
85
|
+
<!-- <script src="//cdn.jsdelivr.net/npm/docsify@4"></script> -->
|
|
86
|
+
<script src="./js/docsify@4.min.js"></script>
|
|
87
|
+
<script src="./js/search.min.js"></script>
|
|
88
|
+
</body>
|
|
89
|
+
|
|
90
|
+
</html>
|