<map_uri>/tileimages[.<format>]
将出的完整的地图图片以像素为单位切割成多个相同大小的格网,那么地图就可以由多个小块拼合而成。tileImages 资源表示的就是这些地图的小块,通过对 tileImages 资源执行 GET 请求,可以一次获取地图({mapName})中相应的多张格网图片,可以在 URI 中包含一些定制输出图片的参数,如设置出图的图层、图片大小、格网行列号、地图是否透明、动态投影的目标投影、比例尺、行列号等。这些参数必须包含在 URI 中,不能放在请求体里。
支持的方法:
支持的表述格式:PNG、BMP、GIF、JPG、WebP。
对如下 URI 执行 HTTP 请求,以 png 输出格式为例加以说明,其中,supermapiserver 是服务器名,“世界地图”是地图名({mapName})。
http://supermapiserver:8090/iserver/services/map-world/rest/maps/世界地图/tileImages.png
获取多张地图的格网图片,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。
|
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)]字节中各瓦片的长度裁分生成图片
对 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 格式的图片如下所示:
返回的第一幅地图瓦片 |
返回的第二幅地图瓦片 |
返回的第三幅地图瓦片 |
返回的第四幅地图瓦片 |
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
获取 tileImages 资源的元数据信息。检查该 tileImages 资源是否存在,权限是否可以访问。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 tileImages 资源是否支持<format>格式的表述。