new mars3d.graphic.Popup({实现插入轮播图组件的思路参考

182 篇文章 2 订阅
164 篇文章 0 订阅
文章讲述了如何在Mars3D的官网示例基础上,利用Vue和WebComponents技术实现轮播图的浮动弹框功能,通过原生JS加载轮播组件,获取DOM对象,并参考开源项目和相关博客进行定制开发。
摘要由CSDN通过智能技术生成

需求场景:

官网的示例链接的浮动监控点示例,实现的是播放视频。

但是我的需求场景是播放轮播图,此时该怎么实现呢?

示例地址:

功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技

相关代码:

function addRandomGraphicByCount(graphicLayer, position) {

  const graphicImg = new mars3d.graphic.DivGraphic({

    position,

    style: {

      html: ` <div class="mars3d-camera-content">

                      <img class="mars3d-camera-img" src="img/icon/camera.svg" >

                    </div>

                    <div class="mars3d-camera-line" ></div>

                    <div class="mars3d-camera-point"></div>

                  `,

      offsetX: -16,

      distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 100000)

    },

    popup: `<video src='http://data.mars3d.cn/file/video/lukou.mp4' controls autoplay style="width: 300px;" ></video>`,

    popupOptions: {

      offsetY: -170, // 显示Popup的偏移值,是DivGraphic本身的像素高度值

      template: `<div class="marsBlackPanel animation-spaceInDown">

                        <div class="marsBlackPanel-text">{content}</div>

                        <span class="mars3d-popup-close-button closeButton" >×</span>

                      </div>`,

      horizontalOrigin: Cesium.HorizontalOrigin.LEFT,

      verticalOrigin: Cesium.VerticalOrigin.CENTER

    }

  })

  graphicLayer.addGraphic(graphicImg)

}

解决思路:

1.new mars3d.graphic.Popup({不仅支持字符串也支持传入一个dom对象,只要能够拿到轮播组件的dom对象,传入即可。

思路:

 1. 先加载出轮播图组件(可以不显示)原生js获取dom。

2. new Vue 之后可以拿到dom对象 

3. 通过webcomponents 自定义 html(可当成html使用)

参考:

开源版本vue基础项目或功能示例内
src\widgets\basic\query-poi\query-popup.vue

基础项目链接:mars3d-vue-project: 在Vue 3.x技术栈下的Mars3D平台 基础项目

博客地址:使用vue组件实现mars3d的popup或tooltip_vue中3d页面上出现个小弹框怎么设计-CSDN博客

浮动轮播图效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值