当前位置: 首页 > wzjs >正文

广州seo网站推广技巧西安网站免费制作

广州seo网站推广技巧,西安网站免费制作,公司国际网站怎么做,综合网站推广的含义👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象…

👨‍⚕️ 主页: gis分享者
👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅!
👨‍⚕️ 收录于专栏:mapbox 从入门到精通

文章目录

  • 一、🍀前言
    • 1.1 ☘️mapboxgl.Map 地图对象
    • 1.2 ☘️mapboxgl.Map style属性
    • 1.3 ☘️threebox Line静态对象
  • 二、🍀使用threebox,实现立体三维飞线图
    • 1. ☘️实现思路
    • 2. ☘️代码样例


一、🍀前言

本文详细介绍如何基于mapbox-gl v3.*.* 版本,结合threejs(threebox)实现立体三维飞线图,亲测可用。希望能帮助到您。一起学习,加油!加油!

1.1 ☘️mapboxgl.Map 地图对象

mapboxgl.Map 地图对象。
构造函数:
new Map class(options: Object)
本例使用属性:
在这里插入图片描述

1.2 ☘️mapboxgl.Map style属性

本例使用属性:

  • version:版本号,当前固定值为8。
  • sources:数据源集合(必填,用于包含一系列数据源
    source,这些数据源提供了在地图上显示的数据)。值为{}对象。{}中的属性名是数据源的名称。
    每个数据源 source 有的属性:
    type:数据源类型
    tiles:数据源地址
    tileSize:数据源切片大小
  • layers:图层集合(必填,包含了一系列图层 layer,这些图层指定了如何渲染数据源提供的数据)
    每个layer的属性(当前示例用到的):
    id:图层id
    type:图层类型
    source:数据源名称

1.3 ☘️threebox Line静态对象

tb.line(options);

在整个三维空间中向地图添加一条线。颜色渲染独立于场景照明。在内部,调用自定义线着色器。

option是否必填默认值类型说明
geometryNAlineGeometry绘制线条的经纬度坐标数组
colorblackcolor线条的颜色。与其他Threebox对象不同,无论场景照明如何,此颜色都将在屏幕上精确渲染
width1number线条宽度。与其他Threebox对象不同,此宽度以显示像素为单位,而不是米或场景单位。
opacity1number线的透明度

threebox_API

二、🍀使用threebox,实现立体三维飞线图

1. ☘️实现思路

  • 1、引入’mapbox-gl’、'mapbox-gl/dist/mapbox-gl.css’、‘threebox-plugin’文件
  • 2、添加id为map的html页面要素,定义map样式。
  • 3、定义initMap初始化地图方法,方法内创建mapboxgl.Map地图对象map。map绑定‘style.load’事件,在load回调事件内部,map添加自定义图层,自定义图层onAdd方法内实现三维飞线的添加,具体代码参考代码样例。在mounted钩子函数中调用initMap方法。

2. ☘️代码样例

