1.0.0 • Published 3 years ago

@dzv/three-map v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

基于ThreeJs封装的地图组件

安装

npm install @dzv/three-map --save

如何使用

import ThreeMap from "@dzv/three-map";

// 初始化地图
const dom = document.getElementById('myMap');
const map = new ThreeMap({}, geojson);
map.init(dom);

地图config配置

参数说明类型默认值
background背景颜色string#11182f
center地图中心点经纬度array103.754443, 30.544037
scale地图缩放number80
translate地图平移array0, 0
depth地图深度number2
line.color轮廓线颜色string#5a77c5
area.color区域颜色string#344e85
area.opacity区域透明度float0.7
area.hover是否开启区域hover效果booleantrue
area.hoverColor区域鼠标悬浮颜色string#5576bb
area.upHover是否开启区域悬浮凸起效果booleanfalse
area.upHoverDepth区域凸起深度number2
controls.enableZoom启用或禁用摄像机的缩放booleantrue
controls.zoomSpeed缩放速度number1
controls.minDistance缩放最小number10
controls.maxDistance缩放最大number1000
camera.position相机x,y,z 对象三维坐标array80, 5, 100
camera.lookAtx,y,z相机看的位置array0, 0, 0
camera.fov摄像机视锥体垂直视野角度number35
camera.near摄像机视锥体近端面number1
camera.far摄像机视锥体远端面number10000
text.show地名是否显示booleanfalse
text.color字体颜色string#fff
text.fontSize字体大小number12

Method方法

参数说明例子
map.scene.add()接入外部组件的方法map.scene.add(group)
map.lnglatToVector3()经纬度转地图三维坐标map.lnglatToVector3(Array[])
map.destroy()销毁map.destroy()

内置地图数据

import china from "@dzv/three-map/lib/mapData/china.json"; // 中国地图
import shanghai from "@dzv/three-map/lib/mapData/shanghai.json"; // 上海市
import yunnan from "@dzv/three-map/lib/mapData/yunnan.json"; // 云南省
import neimenggu from "@dzv/three-map/lib/mapData/neimenggu.json"; // 内蒙古自治区
import beijing from "@dzv/three-map/lib/mapData/beijing.json"; // 北京市
import taiwan from "@dzv/three-map/lib/mapData/taiwan.json"; // 台湾省
import jilin from "@dzv/three-map/lib/mapData/jilin.json"; // 吉林省
import sichuan from "@dzv/three-map/lib/mapData/sichuan.json"; // 四川省
import tianjin from "@dzv/three-map/lib/mapData/tianjin.json"; // 天津市
import ningxia from "@dzv/three-map/lib/mapData/ningxia.json"; // 宁夏回族自治区
import anhui from "@dzv/three-map/lib/mapData/anhui.json"; // 安徽省
import shandong from "@dzv/three-map/lib/mapData/shandong.json"; // 山东省
import shanxi from "@dzv/three-map/lib/mapData/shanxi.json"; // 山西省
import guangdong from "@dzv/three-map/lib/mapData/guangdong.json"; // 广东省
import guangxi from "@dzv/three-map/lib/mapData/guangxi.json"; // 广西壮族自治区
import xinjiang from "@dzv/three-map/lib/mapData/xinjiang.json"; // 新疆维吾尔族自治区
import jiangsu from "@dzv/three-map/lib/mapData/jiangsu.json"; // 江苏省
import jiangxi from "@dzv/three-map/lib/mapData/jiangxi.json"; // 江西省
import hebei from "@dzv/three-map/lib/mapData/hebei.json"; // 河北省
import henan from "@dzv/three-map/lib/mapData/henan.json"; // 河南省
import zhejiang from "@dzv/three-map/lib/mapData/zhejiang.json"; // 浙江省
import hainan from "@dzv/three-map/lib/mapData/hainan.json"; // 海南省
import hubei from "@dzv/three-map/lib/mapData/hubei.json"; // 湖北省
import hunan from "@dzv/three-map/lib/mapData/hunan.json"; // 湖南省
import anmen from "@dzv/three-map/lib/mapData/aomen.json"; // 澳门特别行政区
import gansu from "@dzv/three-map/lib/mapData/gansu.json"; // 甘肃省
import fujian from "@dzv/three-map/lib/mapData/fujian.json"; // 福建省
import xizang from "@dzv/three-map/lib/mapData/xizang.json"; // 西藏自治区
import guizhou from "@dzv/three-map/lib/mapData/guizhou.json"; // 贵州省
import liaoning from "@dzv/three-map/lib/mapData/liaoning.json"; // 辽宁省
import chongqing from "@dzv/three-map/lib/mapData/chongqing.json"; // 重庆市
import shanxisheng from "@dzv/three-map/lib/mapData/shanxisheng.json"; // 陕西省
import qinghai from "@dzv/three-map/lib/mapData/qinghai.json"; // 青海省
import xianggang from "@dzv/three-map/lib/mapData/xianggang.json"; // 香港特别行政区
import heilongjiang from "@dzv/three-map/lib/mapData/heilongjiang.json"; // 黑龙江省

import encoder from "geojson-decoder"; // geojson解码工具
const heilongjiangGeojson = encoder.decode(heilongjiang); // 解码 -- 所有内置地图数据都需要解码