http://blog.sina.com.cn/s/blog_6259ebd50102v221.html

什么是WMTS服务

WMTS,切片地图Web服务(Web Map Tile Service)当前版本是1.0.0。该服务符合 OGC(Open Geospatial Consortium,开放地理信息联盟)制定的 WMTS 实现规范。

WMTS 是 OGC 提出的缓存技术标准,即在服务器端缓存被切割成一定大小瓦片的地图,对客户端只提供这些预先定义好的单个瓦片的服务,将更多的数据处理操作如图层叠加等放在客户端,从而缓解 GIS 服务器端数据处理的压力,改善用户体验。

如何使用WMTS地图服务

  本文将对iServer的WMTS服务, 天地图的WMTS服务, ArcGIS的WMTS服务进行剖析

1.针对iServer发布的WMTS服务

  针对iServer Java 6R发布的WMTS,我们在使用iClinet对接时,需要注意以下几个参数,这里我用iClinet for JavaScript代码作为示范:

layer = new SuperMap.Layer.WMTS({name: "World",

url: http://localhost:8090/iserver/services/map-world/wmts100   //WMTS服务地址

layer: "World",  //图层名称

style: "default",  //图层样式

matrixSet: "GlobalCRS84Scale_World",  //发布的标识符矩阵集

format: "image/png", //图像的MIME类型,默认为 "image/png"

resolutions:resolutions, //地图分辨率

opacity: 1,

requestEncoding:"KVP"}); //请求编码 ,一般默认都是KVP

综合上面红色字体的部分,我们可以得出,如果是iServer发布的地图,除地图url外,我们需要获取以上5个属性,那么究竟如何获取这5个属性呢? 

获取方法:

  1. 首先,启动iServer6R

  2. 其次浏览器中输入: http://localhost:8090/iserver/services/map-world/wmts100 然后回车

  3. 搜索Contents节点,我们可以获取所需4个属性

World

World

-180.0 -90.0

180.0 90.0

-2.0037508342789244E7 -2.0037508342789236E7

2.0037508342789244E7 2.0037508342789244E7

default

image/png

Custom_World

GlobalCRS84Scale_World

GoogleMapsCompatible_World

resourceType="tile" template="http://localhost:8090/iserver/services/map-world/wmts100/

World/default/Custom_World/{TileMatrix}/{TileRow}/{TileCol}.png"/>

resourceType="tile" template="http://localhost:8090/iserver/services/map-world/wmts100/

World/default/GlobalCRS84Scale_World/{TileMatrix}/{TileRow}/{TileCol}.png"/>

resourceType="tile" template="http://localhost:8090/iserver/services/map-world/wmts100/

\World/default/GoogleMapsCompatible_World/{TileMatrix}/{TileRow}/{TileCol}.png"/>

从高亮的部分,可以得出以下对应情况

WMTS服务参数

iClinet for JavaScript代码

World

layer: "World"

default

style: "default"

GlobalCRS84Scale_World

matrixSet: "GlobalCRS84Scale_World"

format="image/png"

format: "image/png"

4. 最后在根据自己地图,计算当前图层的分辨率数组信息.如本范例分辨率数组是:

var resolutions = [1.25764139776733,0.628820698883665,0.251528279553466,

0.125764139776733,0.0628820698883665,0.0251528279553466,

0.0125764139776733,0.00628820698883665,0.00251528279553466,

0.00125764139776733,0.000628820698883665,0.000251528279553466,

0.000125764139776733,0.0000628820698883665,0.0000251528279553466,

0.0000125764139776733, 0.00000628820698883665,0.00000251528279553466,

0.00000125764139776733,0.000000628820698883665,0.000000251528279553466];

最终效果图:

    

2.针对天地图官网发布的WMTS服务

  针对天地图官网发布的WMTS服务,我们在使用iClinet对接时,需要注意以下几个参数,这里我用iClinet for JavaScript代码作为示范:

  1. 天地图官网公布的WMTS服务地址,请查看http://www.tianditu.cn/guide/index.html

    

  2. 我选取http://t0.tianditu.com/vec_c/wmts为服务地址, 搜索Contents节点,获取4个重要信息:

cva

cva

cva

-180.0 -90.0

180.0 90.0

-180.0 -90.0

180.0 90.0

default

tiles

c

c

urn:ogc:def:crs:EPSG::4490

  

从高亮的部分,可以得出以下对应情况

天地图官网WMTS服务参数

iClinet for JavaScript代码

