JSAPI THREE 安装使用

我会从vue前端框架入手,教大家从头搭建一个JSAPI three底板,流程很简单

Vue

初始化项目

这里用的是vite

js 复制代码
// 初始化vite项目(本地用的是vite@6.3.5)
// 选Vue、Javascript
npm create vite@latest

// 安装
npm run install

// 启动
npm run dev

安装JSAPI Three

www.npmjs.com/package/@ba...

js 复制代码
npm i @baidumap/mapv-three

还需要安装一个rollup-plugin-copy插件,在vite.config.js中添加plugin配置,用于将node_modules下面mapvthree包的资源拷贝到public目录下供引擎访问

js 复制代码
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import copy from 'rollup-plugin-copy';

// https://vite.dev/config/
export default defineConfig({
  plugins: [
    copy({
        targets: [
            {src: 'node_modules/@baidumap/mapv-three/dist/assets', dest: 'public/mapvthree'},
        ],
        verbose: true,
        hook: 'buildStart',
    }),
    vue()
  ],
})

使用

设置Baidu地图AK,如果没有需要先申请一下 申请百度地图开发者AK和基本使用_百度地图ak-CSDN博客

js 复制代码
// index.html
window.MAPV_BASE_URL = 'mapvthree/';

创建一个地图容器,用来指定mapvthree的展示区域

js 复制代码
<template>
  <div id='map'></div>
</template>

<style scoped>
#map {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

初始化引擎,设置中心点

js 复制代码
<script setup>
import { onMounted, onBeforeUnmount } from 'vue'
import * as mapvthree from '@baidumap/mapv-three';

let engine = null

onMounted(() => {
  const container = document.getElementById('map');
  mapvthree.BaiduMapConfig.ak = '123';
  engine = new mapvthree.Engine(container, {

  });

  engine.map.lookAt([113, 23], {
    pitch: 0,
    heading:0,
    range: 20000000
  })
})

onBeforeUnmount(() => {
  if (engine) {
    engine.dispose()
    engine = null
  }
})

</script>

现在就能看到效果了

可以简单修改配置就能展示球

js 复制代码
engine = new mapvthree.Engine(container, {
    map: {
        projection: 'EPSG:4978'
    }
});
相关推荐
遇见~未来17 分钟前
JavaScript数组全解析:从本质到高级技巧
开发语言·前端·javascript
石像鬼₧魂石21 分钟前
80 端口(Web 服务)渗透测试完整总结(含踩坑 + 绕过 + 实战流程)
linux·运维·服务器·前端·网络·阿里云
C_心欲无痕1 小时前
nginx - 核心概念
运维·前端·nginx
开开心心_Every1 小时前
安卓做菜APP:家常菜谱详细步骤无广简洁
服务器·前端·python·学习·edge·django·powerpoint
前端_Danny1 小时前
用 ECharts markLine 实现节假日标注
前端·信息可视化·echarts
古城小栈1 小时前
Rust 丰富&好用的 格式化语法
前端·算法·rust
丢,捞仔1 小时前
uni-app上架应用添加权限提示框
前端·javascript·uni-app
Glink1 小时前
从零开始编写自己的AI账单Agent
前端·agent·ai编程
Hilaku1 小时前
我是如何用一行 JS 代码,让你的浏览器内存瞬间崩溃的?
前端·javascript·node.js
努力犯错玩AI1 小时前
如何在ComfyUI中使用Qwen-Image-Layered GGUF:完整安装和使用指南
前端·人工智能