为了账号安全,请及时绑定邮箱和手机立即绑定

ThingJS官方示例(三):3D标记“Marker”跳跃、闪烁和发光动画效果

标签:
Html5 JavaScript

物联网3D可视化场景中,经常用到标注元素作为线路标绘、业务区域标绘,比如定位物联网设备或危险源位置,进行安全作业或者路径导航规划,远程解决难题。

ThingJS的3D标记“Marker”,往往用于顶牌,有两个主要作用:

  1. 传入div, image或canvas写文字,展现在3D场景中或绑定在3D物体上;

  2. 添加一个图片放置到你希望的位置,作为孩子添加到对象身上,随着对象一同移动。

注意,标记Marker受距离远近影响,呈现近大远小的 3D 效果,也会在 3D 空间中实现前后遮挡。


https://img4.sycdn.imooc.com/5fe5dba00001212b07200409.jpg

功能列表更新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 = "跳跃动画开启";
        }
    })


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消