Openlayer 3加载本地ArcGIS切片
第一篇博客,简单的开个头吧。希望自己能坚持记录。一般什么情况什么人需要这样的需求呢,伐木的光头强大哥说我们在深山老林里,没网的啊,地图就手机本地duang的加载一下吧。那么Server啊就要丢掉丢掉。丢掉手表丢掉外套,丢掉背包再丢掉唠叨,咳咳,跑题了。来看看具体步骤吧,非常简单但详细。
1. 制作切片的数据基本信息如下:
图层数据信息:
地理坐标系: GCS_WGS_1984
基准面: D_WGS_1984
本初子午线: Greenwich
角度单位: Degree
数据框信息:
GCS_WGS_1984
WKID: 4326 权限: EPSG
2.设置的缓存方式如下:(缓存切片方案ArcGIS online/Bing/google),缓存级别10-16;高级设置:切片原点默认,存储格式松散型EXPLODED。


3.发布切片服务前先分析一下结果:(无错误)

4.发布完成后可以登录ArcGIS server查看缓存的相关信息或者在本地的缓存文件夹arcgiscache中查看缓存的信息:

5.缓存好的本地文件,文件命名方式是16进制:

6.测试代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ol加载ArcGIS本地切片</title>
<link rel="stylesheet" href="ol.css">
<script src="ol.js"></script>
</head>
<body>
<div id="map"></div>
<script type="text/javascript">
// 设置寻甸县为地图中心,此处进行坐标转换, 把EPSG:4326的坐标,转换为EPSG:3857坐标,因为ol默认使用的是EPSG:3857坐标
pos = ol.proj.transform([103.25, 25.56], 'EPSG:4326', 'EPSG:3857');
//alert(pos);
//创建地图
var map = new ol.Map({
view: new ol.View({
center:pos,
zoom: 10
}),
//添加open street map图层
layers:[
new ol.layer.Tile({
source:new ol.source.OSM()
})
],
//将地图添加到的map容器中
target: 'map'
});
//给8位字符串文件名补0
function zeroPad(num, len, radix) {
var str = num.toString(radix || 10);
while (str.length < len) {
str = "0" + str;
}
return str;
}
// ol.source.XYZ添加瓦片地图的层
var tileLayer = new ol.layer.Tile({
source: new ol.source.XYZ({
tileUrlFunction: function (tileCoord) {
//alert(tileCoord[0] + " X= " + tileCoord[1] + " Y= " + tileCoord[2]);
var x = 'C' + zeroPad(tileCoord[1], 8, 16);
var y = 'R' + zeroPad(-tileCoord[2] - 1, 8, 16);
var z = 'L' + zeroPad(tileCoord[0], 2, 10);
return '_alllayers/' + z + '/' + y + '/' + x + '.png';
},
projection: 'EPSG:3857'
})
});
map.addLayer(tileLayer);
</script>
</body>
</html>
7.调试的结果:

