tileImages


URI

<map_uri>/tileimages[.<format>]

支持的方法

GETHEAD

父资源

map

介绍

将出的完整的地图图片以像素为单位切割成多个相同大小的格网,那么地图就可以由多个小块拼合而成。tileImages 资源表示的就是这些地图的小块,通过对 tileImages 资源执行 GET 请求,可以一次获取地图({mapName})中相应的多张格网图片,可以在 URI 中包含一些定制输出图片的参数,如设置出图的图层、图片大小、格网行列号、地图是否透明、动态投影的目标投影、比例尺、行列号等。这些参数必须包含在 URI 中,不能放在请求体里。

支持的方法:

支持的表述格式:PNG、BMP、GIF、JPG、WebP。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 png 输出格式为例加以说明,其中,supermapiserver 是服务器名,“世界地图”是地图名({mapName})。

http://supermapiserver:8090/iserver/services/map-world/rest/maps/世界地图/tileImages.png

GET 请求

获取多张地图的格网图片,URI 中的参数确定了格网的位置等信息。

请求参数

对 tileImages 资源执行 GET 请求,获取地图的格网图片,需要在 URI 中包含相关参数,如果没有指定参数,则会按照地图的当前状态为准,进行切割和出图。参数如下所示:

 

名称 类型 含义
redirect boolean 是否重定向,HTTP 传输中的一个概念。如果为 true,则将请求重定向到图片的真实地址;如果为 false,则响应体中是图片的字节流。默认为 false,不进行重定向。
x int 格网在地图中列号,从左向右递增。默认情况下,切片从地图最左上角开始,其格网列号为0。
y int 格网在地图中行号,从上向下递增。默认情况下,切片从地图最左上角开始,其格网行号为0。
scale double 地图的比例尺。如0.0001表示比例尺为1:10000。详见比例尺的定义
width int 格网的宽度,单位是像素,默认为 256 像素。
height int 格网的高度,单位是像素,默认为 256 像素。
transparent boolean 格网图片是否透明。
origin Point2D 切片的起始参考点,默认为地图范围的左上角。如果指定为其他值,则以所赋值作为切片的起始参考点,计算切片行列号。
如对示范数据中的“世界地图”设置了切片起始点为 origin={"x":-200,"y":45},则 origin 位于行列号为(0,0)的切片左上角,同时位于行列号为(-1,-1)的切片的右下角。
layersID String 获取进行切片的地图图层 ID,即指定进行地图切片的图层,可以是临时图层集,也可以是当前地图中图层的组合。如果此参数缺省则对全部图层进行切片。
layersID 可以是临时图层创建时 templayers 的 ID,如 layersID=382139acf0,也可以是当前地图中的某些图层的 ID 编号。
其中,当前地图图层 ID 的定义规则如下:
1. 各级图层按照图层顺序自上而下从0开始编号;
2. 冒号(:)前为顶级图层;
3. 英文句号(.)表示其他各级图层间的从属关系;
4. 英文逗号(,)表示图层间的分隔。
例如:
1. [0:0,1,2.0]表示顶级图层0下面的子图层:0、1及其下属所有子图层,和2下的子图层0;
2. [1:1.2,2]表示顶级级图层1下面的子图层:1下的子图层2,和图层2及其下属所有子图层;
3. 两个示例合并在一起则是:[0:0,1,2.0,1:1.2,2]
此外,[0,1,2,3]表示顶级图层0下面的图层0、1、2、3及所有子图层,[0:,1:,2:]表示顶级图层0、1、2及其所有子图层。
dynamicProjection boolean 是否允许地图动态投影显示。
prjCoordSys PrjCoordSys 请求的地图的坐标参考系统。
当此参数设置的坐标系统不同于地图的原有坐标系统时, 系统会进行动态投影,并返回动态投影后的地图图片。

参数使用时,需按照PrjCoordSys中的字段结构来构建,同时也支持通过只传递 epsgCode 的方式传入坐标参考系,如:

prjCoordSys={"epsgCode":3857}。
random boolean 是否采用随机数的方式出图,默认为 false。
如果为 true,则 scale、x、y 三个参数中未指定的参数会在各自的取值范围内采用随机数的方式赋值。
cacheEnabled boolean 是否使用缓存,默认为 true。如果为 false,则关闭所有缓存。(与 _cache 参数功能相同)
_cache boolean

是否使用缓存,默认为 true。如果为 false,则关闭所有缓存。(与 cacheEnabled 参数功能相同)

customParams String

自定义定义参数。

