物联网3D可视化场景中,经常用到标注元素作为线路标绘、业务区域标绘,比如定位物联网设备或危险源位置,进行安全作业或者路径导航规划,远程解决难题。 ThingJS的3D标记“Marker”,往往用于顶牌,有两个主要作用: 传入div, image或canvas写文字,展现在3D场景中或绑定在3D物体上; 添加一个图片放置到你希望的位置,作为孩子添加到对象身上,随着对象一同移动。
注意,标记Marker受距离远近影响,呈现近大远小的 3D 效果,也会在 3D 空间中实现前后遮挡。 功能列表更新Marker动画模式,实现跳跃、闪烁、发光等物体效果,可以利用ThingJS 3D源码来开发,体验动手的乐趣! - // 创建文字+图片标注
- createElement("textAndPictureMarker");
- // 创建普通图片标注
- createElement("pictureMarker");
- // 创建文字标注
- createElement("textMarker");
- // 跳跃动画
- new THING.widget.Button('跳跃动画开启', function () {
- // 获取按钮value值,进行改变
- var posInfo = document.querySelectorAll("#widget_root input");
- if (posInfo[1].value == "闪烁动画关闭") {
- posInfo[1].value = "闪烁动画开启";
- }
- if (posInfo[2].value == "关闭发光") {
- posInfo[2].value = "图片标注发光";
- }
- // 如果闪烁动画/图片标注发光开启中,先关闭闪烁动画/图片标注发光,再开启跳跃动画
- $('.textAndPictureMarker').removeClass('scaleAnimation');
- $('.pictureMarker').removeClass('scaleAnimation');
- $('.textMarker').removeClass('scaleAnimation');
- $('#box').css('display', 'none');
- // 跳跃动画开启/关闭
- if (posInfo[0].value == "跳跃动画开启") {
- $('.textAndPictureMarker').addClass('moveAnimation');
- $('.pictureMarker').addClass('moveAnimation');
- $('.textMarker').addClass('moveAnimation');
- posInfo[0].value = "跳跃动画关闭";
- } else {
- $('.textAndPictureMarker').removeClass('moveAnimation');
- $('.pictureMarker').removeClass('moveAnimation');
- $('.textMarker').removeClass('moveAnimation');
- posInfo[0].value = "跳跃动画开启";
- }
- })
复制代码
|