酷大师插件官方定义消息
酷大师针对与插件 UI html 间的通信定义了一些官方消息。这些官方消息主要用于将插件生成的3d模型,插入到酷大师方案中。酷大师官方插件中的"智能灯箱“,”智能模型“等插件,就做了这样的事情。
官方消息分为两类:
- 插件 UI html 向酷大师侧发送的消息
- 酷大师侧向插件 UI html 发送的消息
一、插件 UI html 向酷大师侧发送的消息类型
插件侧会向酷大师侧发送消息用于与酷大师间进行通信,插件侧可以选择是否监听酷大师侧向插件侧发送的消息,酷大师官方定义的用于插件侧向酷大师侧发送的消息如下:
消息 | 作用 | 携带信息 | 示例 |
---|---|---|---|
insert_model | 该消息由插件侧发送给酷大师侧,用于提醒酷大师在画布侧插入模型 注意: 插入模型时记得缓存一份数据,用于成功插入模型后,监听酷大师侧发生的 extmodel_inserted 消息时使用 |
| postMessage({ cmd: "insert_model", params: { appKey: "插件id", box: { min:{ x: 0, y: 0, z: 0 }, max:{ x: 100, y: 100, z: 100 } }, //模型包围盒大小 resource: "选中模型唯一标识符(modelIndex)", type:"custom" // 模型类型 } }) |
update_model | 该消息由插件侧发送给酷大师侧,用于提醒酷大师更新在画布中的模型 |
| postMessage({ cmd: "update_model", params: { appKey: "插件id", box: { min:{ x: 0, y: 0, z: 0 }, max:{ x: 100, y: 100, z: 100 } }, //模型包围盒大小 resource: "选中模型唯一标识符(modelIndex)", type:"custom" // 模型类型 } }) |
cancel_insert | 该消息由插件侧发送给酷大师侧,用于提醒酷大师取消插入模型 |
| postMessage({ cmd: "cancel_insert", params: { appKey: "插件id", resource: "选中模型唯一标识符(modelIndex)", type:"custom" // 模型类型 } }) |
二、酷大师侧向插件 UI html 发送的消息类型
酷大师侧会向插件侧发送消息用于与插件间进行通信,对于该种消息,插件侧仅需要监听即可,酷大师官方定义的用于酷大师侧向插件侧发送的消息如下:
消息 | 作用 | 携带信息 | 示例 |
---|---|---|---|
edit_model | 该消息由酷大师侧发送给插件侧,用于向插件侧发送关于模型的唯一标识符给插件侧,用于进行如下操作。 该消息分为两种情况: 1.用户点击已有模型,酷大师向插件侧发送该消息时携带所选中模型的标识符,用于提醒插件用户在酷大师侧已选中某个特定模型,便于插件对该模型进行操作; 2.用户未选中模型,或点击鼠标右键,酷大师向插件侧发送该消息的同时携带的模型标识符为空,用于提醒插件用户在酷大师侧未选中模型。 |
| 1.用户点击已有模型 : postMessage({ cmd: "edit_model", //消息标识 payload: { modelIndex: "选中模型唯一标识符", } }) 2.用户未选中模型,或点击鼠标右键时 : postMessage({ cmd: "edit_model", //消息标识 payload: { modelIndex: undefined, } }) |
extmodel_inserted | 该消息由酷大师侧发送给插件侧,用于提醒插件侧模型已成功插入,可根据插件侧发送extmodel_inserted消息时缓存的数据进行余下步骤 | <
| postMessage({ cmd: "extmodel_inserted", //消息标识 payload: { modelIndex: undefined, } }) |