[]
文中以一个这样的示例展示具体操作方法:
在仪表板中单击图片,3D场景的中的部分房子消失,再次点击图片,房子出现。这就是使用JS代码定制的一种交互行为。
具体操作步骤如下:
1. 3D场景中添加JS脚本
单击场景设定,在属性设置中找到数据交互,打开以后可以看到自定义代码,单击右侧加号。
填写脚本名称,然后选择一个执行脚本的时机。这里支持场景加载完成、数据图层数据改变和手动触发三种执行时机。
例如我们选择了手动触发,然后在右侧编写脚本,控制四个小房子的隐藏和出现。
最后单击确定。
选择不同的执行时机,支持的参数不同。
手动触发和场景加载完成支持的参数如下。
参数类型:
BABYLON: BABYLON 全局类型对象, API 文档参见 https://doc.babylonjs.com/typedoc/modules/BABYLON
engine: BABYLON Engine 实例对象, API 文档参见 https://doc.babylonjs.com/typedoc/classes/BABYLON.Engine
scene: BABYLON Scene 实例对象, API 文档参见 https://doc.babylonjs.com/typedoc/classes/BABYLON.Scene
sceneData:Wyn SceneData 实例对象,API 文档参见 ISceneData 。
type=info
提示
通过 sceneData 对象的以下两个方法可以显示或隐藏数据图层。
enableDataLayer
disableDataLayer
用法示例:
sceneData.disableDataLayer("模型数据标注")
而数据图层数据改变支持的参数如下。
参数类型:
BABYLON: BABYLON 全局类型对象, API 文档参见 https://doc.babylonjs.com/typedoc/modules/BABYLON
engine: BABYLON Engine 实例对象, API 文档参见 https://doc.babylonjs.com/typedoc/classes/BABYLON.Engine
scene: BABYLON Scene 实例对象, API 文档参见 https://doc.babylonjs.com/typedoc/classes/BABYLON.Scene
dataLayerData: Wyn数据图层实例对象,包含了数据图层绑定的数据,API文档参见 dashboard.VisualNS.IPlainDataView
2. 在仪表板中使用
示例中是一个手动触发的JS脚本,所以这里我们添加一个图片,并为其设置左键选项为命令。
添加一条命令,并设置命令。
预览即呈现预期的效果。