模模搭API是嵌入在模模搭系统内部的、可动态执行的类Javascript脚本,它提供了对模模搭场景内对象、界面行为和效果的控制,可实现特定第三方行业应用,诸如仓储管理、预案演练、档案管理、智能大厦等。
模模搭API具有数据交互能力。通过数据接口,第三方行业应用可驱动特定3D场景各类信息动态变化,满足实时状态可视化展示的要求 。
在模模搭体系中有2个重要的概念:模型和场景。
1 模型
模型是物体的多边形表示,3D模型表达的物体可以是现实世界的实体,也可以是虚构的物体。任何物理自然界存在的东西都可以用3D模型表示。
模模搭系统中的“模型”和一般3D模型概念完全一致。模模搭系统中的3D模型都可以像积木一样放到一个场景中,组合出一个现实的生活场景。
模模搭提供官方的3D模型库,其中公开免费模型库中的模型可供使用者在搭建过程中免费使用;模模搭也可(有偿)提供各类行业模型库,方便用户完成各类更专业的行业应用场景搭建;模模搭还提供了一个3DSMax模型上传插件,用户可使用该插件自行上传自己需要增补的3D模型。理论上模模搭模型库提供了无限模型扩展可能。
2 场景
场景是模模搭的基本概念。使用者在模模搭中通过组合、摆放模模搭模型库中的模型,可像搭积木一样搭建完成任意现实生活场景,可以是一个园区、一个工厂车间、一个港口码头或其它任意模模搭3D模型组合,上述搭建成的每个场景我们称之为一个“模模搭场景”。
每个模模搭场景都可保存在模模搭云平台上,并可在模模搭平台随时打开编辑、预览或通过API进行二次开发。模模搭场景在一定限制条件下(有偿),也可从模模搭云平台下载本地,并可导入到“模模搭离线部署版”中预览、使用。
在搭建系统的右侧列表中,用户可以使用3种常见的物体:模型、贴图与功能。
1 模型
一般常见的物体如建筑、车辆、人物、桌子等;支持用户上传。
2 贴图
覆于普通模型表面的平面材质图;支持用户上传。
动态效果如火、雨、闪电;辅助功能如画线、画水管、写文字等;目前不支持用户上传。
在模模搭体系中有4个层级:室外、建筑、楼层、房间。
1 室外
视野范围最大的层级:
2 建筑
不含外立面的建筑层级:
3 楼层
楼层层级:
4 房间
房间层级:
模模搭API可以在线调试和保存代码,开发者进入调试页面以后,可发现调试页面分为脚本编辑窗口和可视化场景窗口两部分。在场景区域的左下方输入场景ID后点击“场景预览”按钮载入场景,可开始调试API脚本。开发者也可以在输入场景ID后点击“场景编辑”按钮,对场景进行编辑和保存。
调试页面地址:在线调试
脚本调试完成后,可在调试环境中点击页面下方的“代码部署”按钮,代码部署成功后预览模式打开场景即可实现脚本应用。
也可将脚本内容粘贴到“我的作品”对应场景的“配置场景”弹出框里来实现。
代码配置:我的作品
调试页面可以支持快捷键操作,目前具有如下快捷键:
Ctrl+Enter:执行脚本
Ctrl+R:重置场景
Ctrl+S:保存场景
Ctrl+/ :代码/注释文本切换
模模搭API2.0目前提供如下17个API类 :
camera |
用于管理场景内的摄像机对象 |
object |
用于管理场景内的物体对象 |
gui |
用于管理场景内的图形界面对象 |
ugui |
用于管理场景内的高级图形界面对象 |
BaseObject |
用于对场景内已存在物体进行具体操作 |
ScriptObject |
用于对场景内已存在物体添加脚本 |
util |
一般的常用方法 |
input |
用于判定键盘鼠标的输入状态 |
selector |
用于选取场景内对象 |
fps |
用于管理场景内第一人称行走 |
level |
用于管理场景内层级对象 |
console |
用于管理控制台 |
array |
用于管理数组数据类型 |
string |
用于对字符串进行计算处理 |
table |
用于管理表数据类型 |
server |
用于与服务端进行数据交互 |
临时函数 |
并非模模搭规范化函数,但仍可用于模模搭API开发 |
查看明细:API说明
API脚本目前可以提供如下功能:
模模搭脚本是嵌入在模模搭系统内的、类似Javascript语言脚本,并不完全一致,由于是内部脚本,所以没有document、window等这样浏览器上才有的对象。
模模搭脚本可以用在线编辑器开发,在场景区域的左下方输入场景ID后点击“场景预览”按钮载入场景。
在模模搭【我的作品】中找到对应场景,在【配置场景】中填入调试好的脚本代码。如下:
物体动画是在建模阶段内置于物体的,建模时如果没有添加动画则该物体无动画。
模模搭调试界面需要加载3D插件,同时开多个3D页面会影响性能,并容易造成插件崩溃。建议同时开启页面数量不大于3个。
在搭建场景的过程中,需要勾选物体属性“预览时可选”,这样在预览状态时物体才可以被选中,进而执行事件对应的代码。
2018-06-28:新增函数
1、增加【API类参考-临时函数-系统类】时间轴函数;
2、增加【API类参考-临时函数-系统类】室内灯光函数;
2018-01-02:新增API使用专题
1、新增【API说明-API使用专题-API中特殊对象】内容;
2017-12-06:新增API使用专题
1、示例代码支持按钮复制;
2、新增【API说明-API使用专题-鼠标框选物体】内容;
2017-11-28:更新/新增API使用专题
1、更新【API说明-API使用专题-API代码使用方法】内容;
2、新增【API说明-API使用专题-监控摄像头使用】内容;
2017-11-09:新增函数/API使用专题
1、增加【API类参考-临时函数】1个;
2、增加【API说明-API使用专题-模模搭鹰眼图使用】内容;
3、增加【API说明-API使用专题-模模搭云图使用】内容;
4、函数扩充至212个;
2017-10-25:新增函数/API使用专题
1、增加【API类参考-userInfo属性函数】2个;
2、增加【API说明-API使用专题-数据源识别码使用】内容;
3、函数扩充至211个;
2017-10-18:新增函数
1、增加【BaseObject属性函数】2个
2、增加【临时函数-系统类】函数2个;
3、函数扩充至209个;
2017-9-27:新增函数
1、增加【API说明-API使用专题-数据推送工具】内容;
2、增加【临时函数-对象操作类】函数1个;
3、函数扩充至205个;
2017-9-21:修订文档
1、修订API数据接口文档,增加在线调试内容;
2017-9-15:新增API使用专题
1、增加【API说明-API使用专题-自定义图片路径】内容;
2017-9-13:新增函数
1、增加BaseObject方法函数2个;
2、函数扩充至204个;
2017-9-1:新增函数
1、增加BaseObject属性函数1个;
2、增加临时函数3个;
3、函数扩充至202个;
4、API说明页面增加API使用专题内容;
5、专题内容包括API代码使用方法、模模搭面板介绍
2017-8-25:新增函数
1、增加util方法函数1个;函数扩充至198个;
2、更新API说明页面,改进导航栏
2017-8-10:新增函数
1、增加ugui方法函数1个;
2、更新util方法函数1个;
3、函数扩充至197个
2017-8-8:页面样式改进
1、“API说明”页面代码浏览样式变更;
2017-8-4:新增函数
1、增加camera方法函数1个;
2、增加ugui方法函数2个;
3、增加util方法函数1个;
4、函数扩充至196个
2017-8-1:新增函数
1、增加camera属性函数2个;
2、函数扩充至192个
2017-7-31:新增函数
1、增加selector方法函数2个;
2、增加selector属性函数1个;
3、函数扩充至190个
2017-7-28:新增函数
1、更新object.findByProperty函数;
2、更新ugui.destroy示例;
3、新增BaseObject属性函数1个;
4、新增临时函数2个;
5、函数扩充至187个
2017-7-26:新增函数
1、增加array类;
2、增加array方法函数12个;
3、函数扩充至184个
2017-7-25:新增函数
1、更新临时函数分类
2、增加临时函数8个;
3、更新ugui方法函数示例1个;
4、增加table类;
5、增加table方法函数6个;
6、函数扩充至172个
2017-7-24:新增函数
1、增加BaseObject方法函数3个;
2、增加BaseObject属性函数2个;
3、增加selector类;
4、增加selector方法函数2个、属性函数1个;
5、增加函数分类索引表;
6、函数扩充至158个
2017-7-21:新增函数
1、增加临时方法函数13个;
2、util方法函数1个;
3、BaseObject方法函数1个;
4、BaseObject属性函数1个;
5、函数扩充至150个;
2017-7-20:新增函数
1、增加gui方法函数3个;
2、camera属性函数1个;
3、增加server类;
4、增加server方法函数3个;
5、函数扩充至134个;
2017-7-19:新增函数
1、增加string类;
2、增加string方法函数14个;
3、函数扩充至127个
2017-7-17:新增函数
1、增加camera属性函数7个;
2、增加ugui方法函数12个;
3、增加BaseObject属性函数4个;
4、增加fps方法函数3个、事件函数2个;
5、增加level方法函数3个;
6、函数扩充至113个
2017-6-23:新增函数
1、增加object.findByProperty等函数7个;函数扩充至82个;
2、函数对应参数增加至111个;
2017-5-19:新增函数
1、增加BaseObject.getProperty等函数3个;函数扩充至75个;
2、函数对应参数增加至102个;
2017-4-28:模模搭API2.0英文文档发布
1、海外用户可以通过本页右上角的链接访问英文API文档
2017-4-1:API2.0开放平台正式发布
1、共发布API2.0函数72个;
2、函数对应参数99个;
3、离线部署版支持初始化数据接口、实时监控数据接口;
4、数据接口支持内部API脚本调用,开发者可保存自定义的场景配置;
5、修复了一个API脚本调用数据接口的BUG。