类 RestMapProvider
- java.lang.Object
-
- com.supermap.services.providers.RestProviderBase
-
- com.supermap.services.providers.RestMapProvider
-
- 所有已实现的接口:
- ChartMapProvider, Disposable, DynamicProjectionable, KeywordsQueryable, MapProvider, MVTSupportedProvider, ProjectionExtent, ProviderContextAware, SDFFontsSupportedProvider, SpritesSupportedProvider, TiledVectorProvider
public class RestMapProvider extends RestProviderBase implements ProviderContextAware, DynamicProjectionable, MapProvider, ChartMapProvider, ProjectionExtent, SpritesSupportedProvider, TiledVectorProvider
REST 地图服务提供者。
RESTMapProvider 提供了从 REST 服务获取 SuperMap iServer 地图的相关服务,并封装了与 SuperMap iServer 地图相关的 GIS 功能。
-
-
嵌套类概要
-
从类继承的嵌套类/接口 com.supermap.services.providers.RestProviderBase
RestProviderBase.CacheModel, RestProviderBase.RestRequestException
-
-
字段概要
字段 限定符和类型 字段和说明 static java.lang.String
DISTANCE
-
从类继承的字段 com.supermap.services.providers.RestProviderBase
JAVA_POSTFIX, javaConverter, JSON_POSTFIX, jsonConverter, jsonDecoder, lock, logger, message, XML_POSTFIX, xmlDecoder
-
-
构造器概要
构造器 构造器和说明 RestMapProvider()
构造函数。RestMapProvider(RestMapProviderSetting setting)
构造函数。
-
方法概要
方法 限定符和类型 方法和说明 protected static void
checkParameterNull(java.lang.Object obj, java.lang.String parameterName)
void
clearAllCache()
清除全部缓存。void
clearCache(java.lang.String mapName, Rectangle2D bounds)
清除地图对应范围的缓存图片。protected java.lang.String
createMapParamKVPPart(MapParameter param, OutputFormat format, boolean transparent)
系列化MapParameter对象,生成image资源Get方法请求问号后面部分中(与MapParameter有关的项)。void
dispose()
释放资源对象。QueryResult
findNearest(java.lang.String mapName, Geometry geometry, double maxDistance, QueryParameterSet queryParameterSet)
在指定地图上,查找距离指定几何对象一定容限内最近的几何对象。java.util.List<ChartFeatureInfoSpec>
getChartFeatureInfoSpecs()
获取所有物标类型MapParameter
getDefaultMapParameter(java.lang.String mapName)
获取指定地图的默认地图参数。java.util.List<PrjCoordSys>
getDynamicPrjCoordsyses(java.lang.String mapName)
地图支持的动态投影列表。java.util.List<FieldInfo>
getFieldsByLayerName(java.lang.String mapName, LayerFieldsQueryParameter layerFieldsQueryParameter)
protected java.util.List<Layer>
getLayers(java.lang.String mapName)
MapImage
getMapImage(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数、图片输出设置获取地图图片。MapParameter
getMapParameter(java.lang.String mapName)
获取地图参数。java.lang.String
getMVTSpriteJson(MapParameter mapParameter, java.lang.String spriteName)
获取Sprite jsonbyte[]
getMVTSpriteResource(MapParameter mapParameter, java.lang.String spriteName)
获取Sprite资源byte[]
getMVTTile(VectorTileParameter vectorTileParameter)
获取mvt瓦片java.util.List<java.lang.String>
getNames()
返回地图名列表。Overview
getOverview(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数以及图片输出设置获取鹰眼。Rectangle2D
getProjectionExtent(java.lang.String mapName)
获取当前投影下的范围java.lang.String
getResource(java.lang.String mapName, ResourceParameter resourceParameter)
根据资源图片参数获取指定地图的资源图片。byte[]
getResource(java.lang.String mapName, ResourceParameter resourceParameter, Point2D[] points)
根据资源图片参数获取指定地图的资源图片。protected RestProviderSetting
getRestProviderSetting()
返回REST服务提供者配置信息。byte[]
getSDFFonts(java.lang.String fontstack, java.lang.String range)
获取sdf格式的数据byte[]
getSymbolData(java.lang.String symbolId, OutputFormat format)
获取符号图片VectorStyle
getVectorStyle(java.lang.String mapName, java.lang.String[] layerNames, VectorStyleType type)
获取指定地图中,指定矢量图层的样式VectorStyle
getVectorStyle(VectorStyleParameter vectorStyleParameter)
获取指定地图中,指定矢量图层的样式VectorTileData
getVectorTile(VectorTileParameter vectorTileParameter)
获取矢量地图切片。java.lang.String[]
listMVTSprites(MapParameter mapParameter)
列出所有的Sprites名字MeasureResult
measureArea(java.lang.String mapName, Point2D[] points, MeasureParameter measureParam)
根据二维地理坐标点、量算参数,在指定地图上进行面积量算。MeasureResult
measureDistance(java.lang.String mapName, Point2D[] points, MeasureParameter measureParam)
根据二维地理坐标点、量算参数,在指定地图上进行距离量算。QueryResult
queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet)
在指定的地图上,查询指定范围内的几何对象,以及外接矩形与指定范围相交的几何对象。QueryResult
queryByDistance(java.lang.String mapName, Geometry geometry, double distance, QueryParameterSet queryParameterSet)
在指定地图上,查询距离指定的几何对象一定范围内的所有几何对象。QueryResult
queryByGeometry(java.lang.String mapName, Geometry geometry, SpatialQueryMode spatialQueryMode, QueryParameterSet queryParameterSet)
在指定地图上,查询与指定的几何对象符合某种空间关系和查询条件的几何对象。QueryResult
queryByKeywords(java.lang.String mapName, KeywordsQueryParameterSet queryParameterSet)
根据关键字查询地图上的要素。QueryResult
queryBySQL(java.lang.String mapName, QueryParameterSet queryParameterSet)
在指定地图上执行 SQL 查询。QueryResult
queryChart(java.lang.String mapName, java.lang.String[] chartLayerNames, ChartQueryParameterSet chartQueryParams)
海图功能用,物标属性查询。QueryResult
queryChart(java.lang.String mapName, java.lang.String[] chartLayerNames, ChartQueryParameterSet chartQueryParams, Rectangle2D bounds)
海图功能用,物标boudns查询MapParameter
setDefaultMapParameter(MapParameter mapParameter)
设置默认地图参数。void
setProviderContext(ProviderContext context)
设置服务提供者上下文。boolean
support(java.lang.String mapname, MapCapability capability)
判断地图是否支持相应功能。boolean
updateMap(MapParameter mapParameter)
永久更新地图状态,会更新到磁盘中进行持久化。void
updateVectorStyle(java.lang.String layerName, VectorStyleType type, java.lang.String style)
根据图层名和矢量样式类型更新矢量瓦片样式MapImage
viewEntire(java.lang.String layerName, MapParameter mapParameter, ImageOutputOption outputOption)
根据地图图层名、地图参数以及图片输出设置进行全幅显示。-
从类继承的方法 com.supermap.services.providers.RestProviderBase
clearCache, executeRequest, executeRequest, executeRequest, executeRequestByApacheHttpClientForByteArray, executeRequestByRestletClientForByteArray, executeRequestForByteArray, executeRequestForByteArray, executeRequestForByteArray, executeRequestForByteArray, executeRequestForList, executeRequestForList, executeRequestForList, executeRequestForList, executeRequestForStream, executeRequestForStream, executeRequestForStream, executeRequestForText, executeRequestForText, executeRequestForText, getApacheHttpClient, getRestletRequest, handleExeption, init, initHttpClient, newAndSetClient, rectifyRestServiceRootURL
-
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
从接口继承的方法 com.supermap.services.components.spi.MapProvider
getTileImage
-
从接口继承的方法 com.supermap.services.components.spi.ChartMapProvider
queryChartFeatureByBounds
-
-
-
-
构造器详细资料
-
RestMapProvider
public RestMapProvider(RestMapProviderSetting setting)
构造函数。
- 参数:
setting
-
-
RestMapProvider
public RestMapProvider()
构造函数。
-
-
方法详细资料
-
checkParameterNull
protected static void checkParameterNull(java.lang.Object obj, java.lang.String parameterName)
-
setProviderContext
public void setProviderContext(ProviderContext context)
设置服务提供者上下文。
- 指定者:
setProviderContext
在接口中ProviderContextAware
- 参数:
context
- 服务提供者上下文。
-
getNames
public java.util.List<java.lang.String> getNames()
返回地图名列表。
- 指定者:
getNames
在接口中MapProvider
- 返回:
- 地图名列表。
-
getMapParameter
public MapParameter getMapParameter(java.lang.String mapName)
获取地图参数。
- 指定者:
getMapParameter
在接口中MapProvider
- 参数:
mapName
- 地图名。- 返回:
- 地图参数。
-
clearCache
public void clearCache(java.lang.String mapName, Rectangle2D bounds)
清除地图对应范围的缓存图片。
- 指定者:
clearCache
在接口中MapProvider
- 参数:
mapName
- 地图名称。bounds
- 地图范围。
-
clearAllCache
public void clearAllCache()
从接口复制的说明:MapProvider
清除全部缓存。
- 指定者:
clearAllCache
在接口中MapProvider
-
getMapImage
public MapImage getMapImage(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数、图片输出设置获取地图图片。
- 指定者:
getMapImage
在接口中MapProvider
- 参数:
mapParameter
- 地图参数。该参数不能为空。outputOption
- 图片输出设置。- 返回:
- 地图图片对象。
-
getResource
public java.lang.String getResource(java.lang.String mapName, ResourceParameter resourceParameter)
根据资源图片参数获取指定地图的资源图片。
- 指定者:
getResource
在接口中MapProvider
- 参数:
mapName
- 地图名称。该参数不能为空。resourceParameter
- 资源图片参数。- 返回:
- 资源图片地址。
-
measureDistance
public MeasureResult measureDistance(java.lang.String mapName, Point2D[] points, MeasureParameter measureParam)
从接口复制的说明:MapProvider
根据二维地理坐标点、量算参数,在指定地图上进行距离量算。
- 指定者:
measureDistance
在接口中MapProvider
- 参数:
mapName
- 地图名称。points
- 二维地理坐标点数组。measureParam
- 量算参数。- 返回:
- 量算结果对象。
-
measureArea
public MeasureResult measureArea(java.lang.String mapName, Point2D[] points, MeasureParameter measureParam)
从接口复制的说明:MapProvider
根据二维地理坐标点、量算参数,在指定地图上进行面积量算。
- 指定者:
measureArea
在接口中MapProvider
- 参数:
mapName
- 地图名称。points
- 二维地理坐标点数组。measureParam
- 量算参数。- 返回:
- 量算结果对象。
-
queryByDistance
public QueryResult queryByDistance(java.lang.String mapName, Geometry geometry, double distance, QueryParameterSet queryParameterSet)
从接口复制的说明:MapProvider
在指定地图上,查询距离指定的几何对象一定范围内的所有几何对象。
到指定几何对象的一定距离范围,实际是以指定几何对象为中心的一个圆,在这个圆内以及与圆相交的几何对象都能够被查询出来。
- 指定者:
queryByDistance
在接口中MapProvider
- 参数:
mapName
- 地图名称 。geometry
- 几何对象。distance
- 查询的距离范围。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在queryParameterSet.queryParams[i]
中进行设置。- 返回:
- 查询结果对象。
-
queryByGeometry
public QueryResult queryByGeometry(java.lang.String mapName, Geometry geometry, SpatialQueryMode spatialQueryMode, QueryParameterSet queryParameterSet)
从接口复制的说明:MapProvider
在指定地图上,查询与指定的几何对象符合某种空间关系和查询条件的几何对象。
- 指定者:
queryByGeometry
在接口中MapProvider
- 参数:
mapName
- 地图名称。geometry
- 几何对象。该几何对象仅包含空间信息、形状信息等,并不包括属性信息。spatialQueryMode
- 空间几何对象间的查询模式。空间几何对象间的查询模式定义了一些几何对象之间的空间位置关系,根据这些空间关系来构建过滤条件执行查询。例如:查询可被包含在面对象中的空间对象,与面有相离或者相邻关系的空间对象等。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在queryParameterSet.queryParams[i]
中进行设置。- 返回:
- 查询结果对象。
-
queryByBounds
public QueryResult queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet)
从接口复制的说明:MapProvider
在指定的地图上,查询指定范围内的几何对象,以及外接矩形与指定范围相交的几何对象。
- 指定者:
queryByBounds
在接口中MapProvider
- 参数:
mapName
- 地图名称。bounds
- 指定的查询范围。- 返回:
- 查询结果对象。
-
queryBySQL
public QueryResult queryBySQL(java.lang.String mapName, QueryParameterSet queryParameterSet)
从接口复制的说明:MapProvider
在指定地图上执行 SQL 查询。
- 指定者:
queryBySQL
在接口中MapProvider
- 参数:
mapName
- 地图名称。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在queryParameterSet.queryParams[i]
中进行设置。- 返回:
- 查询结果对象。
-
setDefaultMapParameter
public MapParameter setDefaultMapParameter(MapParameter mapParameter)
从接口复制的说明:MapProvider
设置默认地图参数。
- 指定者:
setDefaultMapParameter
在接口中MapProvider
- 参数:
mapParameter
- 地图参数。- 返回:
- 地图参数对象。
-
getDefaultMapParameter
public MapParameter getDefaultMapParameter(java.lang.String mapName)
从接口复制的说明:MapProvider
获取指定地图的默认地图参数。
初始的默认地图参数是由所访问的服务类型决定的,比如,访问 SuperMap Objects Java 提供的 GIS 能力,那么初始默认地图参数从工作空间文件中获取到;访问 WMS 服务提供的 GIS 能力,默认地图参数由 WMS 服务决定。
- 指定者:
getDefaultMapParameter
在接口中MapProvider
- 参数:
mapName
- 地图名称。- 返回:
- 地图参数对象。
-
viewEntire
public MapImage viewEntire(java.lang.String layerName, MapParameter mapParameter, ImageOutputOption outputOption)
根据地图图层名、地图参数以及图片输出设置进行全幅显示。
参数中指定的图层名称是指以该图层内容的最小外接矩形作为全幅显示的地理范围。
- 指定者:
viewEntire
在接口中MapProvider
- 参数:
layerName
- 地图图层名,即以该图层的最小外接矩形作为全幅显示的地理范围。mapParameter
- 地图参数。outputOption
- 图片输出设置。- 返回:
- 地图对象。
-
getOverview
public Overview getOverview(MapParameter mapParameter, ImageOutputOption outputOption)
从接口复制的说明:MapProvider
根据地图参数以及图片输出设置获取鹰眼。
- 指定者:
getOverview
在接口中MapProvider
- 参数:
mapParameter
- 地图参数。outputOption
- 图片输出设置。- 返回:
- 鹰眼对象。
-
findNearest
public QueryResult findNearest(java.lang.String mapName, Geometry geometry, double maxDistance, QueryParameterSet queryParameterSet)
从接口复制的说明:MapProvider
在指定地图上,查找距离指定几何对象一定容限内最近的几何对象。 当限制了返回几何对象个数(由
QueryParameterSet.expectCount
指定)时,查询结果为查询总记录中距离指定中心最近的expectCount个地物,这expectCount个地物按无序排列。- 指定者:
findNearest
在接口中MapProvider
- 参数:
mapName
- 地图名称。geometry
- 几何对象。maxDistance
- 容限范围,单位与 mapName 地图的地图坐标单位相同。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在queryParameterSet.queryParams[i]
中进行设置。- 返回:
- 查询结果对象。
-
getRestProviderSetting
protected RestProviderSetting getRestProviderSetting()
从类复制的说明:RestProviderBase
返回REST服务提供者配置信息。- 指定者:
getRestProviderSetting
在类中RestProviderBase
- 返回:
-
getDynamicPrjCoordsyses
public java.util.List<PrjCoordSys> getDynamicPrjCoordsyses(java.lang.String mapName)
从接口复制的说明:DynamicProjectionable
地图支持的动态投影列表。- 指定者:
getDynamicPrjCoordsyses
在接口中DynamicProjectionable
- 返回:
-
getChartFeatureInfoSpecs
public java.util.List<ChartFeatureInfoSpec> getChartFeatureInfoSpecs()
从接口复制的说明:ChartMapProvider
获取所有物标类型- 指定者:
getChartFeatureInfoSpecs
在接口中ChartMapProvider
-
queryChart
public QueryResult queryChart(java.lang.String mapName, java.lang.String[] chartLayerNames, ChartQueryParameterSet chartQueryParams)
从接口复制的说明:ChartMapProvider
海图功能用,物标属性查询。- 指定者:
queryChart
在接口中ChartMapProvider
-
queryChart
public QueryResult queryChart(java.lang.String mapName, java.lang.String[] chartLayerNames, ChartQueryParameterSet chartQueryParams, Rectangle2D bounds)
从接口复制的说明:ChartMapProvider
海图功能用,物标boudns查询- 指定者:
queryChart
在接口中ChartMapProvider
-
getLayers
protected java.util.List<Layer> getLayers(java.lang.String mapName)
-
createMapParamKVPPart
protected java.lang.String createMapParamKVPPart(MapParameter param, OutputFormat format, boolean transparent)
系列化MapParameter对象,生成image资源Get方法请求问号后面部分中(与MapParameter有关的项)。 即不包括redirect参数。 函数不对参数进行null判断,不对其进行有效性检查(比如不检查MapParameter.name是否正确),但是对其中的字段进行null判断。
- 参数:
param
- 需要系列化的MapParameter对象。format
-transparent
-- 返回:
- ?center=xxx&viewer=xxx
-
support
public boolean support(java.lang.String mapname, MapCapability capability)
从接口复制的说明:MapProvider
判断地图是否支持相应功能。- 指定者:
support
在接口中MapProvider
- 参数:
mapname
- 地图名。capability
- 功能类型。- 返回:
- 返回true表示支持该功能;返回false表示不支持该功能。
-
getResource
public byte[] getResource(java.lang.String mapName, ResourceParameter resourceParameter, Point2D[] points)
从接口复制的说明:MapProvider
根据资源图片参数获取指定地图的资源图片。
- 指定者:
getResource
在接口中MapProvider
- 参数:
mapName
- 地图名称。resourceParameter
- 资源图片参数。points
- 绘制资源图片时用的点- 返回:
- 图片对应的二进制流。
-
getVectorStyle
public VectorStyle getVectorStyle(java.lang.String mapName, java.lang.String[] layerNames, VectorStyleType type)
从接口复制的说明:MapProvider
获取指定地图中,指定矢量图层的样式- 指定者:
getVectorStyle
在接口中MapProvider
- 参数:
mapName
- 地图名称layerNames
- 图层名称type
- 矢量样式类型- 返回:
- 矢量图层样式
-
getVectorStyle
public VectorStyle getVectorStyle(VectorStyleParameter vectorStyleParameter)
从接口复制的说明:MapProvider
获取指定地图中,指定矢量图层的样式- 指定者:
getVectorStyle
在接口中MapProvider
- 参数:
vectorStyleParameter
- 矢量风格参数。
-
dispose
public void dispose()
从接口复制的说明:Disposable
释放资源对象。
- 指定者:
dispose
在接口中Disposable
- 覆盖:
dispose
在类中RestProviderBase
-
updateMap
public boolean updateMap(MapParameter mapParameter)
从接口复制的说明:MapProvider
永久更新地图状态,会更新到磁盘中进行持久化。- 指定者:
updateMap
在接口中MapProvider
- 参数:
mapParameter
- 要更新的地图状态。- 返回:
- 是否更新成功。
-
getProjectionExtent
public Rectangle2D getProjectionExtent(java.lang.String mapName)
从接口复制的说明:ProjectionExtent
获取当前投影下的范围
- 指定者:
getProjectionExtent
在接口中ProjectionExtent
- 返回:
-
listMVTSprites
public java.lang.String[] listMVTSprites(MapParameter mapParameter)
从接口复制的说明:SpritesSupportedProvider
列出所有的Sprites名字
- 指定者:
listMVTSprites
在接口中SpritesSupportedProvider
- 返回:
- Sprites名字集合
-
getMVTSpriteJson
public java.lang.String getMVTSpriteJson(MapParameter mapParameter, java.lang.String spriteName)
从接口复制的说明:SpritesSupportedProvider
获取Sprite json
- 指定者:
getMVTSpriteJson
在接口中SpritesSupportedProvider
- 返回:
- Sprite的json
-
getMVTSpriteResource
public byte[] getMVTSpriteResource(MapParameter mapParameter, java.lang.String spriteName)
从接口复制的说明:SpritesSupportedProvider
获取Sprite资源
- 指定者:
getMVTSpriteResource
在接口中SpritesSupportedProvider
- 返回:
- Sprite资源数据
-
queryByKeywords
public QueryResult queryByKeywords(java.lang.String mapName, KeywordsQueryParameterSet queryParameterSet)
从接口复制的说明:KeywordsQueryable
根据关键字查询地图上的要素。- 指定者:
queryByKeywords
在接口中KeywordsQueryable
- 参数:
mapName
- 地图名。- 返回:
-
getSDFFonts
public byte[] getSDFFonts(java.lang.String fontstack, java.lang.String range)
从接口复制的说明:SDFFontsSupportedProvider
获取sdf格式的数据- 指定者:
getSDFFonts
在接口中SDFFontsSupportedProvider
- 参数:
fontstack
- 字体名称range
- 字体的- 返回:
- 字体数据
-
getVectorTile
public VectorTileData getVectorTile(VectorTileParameter vectorTileParameter)
从接口复制的说明:TiledVectorProvider
获取矢量地图切片。
- 指定者:
getVectorTile
在接口中TiledVectorProvider
- 参数:
vectorTileParameter
- 矢量地图切片参数。- 返回:
- 矢量地图切片。
-
updateVectorStyle
public void updateVectorStyle(java.lang.String layerName, VectorStyleType type, java.lang.String style)
从接口复制的说明:TiledVectorProvider
根据图层名和矢量样式类型更新矢量瓦片样式- 指定者:
updateVectorStyle
在接口中TiledVectorProvider
- 参数:
layerName
- 图层名type
- 矢量样式类型style
- 要更新的矢量瓦片样式
-
getSymbolData
public byte[] getSymbolData(java.lang.String symbolId, OutputFormat format)
从接口复制的说明:TiledVectorProvider
获取符号图片- 指定者:
getSymbolData
在接口中TiledVectorProvider
- 参数:
symbolId
- 符号idformat
- 符号格式- 返回:
- 符号数据
-
getMVTTile
public byte[] getMVTTile(VectorTileParameter vectorTileParameter)
从接口复制的说明:MVTSupportedProvider
获取mvt瓦片- 指定者:
getMVTTile
在接口中MVTSupportedProvider
- 参数:
vectorTileParameter
- 矢量地图切片参数。- 返回:
- 获取mvt瓦片数据
-
getFieldsByLayerName
public java.util.List<FieldInfo> getFieldsByLayerName(java.lang.String mapName, LayerFieldsQueryParameter layerFieldsQueryParameter)
- 指定者:
getFieldsByLayerName
在接口中MapProvider
- 返回:
-
-