Openlayer 3加载本地ArcGIS切片的更多相关文章
- OpenLayers 3加载本地Google切片地图
OpenLayers 提供了ol.source.XYZ 接口用以加载切片地图. 本地切片地图是用地图切片下载器下载的Google道路图层,由于软件未激活,所以每张切片地图上都有软件作者的联系方式,请 ...
- ArcGIS JS 4加载第三方矢量切片
现在矢量切片越来越普及,对于地图渲染能更轻更快.ArcGIS JS 4.13可以实现加载第三方矢量切片,以下为代码示例,最下方是我之前切的建筑物数据. 当切片大小在1M左右,加载效果还 ...
- World Wind Java开发之八——加载本地缓存文件构建大范围三维场景(
http://blog.csdn.net/giser_whu/article/details/42044599 上一篇博客主要是针对小文件直接导入WW中显示,然而当文件特别大时,这种方式就不太可行.因 ...
- Android GIS开发系列-- 入门季(5) FeatureLayer加载本地shp文件与要素查询
FeatureLayer是要素图层,也是Arcgis的主要图层.用这个图层可以加载本地的shp文件.下面我们看怎样加载shp文件到MapView中.查看ArcGis API可知FeatureLayer ...
- #iOS问题记录#动态Html加载本地CSS和JS文件
所谓动态Html,指代码中组合生成的html字符串: 若需要加载本地CSS,图片,JS文件,则, 1,需要文件的全路径: 2,需要"file:///"标志: 例如: //获取文件全 ...
- 重新想象 Windows 8.1 Store Apps (81) - 控件增强: WebView 之加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 WebView 中的内容, 为 WebView 截图
[源码下载] 重新想象 Windows 8.1 Store Apps (81) - 控件增强: WebView 之加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Co ...
- iOS --- UIWebView的加载本地数据的三种方式
UIWebView是IOS内置的浏览器,可以浏览网页,打开文档 html/htm pdf docx txt等格式的文件. safari浏览器就是通过UIWebView做的. 服务器将MIM ...
- UIWebView加载本地html文件
UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(, , KScreenWidth, KScreenHeight-)]; ...
- 填补Resources和WWW加载本地资源的坑
总的来说Resources和WWW加载本地资源坑比较多,大多与路径有关. 下面代码构成了一个路径的预读模块: 此模块主要解决的坑是:Resources或WWW加载本地的文件夹中的多个文件时,无法获取文 ...
随机推荐
- PHP中反射的简单实用(动态代理)
<?php class mysql{ function connect($db){ echo "连接mysql数据库${db[0]} \r\n"; } } class ora ...
- BFS(广度优先搜索)
简介 BFS的过程是首先访问起始结点v,接着访问顶点v的所有未被访问的邻接结点,然后对每个继续进行上述步骤,直到所有结点都被访问过为止,当然,在访问过程中,需要使用一个队列,然后类似二叉树的层次遍历来 ...
- 同一容器中a标签比较多的情况下通过title属性值隐藏
同一容器中a标签比较多的情况下如何通过title属性值控制a标签的隐藏或显示 最近项目中遇到一个IE兼容性问题,网站需要在底部footer添加"站长统计"代码,容器中动态添加很多a ...
- django中出现 错误 Errno 10053
django中出现 错误 Errno 10053 pycharm里出现下面错误File "C:\Python27\lib\socket.py", line 307, in flus ...
- windows设置照片查看器为默认的照片查看软件
复制一下内容到记事本中: 文件名:PotoView.bat 文件内容: @echo off set reg_dir=hklm\SOFTWARE\Microsoft\Windows Photo View ...
- FPGA高速ADC接口实战——250MSPS采样率ADC9481
一.前言 最近忙于硕士毕业设计和论文,没有太多时间编写博客,现总结下之前在某个项目中用到的一个高速ADC接口设计部分.ADC这一器件经常用于无线通信.传感.测试测量等领域.目前数字系统对高速数据采集的 ...
- Storm入门(十三)Storm Trident 教程
转自:http://blog.csdn.net/derekjiang/article/details/9126185 英文原址:https://github.com/nathanmarz/storm/ ...
- Linux 桌面玩家指南:08. 使用 GCC 和 GNU Binutils 编写能在 x86 实模式运行的 16 位代码
特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...
- java8 Stream常用方法和特性浅析
有一个需求,每次需要将几万条数据从数据库中取出,并根据某些规则,逐条进行业务处理,原本准备批量进行for循环或者使用存储过程,但是for循环对于几万条数据来说效率较低:存储过程因为逻辑非常复杂,写起来 ...
- 引入外部 CDN失效时--怎么加载本地资源文件(本文以jquery为例)
相信大家都使用过CDN静态资源库,比如下面 CDN官方静态资源库:https://cdnjs.com/ 七牛前端公开库:http://staticfile.org (vue,react,nl都有) ...