可以是任何形式组织的字符串。用户可以通过该属性传入自定义的参数。

rectifyType RectifyType 校验方式。
clipRegion Geometry 地图显示裁剪的区域。是一个面对象,当 clipRegionEnabled = true 时有效,即地图只显示该区域覆盖的部分。
clipRegionEnabled boolean 地图显示裁剪的区域是否有效。
customEntireBounds Rectangle2D 地图自定义边界,customEntireBoundsEnabled 为 true 时有效。
customEntireBoundsEnabled boolean 自定义地图边界是否有效。
angle double 当前地图的旋转角度。
antialias boolean 是否反走样地图。
backgroundStyle Style 地图的背景风格。
colorMode MapColorMode 地图的颜色模式。
markerAngleFixed boolean 指定点状符号的角度是否固定。
maxVisibleTextSize double 文本的最大可见尺寸,单位为像素。
maxVisibleVertex int

最大几何对象可见节点数。

如果几何对象的节点数超过指定的个数,则超过的那部分节点不显示。

minVisibleTextSize double 文本的最小可见尺寸,单位为像素。
overlapDisplayed boolean 地图对象在同一范围内时,是否重叠显示,默认为 false。
如果为 true,则同一范围内的对象会直接压盖;如果为 false 则通过 overlapDisplayedOptions 控制对象不压盖显示。
overlapDisplayedOptions OverlapDisplayedOptions 避免地图对象压盖显示的过滤选项,当 overlapDisplayed 为 false 时有效,用来增强对地图对象压盖时的处理。
paintBackground boolean 是否绘制地图背景。
textAngleFixed boolean 文本角度是否固定。
textOrientationFixed boolean 文本朝向是否固定。
rasterfunction RasterFunctionParameter 栅格运算。仅支持请求栅格瓦片。
当前支持NDVI、HILLSHADE两种运算。可参见示例3。
  1. NDVI 即 近红外区与红光区的反射率差值/近红外区与红光区的反射率和值。可用于反应出植物冠层的背景影响。参数使用时,可参照NDVI参数构成
  2. HILLSHADE 即 山体阴影,通过考虑照明源的角度和阴影,根据表面栅格创建地貌晕渲。参数使用时,可参照HILLSHADE参数构成
tileversion String

切片版本名称,_cache 为 true 时有效。

可以通过tileset 资源的 GET 请求获取,即响应结果中 tileVersions 的 name 字段,如 tileversion=51de5c76-c994-4207-94a7-d31f948f56e3;如果没有设置 tileversion 参数,而且当前地图的切片集中存在多个版本,则默认使用最后一个更新版本。

tiles

String 【必填参数】
期望获取的多个地图瓦片。对一幅地图瓦片,需要填三个参数,第一个参数为比例尺、第二个参数为行号、第三个参数为列号,各参数间以英文冒号 ':' 分隔。tiles 支持多个地图瓦片,不同地图瓦片之间以英文逗号 ',' 分隔,写法如:
 

tiles=3.3803271432053056e-9:0:0,3.3803271432053056e-9:0:1,3.3803271432053056e-9:1:1,3.3803271432053056e-9:1:0

 

响应结构

直接获取地图图片,可指定表述格式为 PNG、BMP、GIF、WebP  或 JPG,则返回相应的图片。

 

获取的图像二进制编码规则如下:

[0 ~ 4] 字节:int 值,表示总的瓦片张数 count

[4 ~ (4+count*4)] 字节:表示所有瓦片的长度

[(4+count*4) ~ 结尾] 字节:表示所有瓦片的二进制数组,可根据 [4 - (4+count*4)]字节中各瓦片的长度裁分生成图片

 

示例1

对 tileImages 资源执行 GET 请求:http://supermapiserver:8090/iserver/services/map-china400/rest/maps/china/tileImages.png?width=256&height=256&redirect=false&transparent=false&cacheEnabled=true&origin=%7B%22x%22:-20037508.342789248,%22y%22:20037508.342789087%7D&overlapDisplayed=false&tiles=3.3803271432053056e-9:0:0,3.3803271432053056e-9:0:1,3.3803271432053056e-9:1:1,3.3803271432053056e-9:1:0,则返回 PNG 格式的图片如下所示:

 

 

 

返回的第一幅地图瓦片

返回的第二幅地图瓦片

返回的第三幅地图瓦片

返回的第四幅地图瓦片

 

 

 

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

获取 tileImages 资源的元数据信息。检查该 tileImages 资源是否存在,权限是否可以访问。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 tileImages 资源是否支持<format>格式的表述。

请参见