外观
数据绑定与动作
数据绑定决定组件显示什么,动作决定用户操作组件后发生什么。
数据绑定模式
静态数据 Static
直接在项目中填写数据,适合原型、说明性图表和不会频繁变化的展示。
单次请求 Request
打开界面或刷新时从指定地址读取一次数据。可设置请求地址、方法、请求头、请求体和响应路径。
定时刷新 Polling
按刷新间隔重复请求,适合几秒或几分钟更新一次的状态。刷新频率过高会增加网络和服务压力。
WebSocket
持续接收实时数据,适合高频状态和事件流。目标服务必须支持浏览器 WebSocket 连接,并在断线时提供可理解的状态提示。
通用绑定属性
| 属性 | 说明 |
|---|---|
| 数据源 | 数据来源名称 |
| 请求地址 / WebSocket 地址 | 网络数据入口 |
| 请求方法 | GET、POST 等 |
| 请求头 / 请求体 | 请求附加信息 |
| 响应路径 | 从响应中取出实际数据,例如 data.items |
| 刷新间隔 | 定时请求的毫秒数 |
| 追加数据 | 新数据追加到现有数据后面 |
| 最大点数 | 限制折线或实时数据长度 |
凭据安全
不要把密码、长期密钥或仅限内部使用的访问凭据写入公开项目。浏览器中的项目内容不能作为安全的密钥存储位置。
字段映射
不同组件需要不同字段:
- label:分类或显示名称;
- value:主要数值;
- x / y:折线图坐标;
- series:多条序列的分组字段;
- 表格列:每列的显示名称和数据字段。
例如,接口返回:
json
[
{ "time": "10:00", "temperature": 28.6, "device": "Pump A" },
{ "time": "10:05", "temperature": 29.1, "device": "Pump A" }
]折线图可以把 time 映射到 X,把 temperature 映射到 Y,把 device 映射到序列。
UI 动作分类
UI 显示
| 动作 | 用途 |
|---|---|
ui.setVisible | 设置指定控件显示或隐藏 |
ui.toggleVisible | 切换指定控件可见状态 |
目标可以是控件名称、控件类型或 all。使用“排除自身”可以防止触发按钮把自己隐藏。
对象和材质
| 动作 | 用途 |
|---|---|
model.setVisible / object.visible | 显示或隐藏模型、对象 |
object.position | 设置位置 |
object.rotation | 设置旋转 |
object.scale | 设置缩放 |
material.setColor / object.material.color | 修改颜色 |
material.setOpacity | 修改透明度 |
object.material.texture | 设置单张贴图或图片序列 |
SetObjectAnimation | 播放、暂停或控制模型动画 |
相机和地图
| 动作 | 用途 |
|---|---|
camera.set.view | 切换到保存视角 |
camera.flyTo | 飞行到指定相机或位置 |
camera.curve.setPose | 设置相机曲线进度 |
camera.curve.play | 播放相机曲线 |
world.fly | 地图视角飞行 |
world.object.fly | 地图中的对象弧线运动 |
记录和辅助
| 动作 | 用途 |
|---|---|
record.query | 按条件查询记录 |
record.select | 选择记录并使用其中的对象或相机信息 |
model.highlight | 高亮指定模型 |
debug.log | 调试时记录消息 |
debug.alert | 调试时弹出提示 |
调试动作不适合长期保留在正式交付项目中。
示例:滑块控制透明度
- 添加滑块。
- 设置范围
0–1、步长0.01。 - 动作选择
material.setOpacity。 - 将目标设置为模型识别码。
- 运行并拖动滑块验证。
示例:选择记录并定位对象
text
日期范围选择器 → record.query
记录列表 → record.select
选择结果 → model.highlight + camera.flyTo记录数据需要包含目标对象或相机信息。先验证单条记录,再接入完整数据集。
示例:贴图分组切换产品外观
- 添加贴图分组。
- 建立“顶部、侧面、底部”等分组。
- 为每个贴图项添加图片和名称。
- 动作选择
object.material.texture。 - 设置目标对象及需要修改的材质范围。
- 开启“保留贴图配置”,避免切换时丢失重复和偏移设置。