cva

layer: "vec"

default

style: "default"

c

matrixSet: "c"

tiles

format: "tiles"

由于此天地图官网提供的WMTS服务,为全球经纬度范围(东西经±180度,南北纬±90度),则不需要设置原点和全副范围.

  那么在iClinet for JavaScript代码中可以这样写:

layer = new SuperMap.Layer.WMTS({name: "vec",

url: "http://t0.tianditu.com/vec_c/wmts",

layer: "vec",

style: "default",

matrixSet: "c",

format: "tiles",

opacity: 1,

requestEncoding:"KVP"});

  最终效果图:

      

   当然如果再叠加一幅中文标记wmts地图(该步骤同上述步骤相似,请开发人员自己尝试),最终效果:

        

3.针对ArcGIS发布的WMTS服务

  针对ArcGIS发布的WMTS,我们在使用iClinet对接时,需要注意以下几个参数,这里我用iClinet for JavaScript代码作为示范:

     1. 使用ArcGIS发布地图服务,切缓存 (此步骤略) 出图正常

     

  

    2. 得到ArcGIS的WMTS服务地址, (http://localhost:6080/arcgis/rest/services/china/MapServer/wmts)搜索Contents节点,获取6个重要信息:

china

china

73.62004852294922 3.8537260781998635

134.76846313476562 53.553741455078125

73.62004852294922 3.8537260781998635

134.76846313476562 53.553741455078125

Default Style

default

image/png

default028mm

nativeTileMatrixSet

format="image/png"

resourceType="tile" template="http://localhost:6080/arcgis/rest/services/china/MapServer/WMTS

/tile/1.0.0/china/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png"/>

以及矩阵原点属性

0

6.047619047619047E7

-400.0 400.0

256

256

2

3

  从高亮的部分,可以得出以下对应情况

ArcGIS WMTS服务参数

iClinet for JavaScript代码

china

layer: "china"

default

style: "default"

default028mm

matrixSet: "default028mm"

image/png

format: "image/png"

73.62004852294922 3.8537260781998635

134.76846313476562 53.553741455078125

tileFullExtent: new SuperMap.Bounds(

73.62004852294922,

3.8537260781998635,

134.76846313476562,

53.553741455078125)

-400.0 400.0

tileOrigin:new SuperMap.LonLat(-400,400)

  3. 获取ArcGIS所切图层的分辨率,访问地图rest服务(http://localhost:6080/arcgis/rest/services/china/MapServer )我们可以获取resolutions

              

  那么在iClinet for JavaScript中完整代码可以这样写

var resolutions = [0.15228550437351568,0.07614275218675784,0.03807137609337892,0.01903568804668946,0.00951784402334473]; //分辨率

var maxExtent = new SuperMap.Bounds(73.62004852294922,3.8537260781998635,134.76846313476562,53.553741455078125); //全副范围

layer = new SuperMap.Layer.WMTS({name: "china",

url: "http://localhost:6080/arcgis/rest/services/china/MapServer/wmts"

layer: "china",

style: "default",

matrixSet: "default028mm",

format: "image/png",

resolutions:resolutions,

opacity: 1,

tileFullExtent:maxExtent,     //瓦片设置的最大范围

tileOrigin:new SuperMap.LonLat(-400,400),   //瓦片矩阵左上角

requestEncoding:"KVP"

});

 最终效果图:

        

    

    注意:在对接ArcGIS wmts服务时:

      1. 需要设置瓦片设置的最大范围(全副范围)

      2. 需要设置瓦片矩阵左上角 (如果不出图,有时候需要根据请求瓦片行列号,微调这个值)

      3. 需要设置分辨率

    (转贴请注明出处:http://www.cnblogs.com/zhangyongli2011/    如发现有错,请留言 谢谢)

SuperMap iClient如何使用WMTS地图服务(转)的更多相关文章

  1. SuperMap iClient 如何使用 WMTS 地图服务(转载)

    原文链接: WMTS服务初步理解与读取 https://blog.csdn.net/supermapsupport/article/details/76806670 SuperMap iClient ...

  2. SuperMap iClient如何使用WMTS地图服务

    SuperMap iClient如何使用WMTS地图服务 什么是WMTS服务 WMTS,切片地图Web服务(Web Map Tile Service)当前版本是1.0.0.该服务符合 OGC(Open ...

  3. SuperMap iClient如何使用WMS地图服务

    什么是WMS服务 WMS(Web Map Service,Web 地图服务)服务,该服务符合 OGC(Open Geospatial Consortium,开放地理信息联盟)制定的 WMS 实现规范. ...

  4. SuperMap iClient for JavaScript 新手入门

    地理信息系统(英语:Geographic Information System,缩写:GIS)是一门综合性学科,结合地理学与地图学,已经广泛的应用在不同的领域,是用于输入.存储.查询.分析和显示地理数 ...

  5. SuperMap iClient 7C——网络客户端GIS开发平台 产品新特性

    SuperMap iClient 7C是空间信息和服务的可视化交互开发平台,是SuperMap服务器系列产品的统一客户端.产品基于统一的架构体系,面向Web端和移动端提供了多种类型的SDK开发包,帮助 ...

  6. SuperMap iClient

    SuperMap iClient 7C——网络客户端GIS开发平台 产品新特性   SuperMap iClient 7C是空间信息和服务的可视化交互开发平台,是SuperMap服务器系列产品的统一客 ...

  7. Skyline中加载WMTS地图

    Skyline中默认是Bing地图,必应虽然免费无偏移,但在国内的影像质量并不是很好.不用担心,Skyline支持多种影像图层,包括WFS.WMS.WMTS地图服务.使用地图作为底图有两个好处: (1 ...

  8. 不偏移的天地图地图服务-SuperMap版

    在<不偏移的天地图地图服务-ArcGIS版>中,提供了相应的服务地址:而SuperMap中,则是将纠偏的方法集成到程序中,只需要修改一个配置参数,则可以实现天地图的纠偏. 打开Web型数据 ...

  9. 常见地图服务(WMS、WFS、WCS、TMS、WMTS

    1.网络地图服务(WMS) 网络地图服务(WMS)利用具有地理空间位置信息的数据制作地图.其中将地图定义为地理数据可视的表现.能够根据用户的请求返回相应的地图(包括PNG,GIF,JPEG等栅格形式或 ...

随机推荐

  1. ORACLE 向BLOB字段中出入图片等二进制文件,使用Oracle SQl Developer工具

    使用PL/SQL也可以 create directory "image" as 'e:\'; --"image" 要带双引号,网上很多不带的,我测试时出错,并且 ...

  2. 洛谷 P2114 [NOI2014]起床困难综合症 解题报告

    P2114 [NOI2014]起床困难综合症 题目描述 21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm一直坚持与起床困难综合症作 ...

  3. Educational Codeforces Round 57 (Rated for Div. 2) ABCDEF题解

    题目总链接:https://codeforces.com/contest/1096 A. Find Divisible 题意: 给出l,r,在[l,r]里面找两个数x,y,使得y%x==0,保证有解. ...

  4. 【IDEA】IDEA中部署的项目添加Tomcat自带的一些项目

    在IDEA部署项目的时候发现没有tomcat自带的一些项目,有时候我们需要tomcat自带的项目查看一些配置的信息,经过查阅资料后做记录如下: 1.在Eclipse中点击Run ->Edit C ...

  5. 斗地主(NOIP2015)

    原题传送门 神奇的题目.. 一开始我准备打暴力直接搜答案. 然后发现.. 无限TLE.. 因为O((logN)^14*T)BOOM.. 然后Zxyer告诉可以只DFS顺子...其他的可以一步搞出来.. ...

  6. Linux之epoll详细解析实现

    /* * fs/eventpoll.c (Efficient event retrieval implementation) * Copyright (C) 2001,...,2009 Davide ...

  7. Scala学习随笔——控制语句

    Scala只内置了为数不多的几种程序控制语句:if.while.for.try catch以及函数调用,这是因为从Scala诞生开始就包含了函数字面量,Scala内核没有定义过多的控制结构,而是可以通 ...

  8. Codeforces 897 B.Chtholly's request-思维题(处理前一半)

      B. Chtholly's request   time limit per test 2 seconds memory limit per test 256 megabytes input st ...

  9. #421 Div1 C

    #421 Div1 C 题意 在 (0, n) 和 (m, 0) 处各有一个装置,从起始点(0, 0)出发,首先走短路到 (m, 0) 拿起装置回到起始点,再去 (0, n) 处拿起装置回到起始点.当 ...

  10. 干净卸载mysql

    一.在控制面板中卸载mysql软件 二.卸载过后删除C:\Program Files (x86)\MySQL该目录下剩余了所有文件,把mysql文件夹也删了 三.windows+R运行“regedit ...