public class UGCMapProvider extends java.lang.Object implements MapProvider, SpritesSupportedProvider, SDFFontsSupportedProvider, ChartMapProvider, Disposable, ProviderContextAware, DynamicProjectionable, ProjectionExtent, MergeQueryResultByDatasetInfoSupported, MVTSupportedProvider, TilingProvider, SymbolFillAware, AddSymbol
SuperMap 地图服务提供者。
UGCMapProvider 提供了 SuperMap 地图的相关服务,封装了与 SuperMap 地图相关的 GIS 功能。
构造器和说明 |
---|
UGCMapProvider()
默认构造函数。
|
UGCMapProvider(UGCMapProviderSetting providerSetting)
通过 SuperMap 地图服务提供者配置信息构建 UGCMapProvider 对象。
|
限定符和类型 | 方法和说明 |
---|---|
protected void |
checkDatasourceType(Workspace ugoWorkspace) |
protected void |
checkExcludedFieldsInMapsSetting(ExcludedFieldsInMap[] excludedFieldsInMaps) |
protected static void |
checkParameterNull(java.lang.Object obj, java.lang.String parameterName)
检查参数是否为空。
|
void |
clearAllCache()
清除全部缓存。
|
void |
clearCache(java.lang.String mapName, Rectangle2D bounds)
根据地图名称和边框清除指定区域的缓存。
|
int |
createSymbol(java.lang.String mapName, SymbolInfo symbolInfo, ResourceType resourceType) |
void |
dispose()
释放 SuperMap 地图服务提供者所占用的资源。
|
protected void |
finalize() |
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) |
MapImage |
getMapImage(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数、图片输出设置获取地图图片。
|
MapParameter |
getMapParameter(java.lang.String mapName)
获取指定地图上次出图之后的状态(地图参数)。
|
java.lang.String |
getMVTSpriteJson(MapParameter mapParameter, java.lang.String spriteName)
获取Sprite json
|
byte[] |
getMVTSpriteResource(MapParameter mapParameter, java.lang.String spriteName)
获取Sprite资源
|
byte[] |
getMVTTile(VectorTileParameter vectorTileParameter)
获取mvt瓦片
|
java.util.List<java.lang.String> |
getNames()
获取当前 SuperMap 地图服务提供者对应的所有地图名。
|
Overview |
getOverview(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数以及图片输出设置获取鹰眼。
|
Rectangle2D |
getProjectionExtent(java.lang.String mapName)
获取当前投影下的范围
|
protected com.supermap.services.providers.InnerUGCMapProvider |
getProvider(java.lang.String name)
获取内部地图Provider
|
java.lang.String |
getResource(java.lang.String mapName, ResourceParameter resourceParameter)
根据资源图片参数获取指定地图的资源图片。
|
byte[] |
getResource(java.lang.String mapName, ResourceParameter resourceParameter, Point2D[] points)
根据资源图片参数获取指定地图的资源图片。
|
byte[] |
getSDFFonts(java.lang.String fontstack, java.lang.String range)
获取sdf格式的数据
|
SymbolInfo |
getSymbolFillAware(int symbolId, ResourceType resourceType)
获取指定 id symbol 目前只是给arc接口用的
|
TileData |
getTile(TileParameter tileParameter)
获取瓦片。
|
MapImage |
getTileImage(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数、图片输出设置获取瓦片图片。
|
java.util.List<TilesetInfo> |
getTilesets(TileType tileType, java.lang.String dataName)
获取栅格/矢量瓦片集信息
|
VectorStyle |
getVectorStyle(java.lang.String mapName, java.lang.String[] layerNames, VectorStyleType type)
获取指定地图中,指定矢量图层的样式
|
VectorStyle |
getVectorStyle(VectorStyleParameter vectorStyleParameter)
获取指定地图中,指定矢量图层的样式
|
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)
根据二维地理坐标点、量算参数,在指定地图上进行距离量算。
|
void |
pauseForRefreshWorkspace()
暂停服务。
|
QueryResult |
queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet)
在指定的地图上,查询指定范围内的几何对象。
|
QueryResult |
queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet, boolean mergeResultByDatasetInfo)
在指定的地图上,查询指定范围内的几何对象,以及外接矩形与指定范围相交的几何对象,把相同数据集的图层的过滤条件进行拼接。
|
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 |
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查询
|
ChartFeatureQueryResult |
queryChartFeatureByBounds(java.lang.String mapName, Rectangle2D bounds) |
void |
refreshWorkspace()
刷新工作空间。
|
void |
refreshWorkspaceFinished()
工作空间刷新完毕。
|
MapParameter |
setDefaultMapParameter(MapParameter mapParameter)
设置默认地图参数。
|
void |
setProviderContext(ProviderContext context)
设置 SuperMap 地图服务提供者的上下文。
|
boolean |
support(java.lang.String mapName, MapCapability capability)
判断地图是否支持相应功能。
|
boolean |
updateMap(MapParameter mapParameter)
永久更新地图状态,会更新到磁盘中进行持久化。
|
MapImage |
viewEntire(java.lang.String layerName, MapParameter mapParameter, ImageOutputOption outputOption)
根据地图图层名、地图参数以及图片输出设置进行全幅显示。
|
public UGCMapProvider()
默认构造函数。
public UGCMapProvider(UGCMapProviderSetting providerSetting)
通过 SuperMap 地图服务提供者配置信息构建 UGCMapProvider 对象。
providerSetting
- SuperMap 地图服务提供者配置信息。public QueryResult findNearest(java.lang.String mapName, Geometry geometry, double maxDistance, QueryParameterSet queryParameterSet)
在指定地图上,查找距离指定几何对象一定容限内的几何对象。 当限制了返回几何对象个数(由QueryParameterSet.expectCount
指定)时,查询结果为查询总记录中距离指定中心最近的expectCount个地物,这expectCount个地物按无序排列。
findNearest
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。geometry
- 几何对象。其投影坐标系与地图坐标系相同。maxDistance
- 容限范围。其坐标单位与地图坐标单位相同。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在 queryParameterSet.queryParams[i]
中进行设置。public MapParameter getDefaultMapParameter(java.lang.String mapName)
获取指定地图的默认地图参数。
初始的默认地图参数是由所访问的服务类型决定的,比如,访问 SuperMap Objects Java 提供的 GIS 能力,那么初始默认地图参数从工作空间文件中获取到。
getDefaultMapParameter
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。public MapImage getMapImage(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数、图片输出设置获取地图图片。
getMapImage
在接口中 MapProvider
mapParameter
- 地图参数。该参数不能为空。outputOption
- 图片输出设置。public MapImage getTileImage(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数、图片输出设置获取瓦片图片。
getTileImage
在接口中 MapProvider
mapParameter
- 地图参数。该参数不能为空。outputOption
- 图片输出设置。public boolean updateMap(MapParameter mapParameter)
MapProvider
updateMap
在接口中 MapProvider
mapParameter
- 要更新的地图状态。public MapParameter getMapParameter(java.lang.String mapName)
获取指定地图上次出图之后的状态(地图参数)。
getMapParameter
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。public java.util.List<java.lang.String> getNames()
获取当前 SuperMap 地图服务提供者对应的所有地图名。
getNames
在接口中 MapProvider
getNames
在接口中 TilingProvider
public Overview getOverview(MapParameter mapParameter, ImageOutputOption outputOption)
根据地图参数以及图片输出设置获取鹰眼。
getOverview
在接口中 MapProvider
mapParameter
- 地图参数。该参数不能为空。outputOption
- 图片输出设置。public java.lang.String getResource(java.lang.String mapName, ResourceParameter resourceParameter)
根据资源图片参数获取指定地图的资源图片。
getResource
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。resourceParameter
- 资源图片参数。public byte[] getResource(java.lang.String mapName, ResourceParameter resourceParameter, Point2D[] points)
MapProvider
根据资源图片参数获取指定地图的资源图片。
getResource
在接口中 MapProvider
mapName
- 地图名称。resourceParameter
- 资源图片参数。points
- 绘制资源图片时用的点public MeasureResult measureArea(java.lang.String mapName, Point2D[] points, MeasureParameter measureParam)
根据二维地理坐标点、量算参数,在指定地图上进行面积量算。
measureArea
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。points
- 二维地理坐标点数组。measureParam
- 量算参数。public MeasureResult measureDistance(java.lang.String mapName, Point2D[] points, MeasureParameter measureParam)
根据二维地理坐标点、量算参数,在指定地图上进行距离量算。
measureDistance
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。points
- 二维地理坐标点数组。measureParam
- 量算参数。public QueryResult queryByDistance(java.lang.String mapName, Geometry geometry, double distance, QueryParameterSet queryParameterSet)
在指定地图上,查询距离指定的几何对象一定范围内的所有几何对象。 当限制了返回几何对象个数(由QueryParameterSet.expectCount
指定)时,查询结果为查询总记录中随机抽取的 expectCount 个对象。
到指定几何对象的一定距离范围,实际是以指定几何对象为中心的一个圆,在这个圆内以及与圆相交的几何对象都能够被查询出来。
queryByDistance
在接口中 MapProvider
mapName
- 地图名称 。该参数不能为空。geometry
- 几何对象。其投影坐标系与地图坐标系相同。distance
- 查询的距离范围。其坐标单位与地图坐标单位相同。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在 queryParameterSet.queryParams[i]
中进行设置。public QueryResult queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet)
在指定的地图上,查询指定范围内的几何对象。
queryByBounds
在接口中 MapProvider
mapName
- 地图名称。bounds
- 指定的查询范围。其投影坐标系与地图坐标系相同。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在 queryParameters.queryParams[i]
中进行设置。public QueryResult queryByGeometry(java.lang.String mapName, Geometry geometry, SpatialQueryMode spatialQueryMode, QueryParameterSet queryParameterSet)
在指定地图上,查询与指定的几何对象符合某种空间关系和查询条件的几何对象。
queryByGeometry
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。geometry
- 几何对象。该几何对象仅包含空间信息、形状信息等,并不包括属性信息。其投影坐标系与地图坐标系相同。spatialQueryMode
- 空间几何对象间的查询模式。空间几何对象间的查询模式定义了一些几何对象之间的空间位置关系,根据这些空间关系来构建过滤条件执行查询 。例如:查询可被包含在面对象中的空间对象,与面有相离或者相邻关系的空间对象等。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在 queryParameterSet.queryParams[i]
中进行设置。public QueryResult queryBySQL(java.lang.String mapName, QueryParameterSet queryParameterSet)
在指定地图上执行 SQL 查询。
queryBySQL
在接口中 MapProvider
mapName
- 地图名称。该参数不能为空。queryParameterSet
- 查询参数集。可对某个地图的多个图层进行查询,单个图层的查询参数在 queryParameterSet.queryParams[i]
中进行设置。public MapParameter setDefaultMapParameter(MapParameter mapParameter)
设置默认地图参数。
setDefaultMapParameter
在接口中 MapProvider
mapParameter
- 地图参数。该参数不能为空。public MapImage viewEntire(java.lang.String layerName, MapParameter mapParameter, ImageOutputOption outputOption)
根据地图图层名、地图参数以及图片输出设置进行全幅显示。
参数中指定的图层名称限定了全幅显示的地理范围,规则是以该图层内容的最小外接矩形作为全幅显示的地理范围。
viewEntire
在接口中 MapProvider
layerName
- 地图图层名,即以该图层的最小外接矩形作为全幅显示的地理范围。mapParameter
- 地图参数。outputOption
- 图片输出设置。protected static void checkParameterNull(java.lang.Object obj, java.lang.String parameterName)
检查参数是否为空。
如果名称为 parameterName 的参数为空时,抛出 IllegalArgumentException 异常。
obj
- 待检查的参数类型。parameterName
- 待检查的参数名称。protected com.supermap.services.providers.InnerUGCMapProvider getProvider(java.lang.String name)
name
- 地图名称public java.util.List<FieldInfo> getFieldsByLayerName(java.lang.String mapName, LayerFieldsQueryParameter layerFieldsQueryParameter)
getFieldsByLayerName
在接口中 MapProvider
public void dispose()
释放 SuperMap 地图服务提供者所占用的资源。
dispose
在接口中 Disposable
public void setProviderContext(ProviderContext context)
设置 SuperMap 地图服务提供者的上下文。
setProviderContext
在接口中 ProviderContextAware
context
- SuperMap 地图服务提供者上下文。protected void checkExcludedFieldsInMapsSetting(ExcludedFieldsInMap[] excludedFieldsInMaps)
protected void checkDatasourceType(Workspace ugoWorkspace)
public void pauseForRefreshWorkspace()
暂停服务。
public void refreshWorkspaceFinished()
工作空间刷新完毕。
public void refreshWorkspace()
刷新工作空间。
public void clearCache(java.lang.String mapName, Rectangle2D bounds)
根据地图名称和边框清除指定区域的缓存。
clearCache
在接口中 MapProvider
mapName
- 地图名称。bounds
- 边界范围。public void clearAllCache()
MapProvider
清除全部缓存。
clearAllCache
在接口中 MapProvider
public java.util.List<PrjCoordSys> getDynamicPrjCoordsyses(java.lang.String mapName)
指定地图支持的动态投影列表。
getDynamicPrjCoordsyses
在接口中 DynamicProjectionable
public java.util.List<ChartFeatureInfoSpec> getChartFeatureInfoSpecs()
getChartFeatureInfoSpecs
在接口中 ChartMapProvider
public QueryResult queryChart(java.lang.String mapName, java.lang.String[] chartLayerNames, ChartQueryParameterSet chartQueryParams)
queryChart
在接口中 ChartMapProvider
public ChartFeatureQueryResult queryChartFeatureByBounds(java.lang.String mapName, Rectangle2D bounds)
queryChartFeatureByBounds
在接口中 ChartMapProvider
public QueryResult queryChart(java.lang.String mapName, java.lang.String[] chartLayerNames, ChartQueryParameterSet chartQueryParams, Rectangle2D bounds)
queryChart
在接口中 ChartMapProvider
protected void finalize() throws java.lang.Throwable
finalize
在类中 java.lang.Object
java.lang.Throwable
public boolean support(java.lang.String mapName, MapCapability capability)
MapProvider
support
在接口中 MapProvider
mapName
- 地图名。capability
- 功能类型。public VectorStyle getVectorStyle(java.lang.String mapName, java.lang.String[] layerNames, VectorStyleType type)
MapProvider
getVectorStyle
在接口中 MapProvider
mapName
- 地图名称layerNames
- 图层名称type
- 矢量样式类型public VectorStyle getVectorStyle(VectorStyleParameter vectorStyleParameter)
MapProvider
getVectorStyle
在接口中 MapProvider
vectorStyleParameter
- 矢量风格参数。public java.lang.String[] listMVTSprites(MapParameter mapParameter)
SpritesSupportedProvider
列出所有的Sprites名字
listMVTSprites
在接口中 SpritesSupportedProvider
public java.lang.String getMVTSpriteJson(MapParameter mapParameter, java.lang.String spriteName)
SpritesSupportedProvider
获取Sprite json
getMVTSpriteJson
在接口中 SpritesSupportedProvider
public byte[] getMVTSpriteResource(MapParameter mapParameter, java.lang.String spriteName)
SpritesSupportedProvider
获取Sprite资源
getMVTSpriteResource
在接口中 SpritesSupportedProvider
public byte[] getSDFFonts(java.lang.String fontstack, java.lang.String range)
SDFFontsSupportedProvider
getSDFFonts
在接口中 SDFFontsSupportedProvider
fontstack
- 字体名称range
- 字体的public Rectangle2D getProjectionExtent(java.lang.String mapName)
ProjectionExtent
获取当前投影下的范围
getProjectionExtent
在接口中 ProjectionExtent
public QueryResult queryByBounds(java.lang.String mapName, Rectangle2D bounds, QueryParameterSet queryParameterSet, boolean mergeResultByDatasetInfo)
MergeQueryResultByDatasetInfoSupported
在指定的地图上,查询指定范围内的几何对象,以及外接矩形与指定范围相交的几何对象,把相同数据集的图层的过滤条件进行拼接。
queryByBounds
在接口中 MergeQueryResultByDatasetInfoSupported
public TileData getTile(TileParameter tileParameter)
TilingProvider
getTile
在接口中 TilingProvider
public java.util.List<TilesetInfo> getTilesets(TileType tileType, java.lang.String dataName)
TilingProvider
getTilesets
在接口中 TilingProvider
public byte[] getMVTTile(VectorTileParameter vectorTileParameter)
MVTSupportedProvider
getMVTTile
在接口中 MVTSupportedProvider
vectorTileParameter
- 矢量地图切片参数。public SymbolInfo getSymbolFillAware(int symbolId, ResourceType resourceType)
SymbolFillAware
获取指定 id symbol 目前只是给arc接口用的
getSymbolFillAware
在接口中 SymbolFillAware
public int createSymbol(java.lang.String mapName, SymbolInfo symbolInfo, ResourceType resourceType)
createSymbol
在接口中 AddSymbol