<template><div id='map'></div>
</template><script>
/** 迁徙线 **/
import mapboxgl from 'mapbox-gl'
import 'mapbox-gl/dist/mapbox-gl.css'
import { Threebox } from 'threebox-plugin'
export default {name: 'ThreeBoxMigrateLine',data () {return {map: null}},mounted () {this.$nextTick(() => {this.initMap()})},methods: {initMap () {mapboxgl.accessToken = 'mapbox官网注册token'this.map = new mapboxgl.Map({container: 'map',zoom: 2,minZoom: 0,pitch: 45,center: [116.4, 39.9],style: 'mapbox://styles/mapbox/light-v10'})let self = thisthis.map.on('load', function () {let lines = self.getMigrateLineData()self.map.addLayer({id: 'custom_layer',type: 'custom',renderingMode: '3d',onAdd: function (map, mbxContext) {window.tb = new Threebox(map,mbxContext,{defaultLights: true})for (let line of lines) {var lineOptions = {geometry: line,color: (line[1][1] / 180) * 0xffffff, width: Math.random() + 1}let lineMesh = window.tb.line(lineOptions)window.tb.add(lineMesh)}},render: function () {window.tb.update()}})})},getMigrateLineData () {var lines = new Array()// 25个坐标过渡点var arcSegments = 25// 50条飞线var lineQuantity = 50for (var i = 0; i < lineQuantity; i++) {var line = new Array()// 目标点坐标var destination = [300 * (Math.random() - 0.5), 140 * (Math.random() - 0.5)]// 最大高度var maxElevation = Math.pow(Math.abs(destination[0] * destination[1]), 0.5) * 80000var increment = destination.map(function (direction) {return direction / arcSegments})for (var l = 0; l <= arcSegments; l++) {var waypoint = []if (l === 0) {// 飞线起点坐标waypoint = [116.4, 39.9]// waypoint = [0, 0]} else {waypoint = increment.map(function (direction) {return direction * l})waypoint = [waypoint[0] + 116.4, waypoint[1] + 39.9]}var waypointElevation = Math.sin(Math.PI * l / arcSegments) * maxElevationwaypoint.push(waypointElevation)line.push(waypoint)}lines.push(line)}return lines}}
}
</script><style scoped>
#map{height: 100vh;width: 100vw;
}
</style>

效果如下:
在这里插入图片描述


文章转载自:

http://r3IsZzrx.pbgnx.cn
http://cB7LvpKb.pbgnx.cn
http://XBHdEk58.pbgnx.cn
http://lkTJIIaB.pbgnx.cn
http://Eu5MAIF1.pbgnx.cn
http://SoSPBpyP.pbgnx.cn
http://z1It6PBd.pbgnx.cn
http://stWefsQY.pbgnx.cn
http://LgJn0OGC.pbgnx.cn
http://jApE4TaG.pbgnx.cn
http://YO7JS24e.pbgnx.cn
http://HcUWC941.pbgnx.cn
http://t6KWsZ0q.pbgnx.cn
http://7hJMxsvZ.pbgnx.cn
http://5W6BgZhs.pbgnx.cn
http://3JJ3qMsA.pbgnx.cn
http://HopFxHWh.pbgnx.cn
http://rtWqoJHs.pbgnx.cn
http://w7s3oThw.pbgnx.cn
http://3D3lNKo8.pbgnx.cn
http://EhXeL8UY.pbgnx.cn
http://Xi2TCvym.pbgnx.cn
http://b0KELDF4.pbgnx.cn
http://0Wdss1AS.pbgnx.cn
http://DslYsB4U.pbgnx.cn
http://Br1fLxck.pbgnx.cn
http://93khAU6y.pbgnx.cn
http://YdZ5vAVQ.pbgnx.cn
http://pfhckyrr.pbgnx.cn
http://4wCXOWT8.pbgnx.cn
http://www.dtcms.com/wzjs/660868.html

相关文章:

  • 山西省诚信建设网站wordpress主题php
  • 北京网站快速优化排名全国十大代理记账公司
  • 阿里云网站建设优化学校网页制作模板
  • 网站开发是分为前端和后端吗现在有什么有效的引流方法
  • 国外网站能否做百科参考资料免费crm特色
  • 青岛建设投资公司网站wordpress添加用户注册登录界面
  • 微信咋做自己的网站山西网站搜索排名优化公司
  • 苏州网站建设网站开发义乌app制作公司
  • 网站如何做修改密码的相关验证番禺市桥做网站公司
  • 廊坊哪里有做网站的外贸网站做啥
  • 免费申请账号网站企业门户网站页面模板
  • 站长工具官方网网站转wordpress
  • seo 合理的网站结构减肥推广
  • wordpress the7 3.80重庆百度优化
  • 自己做彩票网站简单吗三亚谁做网站
  • 个人网站如何做网站如何注册微信公众平台 类型
  • 网站建设服务代理商发稿时间是什么意思
  • 制作音乐的软件免费潍坊seo关键词排名
  • 网站开发介绍ppt简述网页制作的步骤
  • 天河建设网站系统当图网免费ppt下载
  • 毕业设计做视频网站好做么wordpress 5.0.2企业站主题
  • 网站建设属于会计哪个科目有公司如何制作网站
  • 杭州网站推广服务湖南株洲网
  • 山西百度公司做网站的商城网站建设最好的公司
  • 如何做网赌网站男女做暖暖的视频试看网站
  • 网站维护的主要工作中国接单外发加工网
  • 哪些网站可以做edge主页深圳市坪山区
  • 网站的设计分析广州网站建设信科网络
  • 网站搭建流程图企业网站系统功能设计说明
  • app 网站开发团队人员配置wordpress站内计费搜索