# ArcGIS 瓦片
mapgis-arcgis-tile-layer
# 属性
All common layers props
# baseUrl
- 类型:
String
- 默认值:
null
- 非侦听属性
- 描述: 地图请求的基地址路径。
# tileSize
- 类型:
Number
- 默认值:
512
- 描述: 加载瓦片的大小,如果数据瓦片本身是256大小的设置512大小会被强制拉伸至512大小。
512 | 256 |
---|---|
天地图模糊
请传入tileSize为256即可,2种方式
<mapgis-arcgis-tile-layer :tileSize="256" />
<mapgis-arcgis-tile-layer :source="{'tileSize': 256}" />
<template>
<div class="hello">
<mapgis-web-map crs="EPSG:4326" :center="[107.19, 26.85]" :zoom="3">
<mapgis-arcgis-tile-layer
layerId="arcgis_tile_layerId"
baseUrl="http://map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer"
:tileSize="256"
/>
</mapgis-web-map>
</template>
# zoomOffset
- 类型:
Number
- 默认值:
0
- 非侦听属性
- 描述: 层级偏移量
# forceOffset
- 类型:
Boolean
- 默认值:
false
- 非侦听属性
- 描述: 是否强制执行层级偏移量,这个地方会导致 4326 无法主动传入 offset=0 的情况,但是默认的 arcgis 测试 10.3 10.5 10.7 后发现 arcigs 默认情况下就是 offset=-1, 因此忽略主动传入 0 的场景. 这种情况只会发生在操作 arcserver 的时候,人为刻意的进行一张 512*512 的操作导致,这个操作本身是一种错误的操作
WARNING
使用场景,当 arcgis 裁剪出的 4326、4490、4610 服务的初始级正好就对应墨卡托投影的第一级的时候。类似下面的实现形式,在东西半球的下面各补充一个虚拟的空间范围,使得整个地球变成一个矩形
// [-180, -270, 180, 90]
// [-180, 90] |------|------| [180, 90]
// |--lt--|--rt--|
// |------|------|
// |--lb--|--rb--|
// [-180, -270] |------|------| [180, -270]
# layer
类型:
Object
默认值:
null
侦听属性
描述: 栅格瓦片图层可通过 layer 参数中的 paint、filter、layout 来修改图层样式属性, 更多 raster 的属性参考官网
paint: https://docs.mapbox.com/mapbox-gl-js/style-spec/layers/#raster)
layout: https://docs.mapbox.com/mapbox-gl-js/style-spec/layers/#layout-property
filter: https://docs.mapbox.com/help/glossary/filter/
https://docs.mapbox.com/mapbox-gl-js/style-spec/layers/#filter
示例:
layer:{ paint:{ raster-opacity:0.5 } } layer:{ filter:["all", ["==", "mpginf_id", "1"]] } layer:{ layout:{ visibility:'visible' } }
# 示例
<template>
<mapgis-web-map
class="main"
crs="EPSG:3857"
:center="[114.299039, 30.594797]"
:zoom="8"
>
<mapgis-arcgis-tile-layer :layerId="layerId" :baseUrl="baseUrl" />
</mapgis-web-map>
</template>
<script>
import "@mapgis/mapbox-gl/dist/mapbox-gl.css";
import Mapbox from "@mapgis/mapbox-gl";
import {
MapgisWebMap,
MapgisArcgisTileLayer
} from "@mapgis/webclient-vue-mapboxgl";
export default {
components: {
MapgisWebMap,
MapgisArcgisTileLayer
},
data() {
return {
layerId: "arcgis_tile_sourceId",
baseUrl:
"http://map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer"
};
},
created() {
// 在组件中使用mapbox-gl.js的脚本库功能
this.mapbox = Mapbox;
}
};
</script>
<style lang="css">
.main {
height: 600px;
width: 100%;
}
</style>