类 Map
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.mapping.Map
-
- 所有已实现的接口:
- IDisposable
public class Map extends com.supermap.data.InternalHandleDisposable
地图类,负责地图显示环境的管理。
地图是对地理数据的可视化,通常由一个或多个图层组成。一个地图对象通常通过其图层集合对象 Layers 来管理其中的所有图层,并且地图必须与一个工作空间相关联,以便来显示该工作空间中的数据。另外,对地图的显示方式的设置将对其中的所有图层起作用。该类提供了对地图的各种显示方式的返回和设置,如地图的显示范围,比例尺,坐标以及量度单位,坐标系统以及文本、点等图层的默认显示方式等,并提供了对地图进行的相关操作的方法,如地图的打开与关闭,缩放、平移与全幅显示,以及地图的输出等。地图类支持无界面出图,即不需要关联到 MapControl 就可以显示地图,但是只能对地图进行显示及其简单的操作,不可以通过 Map 类显示的地图来操作数据。
注意:
- 对于从工作空间获取的 Map,编辑之后,必须保存到工作空间的 Maps 中,否则对于 Map 的编辑不能够保存。
- 当用户使用该工作空间对象进行编程时,如果将 Workspace 与 MapControl 建立了关联,那么在进行对象的关闭时,一定需要注意关闭的顺序,如下:
- 关闭 Map 对象;
- 关闭 MapControl 对象;
- 关闭 Workspace 对象。
-
-
方法概要
所有方法 静态方法 实例方法 具体方法 已过时的方法 限定符和类型 方法和说明 void
addDrawContinuingListener(MapDrawContinuingListener l)
添加一个用于接收地图绘制继续事件(MapDrawContinuingEvent
)的监听器。void
addDrawingListener(MapDrawingListener l)
添加一个用于接收地图绘制操作事件(MapDrawingEvent
)的监听器。void
addDrawnListener(MapDrawnListener l)
添加一个用于接收地图绘制结束事件(MapDrawnEvent
)的监听器。void
addMapClosedListener(MapClosedListener l)
添加一个用于接收地图关闭事件(MapClosedEvent
)的监听器。void
addMapOpenedListener(MapOpenedListener l)
添加一个用于接收地图打开事件(MapOpenedEvent
)的监听器。void
addSteppedListener(SteppedListener l)
添加一个用于接收地图输出为影像数据集的进度条(SteppedEvent
)的监听器。void
addTrackingLayerDrawingListener(TrackingLayerDrawingListener l)
添加一个用于接收绘制跟踪图层事件(TrackingLayerDrawingEvent
)的监听器。void
addTrackingLayerDrawnListener(TrackingLayerDrawnListener l)
添加一个用于接收绘制跟踪图层结束事件(TrackingLayerDrawnEvent
)的监听器。void
close()
关闭当前地图。void
dispose()
释放对象所占用的资源。boolean
ensureVisible(Geometry geometry)
用于全幅显示指定几何对象,即将指定几何对象全幅显示在此地图控件中。boolean
ensureVisible(Geometry geometry, double ratio)
用于按指定的比例全幅显示指定几何对象,即将指定几何对象全幅显示在此地图控件中,并根据 ratio 参数的值设置其显示比例。boolean
ensureVisible(Layer layer)
用于全幅显示给定的图层所对应的空间对象。boolean
ensureVisible(Layer layer, double ratio)
用于全幅显示给定图层中的空间对象,并通过设置 ratio 来指定显示的比率。boolean
ensureVisible(Recordset recordset)
用于全幅显示记录集对应的若干空间对象,此时,地图控件的可视范围为包含记录集中的所有记录所对应的空间对象的最小外接矩形构成的最小矩形。boolean
ensureVisible(Recordset recordset, double ratio)
用于全幅显示记录集对应的若干空间对象,并通过设置 ratio 来指定显示的比率。Selection[]
findSelection(boolean hasGeometrySelected)
返回当前地图的选择集。boolean
fromXML(String xml)
根据指定的 XML 字符串创建地图对象。boolean
fromXML(String xml, WorkspaceVersion version)
用 XML 字符串创建地图对象。double
getAngle()
返回当前地图的旋转角度。GeoStyle
getBackgroundStyle()
返回当前地图的背景风格。BookMarks
getBookMarks()
返回地图的书签集合,地图书签用来保存地图浏览时的感兴趣区域。Rectangle2D
getBounds()
返回当前地图的空间范围。Point2D
getCenter()
返回当前地图的显示范围的中心点。ChartSetting
getChartSetting()
返回海图显示参数,如海图的显示模式、显示类型名称、颜色模式、安全水深线等各属性。GeoRegion
getClipRegion()
返回地图显示裁剪的区域。MapColorMode
getColorMode()
返回当前地图的颜色模式。Unit
getCoordUnit()
返回当前地图的坐标单位。int
getCurrentPlayerTick()
返回当前地图播放显示的帧的序号。Rectangle2D
getCustomBounds()
返回地图自定义边界。Date
getDefaultMapEndTime()
遍历所有启用时间且可见的图层的时间字段,返回时间值的最大值作为时间线的终止时间。Date
getDefaultMapStartTime()
遍历所有启用时间且可见的图层的时间字段,返回时间值的最小值作为时间线的起始时间。String
getDescription()
返回当前地图的描述信息。Unit
getDistanceUnit()
返回当前地图的距离量度单位。double
getDPI()
返回地图的DPI,代表每英寸有多少个像素,值域为(60,180)。DynamicLayers
getDynamicLayers()
返回地图的动态图层集合。CoordSysTransMethod
getDynamicPrjTransMethod()
返回地图动态投影时所使用的地理坐标系转换算法。CoordSysTransMethod
getDynamicPrjTransMethond()
已过时。CoordSysTransParameter
getDynamicPrjTransParameter()
设置地图动态投影时,当源投影与目标目标投影所基于的地理坐标系不同时,可以通过该方法设置转换参数。CoordSysTransRunnable
getDynamicPrjTransRunnable()
返回地图自定义投影转换方法的执行对象。String
getExternalXML()
获取布局的扩展XMLGridSetting
getGrid()
返回地图对象的格网设置。String
getHashCode(ImageType imageType)
根据对应的图片类型,返回当前地图对应的 HashCode,该值通常用于计算地图缓存瓦片数据的文件名。Dimension
getImageSize()
返回无界面出图时图片的大小,以像素为单位。String
getLastProfilingResult()
返回地图性能分析的结果。Layers
getLayers()
返回当前地图所包含的图层集合对象。Rectangle2D
getLockedViewBounds()
返回 MapControl 地图控件中锁定的地图可视范围。MapControl
getMapControl()
获取当前地图绑定的地图窗口控件Date
getMapEndTime()
返回地图播放显示时态数据的时间线长度的终止时间值。LabelAvoidWeightInfos
getMapLabelAvoidWeightInfos()
获取标签避让的权重信息Date
getMapStartTime()
返回地图播放显示时态数据的时间线长度的起始时间值。double
getMaxScale()
返回地图的最大比例尺。double
getMaxVisibleTextSize()
返回文本的最大可见尺寸,单位为毫米。int
getMaxVisibleVertex()
返回最大几何对象可见节点数,如果几何对象的节点数超过指定的个数,则该几何对象不显示。double
getMinScale()
返回地图的最小比例尺。TimeSpan
getMinTimeStep()
计算地图播放显示时态数据的默认时间步长间隔。double
getMinVisibleTextSize()
返回文本的最小可见尺寸,单位为毫米。String
getName()
返回当前地图的名称。MapOverlapDisplayedOptions
getOverlapDisplayedOptions()
返回地图的压盖过滤显示选项。PrjCoordSys
getPrjCoordSys()
返回地图的投影坐标系统。Resources
getResouces()
已过时。Resources
getResources()
返回地图所使用的资源库,如果该方法返回值为 null 时,则使用工作空间中的资源库中的符号。double
getScale()
返回当前地图的显示比例尺。ScreenLayer
getScreenLayer()
返回地图对象的屏幕图层,该图层的坐标与屏幕坐标系相同。int
getTileRefreshIntervals()
获取瓦片图层刷新间隔boolean
getTileZoomInCacheEnable()
获取是否开启瓦片地图放大过渡String
getTimeFormat()
时态数据播放显示时,如果设置窗口显示当前帧的时间范围,该接口可以返回显示时间的格式。TimeSpan
getTimeStep()
返回播放时态数据的时间步长间隔。TextPosition
getTimeTextPosition()
返回时态数据播放显示时,窗口所显示的时间文本的位置,位置为时间文本锚点相对于窗口的位置。TextStyle
getTimeTextStyle()
当时态数据播放显示时,可以设置在窗口上显示当前帧的起止时间,该接口返回时间文本的样式。TimeSpan
getTimeWindow()
返回播放时态数据的时间窗。TrackingLayer
getTrackingLayer()
返回当前地图的跟踪图层。Rectangle2D
getViewBounds()
返回当前地图的可见范围,也称显示范围。double[]
getVisibleScales()
返回地图的可见比例尺数组。Workspace
getWorkspace()
返回当前地图所关联的工作空间。boolean
isAntialias()
返回是否反走样地图。boolean
isClipRegionEnabled()
返回地图显示裁剪区域是否有效,true 表示有效。boolean
isCompatibleFontHeight()
表示是否为兼容模式下的字。boolean
isContainLayerChart()
返回当前地图是否包含海图图层,true,表示包含;false,表示不包含。boolean
isCustomBoundsEnabled()
返回自定义地图边界是否有效。boolean
isDebugMode()
获取地图调试模式boolean
isDisableAutoAvoidEffect()
是否在出图的时候关掉地图的自动避让效果。boolean
isDisableDynamicEffect()
返回是否在出图的时候关闭地图的动态效果。boolean
isDrawTextAtLast()
获取是否标签图层最后绘制。boolean
isDynamicProjection()
返回是否允许地图动态投影显示。boolean
isFillMarkerAngleFixed()
返回是否固定填充符号的填充角度。boolean
isFullLabel()
boolean
isGraphicsAlphaEnable()
返回地图是否使用了Alpha通道。boolean
isInflateBounds()
获取地图查询时是否扩大范围boolean
isLineAntialias()
返回是否地图线型反走样显示。boolean
isMapOutputFull()
static boolean
isMapProfileingEnable()
返回是否开启地图的性能信息收集,在对地图性能分析时可以开启该属性。boolean
isMapThreadDrawingEnabled()
返回是否另启线程绘制地图元素,true表示另启线程绘制地图元素,可以提升大数据量地图的绘制性能。boolean
isMarkerAngleFixed()
返回一个布尔值指定点状符号的角度是否固定。boolean
isModified()
返回一个布尔值指定当前地图是否被修改了。boolean
isOrthographView()
返回用于控制地图是否以正射投影方式显示。boolean
isOverlapDisplayed()
返回重叠时是否显示对象。boolean
isPaintBackground()
返回一个布尔值指定是否绘制地图背景。boolean
isShowTime()
返回时态数据播放显示时,窗口是否显示当前帧的时间范围的文本,true表示显示,false表示不显示。boolean
isSymbolFillIgnored()
返回当前地图是否忽略符号填充。boolean
isTempCacheFileEnable()
获取是否已经启动地图临时缓存boolean
isTextAngleFixed()
返回一个布尔值指定文本角度是否固定。boolean
isTextAntialias()
返回是否使用地图文字反走样显示功能。boolean
isTextLayerReverse()
获取标签绘制是否反序 如果希望越上层的标签图层先绘制来避免被其他图层压盖而导致不显示,需要将标签绘制是否反序设置为trueboolean
isTextOrientationFixed()
返回一个布尔值指定文本朝向是否固定。boolean
isTimeEnable()
返回地图是否启用播放显示时态数据的功能。boolean
IsTimeEnable()
已过时。boolean
isUseSystemDPI()
返回是否使用系统的的DPI。boolean
isViewBoundsLocked()
返回一个布尔值,用于指定 MapControl 地图控件中是否锁定地图的可视范围。boolean
isVisibleScalesEnabled()
返回是否使用固定比例尺来显示地图。Point2D
logicalToMap(Point2D point)
将地图中指定点的逻辑坐标转换为地图坐标。Point
logicalToPixel(Point2D point)
将地图中指定点的逻辑坐标转换为屏幕坐标。static void
main(String[] args)
Point2D
mapToLogical(Point2D point)
将地图中指定点的地图坐标转换为逻辑坐标。Point
mapToPixel(Point2D point)
将地图中指定点的地图坐标转换为像素坐标。Rectangle2D
measureText(String text, TextStyle style)
计算地图中文本的精确宽高范围。boolean
open(String name)
打开指定名称的地图。BufferedImage
outputMapToBitmap()
将地图输出为内存图片对象。BufferedImage
outputMapToBitmap(boolean isBackTransparent)
将地图输出为内存图片对象。boolean
outputMapToBMP(String fileName)
将地图导出为微软位图文件(.bmp)。DatasetImage
outputMapToDatasetImage(Datasource datasource, String datasetName, double resolution, Rectangle2D bounds, EncodeType encodeType)
将地图输出为影像数据集。boolean
outputMapToEMF(String fileName)
已过时。11.1 版本已废弃boolean
outputMapToEPS(String fileName)
已过时。已过时。boolean
outputMapToFile(String fileName, ImageType type, boolean isBackTransparent)
根据给定的参数,将地图输出为图片文件。boolean
outputMapToFile(String fileName, ImageType type, int dpi, Rectangle2D bounds, boolean isBackTransparent)
根据给定的参数,将地图输出为图片文件。boolean
outputMapToGIF(String fileName, boolean isBackTransparent)
已过时。已过时。boolean
outputMapToJPG(String fileName)
将地图导出为 JPEG 图像文件(*.jpg)。boolean
outputMapToPDF(String fileName)
将地图输出为PDF文件。boolean
outputMapToPNG(String fileName, boolean isBackTransparent)
将地图导出为便携网络图形(PNG)格式图像文件。boolean
outputMapToWEBP(String fileName, boolean isBackTransparent)
地图输出为webp文件boolean
outputScreenLayerToPNG(String fileName, boolean isBackTransparent)
根据给定的参数,将屏幕图层导出为 PNG 文件。boolean
outputScreenLayerToPNG(String fileName, boolean isBackTransparent, int dpi, Rectangle2D bounds)
/** 根据给定的参数,将屏幕图层导出为 PNG 文件。boolean
outputTrackingLayerToPNG(String fileName, boolean isBackTransparent)
导出跟踪图层上的地图至 PNG 文件。boolean
outputTrackingLayerToPNG(String fileName, boolean isBackTransparent, int dpi, Rectangle2D bounds)
根据指定的参数,将跟踪图层导出至 PNG 文件。void
pan(double offsetX, double offsetY)
将地图平移指定的距离。Point2D
pixelToLogical(Point point)
将地图中指定点的屏幕坐标转换为逻辑坐标。Point2D
pixelToMap(Point point)
将地图中指定点的像素坐标转换为地图坐标。void
refresh()
重新绘制当前地图。void
refreshEx(Rectangle2D rect)
刷新给定范围内的地图内容。void
refreshTrackingLayer()
用于刷新地图窗口中的跟踪图层。void
refreshWithSnapshot()
重绘地图,并刷新快照图层void
removeDrawContinuingListener(MapDrawContinuingListener l)
移除一个用于接收地图绘制继续事件(MapDrawContinuingEvent
)的监听器。void
removeDrawingListener(MapDrawingListener l)
移除一个用于接收地图绘制操作事件(MapDrawingEvent
)的监听器。void
removeDrawnListener(MapDrawnListener l)
移除一个用于接收地图绘制结束事件(MapDrawnEvent
)的监听器。void
removeMapClosedListener(MapClosedListener l)
移除一个用于接收地图关闭事件(MapClosedEvent
)的监听器。void
removeMapOpenedListener(MapOpenedListener l)
移除一个用于接收地图打开事件(MapOpenedEvent
)的监听器。void
removeSteppedListener(SteppedListener l)
移除一个用于接收地图输出为影像数据集的进度条(SteppedEvent
)的监听器。void
removeTrackingLayerDrawingListener(TrackingLayerDrawingListener l)
移除一个用于接收绘制跟踪图层事件(TrackingLayerDrawingEvent
)的监听器。void
removeTrackingLayerDrawnListener(TrackingLayerDrawnListener l)
移除一个用于接收绘制跟踪图层结束事件(TrackingLayerDrawnEvent
)的监听器。void
setAngle(double value)
设置当前地图的旋转角度。void
setAntialias(boolean value)
设置是否反走样地图。void
setBackgroundStyle(GeoStyle style)
设置当前地图的背景风格。void
setCenter(Point2D point)
设置当前地图的显示范围的中心点。void
setClipRegion(GeoRegion geoRegion)
设置地图显示裁剪的区域。void
setClipRegionEnabled(boolean value)
设置地图显示裁剪区域是否有效,true 表示有效。void
setColorMode(MapColorMode mapColorMode)
设置当前地图的颜色模式。void
setCompatibleFontHeight(boolean value)
设置是否为兼容模式下的字。void
setCoordUnit(Unit value)
设置当前地图的坐标单位。void
setCurrentPlayerTick(int currentTick)
设置当前地图播放显示的帧的序号。void
setCustomBounds(Rectangle2D rectangle2D)
设置地图自定义边界。void
setCustomBoundsEnabled(boolean value)
设置自定义地图边界是否有效。static void
setDatasetToBeUpdated(Dataset dataset)
void
setDebugMode(boolean value)
设置地图调试模式void
setDescription(String value)
设置当前地图的描述信息。void
setDisableAutoAvoidEffect(boolean value)
设置是否在出图的时候关掉地图的自动避让效果。void
setDisableDynamicEffect(boolean value)
设置是否在出图的时候关闭地图的动态效果。void
setDistanceUnit(Unit value)
设置当前地图的距离量度单位。void
setDPI(double value)
设置地图的DPI,代表每英寸有多少个像素,值域为(60,180)。void
setDrawTextAtLast(boolean value)
设置是否标签图层最后绘制。void
setDynamicPrjTransMethod(CoordSysTransMethod transMethod)
设置地图动态投影时,当源投影与目标目标投影所基于的地理坐标系不同时,需要设置该转换算法。void
setDynamicPrjTransMethond(CoordSysTransMethod transMethod)
已过时。void
setDynamicPrjTransParameter(CoordSysTransParameter value)
设置动态投影坐标系的转换参数。void
setDynamicPrjTransRunnable(CoordSysTransRunnable value)
设置地图自定义投影转换方法。void
setDynamicProjection(boolean value)
设置是否允许地图动态投影显示。void
setExternalXML(String enternalXML)
设置布局的扩展XML,用于存储用户需要的内容void
setFillMarkerAngleFixed(boolean value)
设置是否固定填充符号的填充角度。void
setFullLabel(boolean value)
void
setGraphicsAlphaEnable(boolean value)
设置地图是否使用Alpha通道。void
setGrid(GridSetting value)
设置地图对象的格网设置。void
setImageSize(Dimension size)
设置无界面出图时图片的大小,以像素为单位。void
setInflateBounds(boolean value)
地图查询时是否扩大范围void
setIsShowTime(boolean isShowTime)
设置时态数据播放显示时,窗口是否显示当前帧的时间范围的文本,true表示显示,false表示不显示。void
setLineAntialias(boolean value)
设置是否地图线型反走样显示。void
setLockedViewBounds(Rectangle2D rect)
设置地图控件中锁定的地图可视范围。void
setMapEndTime(Date endTime)
设置地图播放显示时态数据的时间线长度的终止时间值。void
setMapOutputFull(boolean value)
static void
setMapProfileingEnable(boolean value)
设置是否开启地图的性能信息收集,在对地图性能分析时可以开启该属性。void
setMapStartTime(Date startTime)
设置地图播放显示时态数据的时间线长度的起始时间值。void
setMapThreadDrawingEnabled(boolean value)
设置是否另启线程绘制地图元素,true表示另启线程绘制地图元素,可以提升大数据量地图的绘制性能。void
setMarkerAngleFixed(boolean value)
设置一个布尔值指定点状符号的角度是否固定。void
setMaxScale(double value)
设置地图的最大比例尺。void
setMaxVisibleTextSize(double value)
设置文本的最大可见尺寸,单位为毫米。void
setMaxVisibleVertex(int value)
设置最大几何对象可见节点数,如果几何对象的节点数超过指定的个数,则该几何对象不显示。void
setMinScale(double value)
设置地图的最小比例尺。void
setMinVisibleTextSize(double value)
设置文本的最小可见尺寸,单位为毫米。void
setModified(boolean value)
设置当前地图是否被修改了。void
setName(String value)
设置当前地图的名称。void
setOrthographView(boolean value)
设置用于控制地图是否以正射投影方式显示。void
setOverlapDisplayed(boolean value)
设置重叠时是否显示对象。void
setOverlapDisplayedOptions(MapOverlapDisplayedOptions value)
设置地图的压盖过滤显示选项。void
setPaintBackground(boolean value)
设置一个布尔值指定是否绘制地图背景。void
setPreLoadWebCache(int seconds)
设置地图显示和出图时预先加载Web缓存图层的时间,单位为秒,默认为6秒。void
setPrjCoordSys(PrjCoordSys value)
设置地图的投影坐标系统。void
setResources(Resources resources)
设置地图所使用的资源库,如果该方法返回值为 null 时,则使用工作空间中的资源库中的符号。void
setScale(double value)
设置当前地图的显示比例尺。void
setSymbolFillIgnored(boolean value)
设置当前地图是否忽略符号填充。void
setTempCacheFileEnable(boolean value)
设置是否启用临时缓存文件void
setTextAngleFixed(boolean value)
设置一个布尔值指定文本角度是否固定。void
setTextAntialias(boolean value)
设置是否使用地图文字反走样显示功能。void
setTextLayerReverse(boolean value)
设置标签绘制是否反序。void
setTextOrientationFixed(boolean value)
设置一个布尔值指定文本朝向是否固定。void
setTileRefreshIntervals(int nTime)
设置瓦片刷新间隔void
setTileZoomInCacheEnable(boolean bEnable)
设置是否开启瓦片地图放大过渡,默认开启void
setTimeEnable(boolean bEnable)
设置地图是否启用播放显示时态数据的功能。void
setTimeFormat(String timeFormat)
时态数据播放显示时,如果设置窗口显示当前帧的时间范围,该接口可以设置显示时间的格式。void
setTimeStep(TimeSpan timeStep)
设置播放时态数据的时间步长间隔。void
setTimeTextPosition(TextPosition timeTextPosition)
设置时态数据播放显示时,窗口所显示的时间文本的位置,位置为时间文本锚点相对于窗口的位置。void
setTimeTextStyle(TextStyle timeTextStyle)
当时态数据播放显示时,可以设置在窗口上显示当前帧的起止时间,该接口可以设置时间文本的样式。void
setTimeWindow(TimeSpan timeWindow)
设置播放时态数据的时间窗。void
setUseSystemDPI(boolean value)
返回是否使用系统的的DPI。void
setViewBounds(Rectangle2D rect)
设置当前地图的可见范围,也称显示范围。void
setViewBoundsLocked(boolean isViewBoundsLocked)
设置一个布尔值指定 MapControl 地图控件中是否锁定地图的可视范围。void
setVisibleScales(double[] values)
设置地图的可见比例尺数组,设置后只在设定的可见比例尺范围内时才显示地图。void
setVisibleScalesEnabled(boolean value)
设置是否使用固定比例尺来显示地图。void
setWorkspace(Workspace workspace)
设置当前地图所关联的工作空间。String
toXML()
返回此地图对象的 XML 字符串形式的描述。void
viewEntire()
全幅显示此地图。void
zoom(double ratio)
将地图放大或缩小指定的比例。
-
-
-
构造器详细资料
-
Map
public Map()
构造一个新的地图对象。
-
Map
public Map(Workspace workspace)
构造一个新的地图对象,并将该地图对象关联到指定的工作空间。- 参数:
workspace
- 指定的工作空间。- 抛出:
IllegalArgumentException
- 非法参数
-
-
方法详细资料
-
main
public static void main(String[] args)
-
getName
public String getName()
返回当前地图的名称。- 返回:
- 当前地图的名称。
- 默认值:
- 默认值为 UntitledMap。
-
setName
public void setName(String value)
设置当前地图的名称。- 参数:
value
- 指定当前地图的名称。
-
isClipRegionEnabled
public boolean isClipRegionEnabled()
返回地图显示裁剪区域是否有效,true 表示有效。用户可以任意设定一个地图显示的区域,该区域外的地图内容,将不会显示。可用于布局输出或地图打印输出,可以将设置保存到工作空间,但不会修改原数据。
- 返回:
- 一个布尔值指定地图显示裁剪区域是否有效。
- 默认值:
- 默认值为 false。
-
setClipRegionEnabled
public void setClipRegionEnabled(boolean value)
设置地图显示裁剪区域是否有效,true 表示有效。用户可以任意设定一个地图显示的区域,该区域外的地图内容,将不会显示。可用于布局输出或地图打印输出,可以将设置保存到工作空间,但不会修改原数据。
- 参数:
value
- 一个布尔值指定地图显示裁剪区域是否有效。
-
getClipRegion
public GeoRegion getClipRegion()
返回地图显示裁剪的区域。用户可以任意设定一个地图显示的区域,该区域外的地图内容,将不会显示。可用于布局输出或地图打印输出,可以将设置保存到工作空间,但不会修改原数据。
- 返回:
- 地图显示裁剪的区域。
- 默认值:
- 默认值为 GeoRegion 对象的默认值。
-
setClipRegion
public void setClipRegion(GeoRegion geoRegion)
设置地图显示裁剪的区域。用户可以任意设定一个地图显示的区域,该区域外的地图内容,将不会显示。可用于布局输出或地图打印输出,可以将设置保存到工作空间,但不会修改原数据。
- 参数:
geoRegion
- 地图显示裁剪的区域。
-
getDescription
public String getDescription()
返回当前地图的描述信息。- 返回:
- 当前地图的描述信息。
- 默认值:
- 默认值为一个空字符串。
-
setDescription
public void setDescription(String value)
设置当前地图的描述信息。- 参数:
value
- 指定当前地图的描述信息。
-
getAngle
public double getAngle()
返回当前地图的旋转角度。单位为度,精度到 0.1 度。逆时针方向为正方向,如果用户输入负值,地图则以顺时针方向旋转。- 返回:
- 当前地图的旋转角度。
- 默认值:
- 默认值为 0 度,即不旋转。
-
setAngle
public void setAngle(double value)
设置当前地图的旋转角度。单位为度,精度到 0.1 度。逆时针方向为正方向,如果用户输入负值,地图则以顺时针方向旋转。- 参数:
value
- 指定当前地图的旋转角度。
-
getBackgroundStyle
public GeoStyle getBackgroundStyle()
返回当前地图的背景风格。- 返回:
- 当前地图的背景风格。
- 默认值:
- 默认值为 {FillBackColor=Color [A=255, R=255, G=255, B=255],FillForeColor=Color [A=255, R=255, G=255, B=255],FillGradientAngle=0,FillGradientMode=None,FillGradientOffsetRatioX=0,FillGradientOffsetRatioY=0,FillOpaqueRate=100,FillSymbolID=0,LineColor=Color [A=255, R=0, G=0, B=0],LineSymbolID=0,LineWidth=0.1,MarkerAngle=0,MarkerSize={Width=2.4,Height=-1},MarkerSymbolID=0}。
-
setBackgroundStyle
public void setBackgroundStyle(GeoStyle style)
设置当前地图的背景风格。- 参数:
style
- 指定当前地图的背景风格。
-
getBounds
public Rectangle2D getBounds()
返回当前地图的空间范围。地图的空间范围是其所显示的各数据集的范围的最小外接矩形,即包含各数据集范围的最小的矩形。当地图显示的数据集增加或删除时,其空间范围也会相应发生变化。- 返回:
- 当前地图的空间范围。
- 默认值:
- 默认值为 Rectangle2D(0,0,0,0)。
-
getViewBounds
public Rectangle2D getViewBounds()
返回当前地图的可见范围,也称显示范围。当前地图的可见范围除了可以通过setViewBounds()
方法来进行设置,还可以通过设置显示范围的中心点(Center)和显示比例尺(Scale)的方式来进行设置。- 返回:
- 当前地图的可见范围。
- 默认值:
- 默认值为 Rectangle2D(0,0,0,0)。
-
isViewBoundsLocked
public boolean isViewBoundsLocked()
返回一个布尔值,用于指定 MapControl 地图控件中是否锁定地图的可视范围。- 返回:
- 一个布尔值,用于指定此地图控件的可视范围是否锁定。
- 默认值:
- 默认值为 false,即地图控件的可视范围没有被锁定。
-
setViewBoundsLocked
public void setViewBoundsLocked(boolean isViewBoundsLocked)
设置一个布尔值指定 MapControl 地图控件中是否锁定地图的可视范围。- 参数:
isViewBoundsLocked
- 指定一个布尔值,用于指定此地图控件的可视范围是否锁定。
-
setViewBounds
public void setViewBounds(Rectangle2D rect)
设置当前地图的可见范围,也称显示范围。当前地图的可见范围除了可以通过 setViewBounds()方法来进行设置,还可以通过设置显示范围的中心点(Center)和显示比例尺(Scale)的方式来进行设置。- 参数:
rect
- 指定当前地图的可见范围。
-
getLockedViewBounds
public Rectangle2D getLockedViewBounds()
返回 MapControl 地图控件中锁定的地图可视范围。当地图控件的可视范围被锁定后,则地图控件只显示指定的可视范围内的地图,其余的地图内容不显示。- 返回:
- 地图控件锁定的可视范围。
- 默认值:
- 默认值为 Rectangle2D(0,0,0,0)。
-
setLockedViewBounds
public void setLockedViewBounds(Rectangle2D rect)
设置地图控件中锁定的地图可视范围。当地图控件的可视范围被锁定后,则地图控件只显示指定的可视范围内的地图,其余的地图内容不显示。- 参数:
rect
- 指定地图控件锁定的可视范围。
-
getCenter
public Point2D getCenter()
返回当前地图的显示范围的中心点。- 返回:
- 当前地图的显示范围的中心点。
- 默认值:
- 默认值为 Point2D(0,0)。
-
setCenter
public void setCenter(Point2D point)
设置当前地图的显示范围的中心点。- 参数:
point
- 指定当前地图的显示范围的中心点。
-
getColorMode
public MapColorMode getColorMode()
返回当前地图的颜色模式。地图的颜色模式包括彩色模式,黑白模式,灰度模式以及黑白反色模式等,具体请参见 MapColorMode 类。- 返回:
- 当前地图的颜色模式。
- 另请参阅:
MapColorMode
- 默认值:
- 默认值为
MapColorMode.DEFAULT
。
-
setColorMode
public void setColorMode(MapColorMode mapColorMode)
设置当前地图的颜色模式。地图的颜色模式包括彩色模式,黑白模式,灰度模式以及黑白反色模式等,具体请参见 MapColorMode 类。- 参数:
mapColorMode
- 指定当前地图的颜色模式。- 另请参阅:
MapColorMode
-
isAntialias
public boolean isAntialias()
返回是否反走样地图。文本、线型被设置为反走样后,可以去除一些显示锯齿,使显示更加美观。如图分别为线型和文本反走样前和反走样后的效果对比。当面几何对象风格的轮廓线使用 ID为5的系统线型符号(即:NULL系统线型,
GeoStyle.setLineSymbolID(int)
设置为 5)时,轮廓线反走样无效。- 返回:
- 用一个布尔值指定是否反走样地图。
- 默认值:
- 默认值为 false,即默认地图显示时不反走样。
-
setAntialias
public void setAntialias(boolean value)
设置是否反走样地图。文本、线型被设置为反走样后,可以去除一些显示锯齿,使显示更加美观。如图分别为线型和文本反走样前和反走样后的效果对比。当面几何对象风格的轮廓线使用 ID为5的系统线型符号(即:NULL系统线型,
GeoStyle.setLineSymbolID(int)
设置为 5)时,轮廓线反走样无效。- 参数:
value
- 用一个布尔值指定是否反走样地图。
-
isTextAngleFixed
public boolean isTextAngleFixed()
返回一个布尔值指定文本角度是否固定。针对地图中的所有文本图层。- 返回:
- 一个布尔值指定文本角度是否固定。
- 默认值:
- 默认值为 false,即文本角度不固定。
-
setTextAngleFixed
public void setTextAngleFixed(boolean value)
设置一个布尔值指定文本角度是否固定。针对地图中的所有文本图层。- 参数:
value
- 一个布尔值指定文本角度是否固定。
-
isTextOrientationFixed
public boolean isTextOrientationFixed()
返回一个布尔值指定文本朝向是否固定。当设定了文本角度的情况下,文本朝向是否固定将会使文本的显示效果不同。例如,当文本的角度设置为45度,第一幅图中显示的是文本的朝向不固定时的效果,第二幅图中显示的是文本的朝向固定时的效果,可以看出当文本的朝向固定时,不管文本角度如何,文本都是竖直放置。针对地图中的所有文本图层。- 返回:
- 一个布尔值指定文本朝向是否固定。
- 默认值:
- 默认值为 false,即文本朝向不固定。
-
setTextOrientationFixed
public void setTextOrientationFixed(boolean value)
设置一个布尔值指定文本朝向是否固定。当设定了文本角度的情况下,文本朝向是否固定将会使文本的显示效果不同。例如,当文本的角度设置为45度,第一幅图中显示的是文本的朝向不固定时的效果,第二幅图中显示的是文本的朝向固定时的效果,可以看出当文本的朝向固定时,不管文本角度如何,文本都是竖直放置。针对地图中的所有文本图层。- 参数:
value
- 一个布尔值,用于指定文本朝向是否固定。
-
isMarkerAngleFixed
public boolean isMarkerAngleFixed()
返回一个布尔值指定点状符号的角度是否固定。针对地图中的所有点图层。- 返回:
- 一个布尔值,用于指定点状符号的角度是否固定。
- 默认值:
- 默认值为 false,即点状符号的角度不固定。
-
setMarkerAngleFixed
public void setMarkerAngleFixed(boolean value)
设置一个布尔值指定点状符号的角度是否固定。针对地图中的所有点图层。- 参数:
value
- 指定点状符号的角度是否固定。
-
isModified
public boolean isModified()
返回一个布尔值指定当前地图是否被修改了。当地图的任何显示属性发生变化,或者其中的 layers 或 layer 对象发生变化,都认为该地图被修改。- 返回:
- 一个布尔值,用于指定当前地图是否被修改了。
- 默认值:
- 默认值为 false,即当前地图没有被修改。
-
setModified
public void setModified(boolean value)
设置当前地图是否被修改了。当地图的任何显示属性发生变化,或者其中的 layers 或 layer 对象发生变化,都认为该地图被修改。
- 参数:
value
- 当前地图是否被修改了
-
isPaintBackground
public boolean isPaintBackground()
返回一个布尔值指定是否绘制地图背景。- 返回:
- 一个布尔值指定是否绘制地图背景。
- 默认值:
- 默认值为 true,即有绘制地图背景。
-
setPaintBackground
public void setPaintBackground(boolean value)
设置一个布尔值指定是否绘制地图背景。- 参数:
value
- 用一个布尔值,用于指定是否绘制地图背景。
-
getMaxVisibleTextSize
public double getMaxVisibleTextSize()
返回文本的最大可见尺寸,单位为毫米。- 返回:
- 文本的最大可见尺寸。
- 默认值:
- 默认值为 1000。
-
setMaxVisibleTextSize
public void setMaxVisibleTextSize(double value)
设置文本的最大可见尺寸,单位为毫米。- 参数:
value
- 指定文本的最大可见尺寸。
-
getMinVisibleTextSize
public double getMinVisibleTextSize()
返回文本的最小可见尺寸,单位为毫米。- 返回:
- 文本的最小可见尺寸。
- 默认值:
- 默认值为 0.1。
-
setMinVisibleTextSize
public void setMinVisibleTextSize(double value)
设置文本的最小可见尺寸,单位为毫米。- 参数:
value
- 指定文本的最小可见尺寸。
-
getMaxVisibleVertex
public int getMaxVisibleVertex()
返回最大几何对象可见节点数,如果几何对象的节点数超过指定的个数,则该几何对象不显示。- 返回:
- 最大几何对象可见节点数。
- 默认值:
- 默认值为 36000,即几何对象节点数超过 36000 的部分不被显示。
-
setMaxVisibleVertex
public void setMaxVisibleVertex(int value)
设置最大几何对象可见节点数,如果几何对象的节点数超过指定的个数,则该几何对象不显示。- 参数:
value
- 最大几何对象可见节点数。
-
getScale
public double getScale()
返回当前地图的显示比例尺。- 返回:
- 当前地图的显示比例尺。
- 默认值:
- 默认值为0。
-
setScale
public void setScale(double value)
设置当前地图的显示比例尺。- 参数:
value
- 指定当前地图的显示比例尺。
-
getMinScale
public double getMinScale()
返回地图的最小比例尺。- 返回:
- 返回地图的最小比例尺。
- 默认值:
- 默认值为 0,表示地图按照默认值可缩放到无穷远或无穷近。
-
setMinScale
public void setMinScale(double value)
设置地图的最小比例尺。- 参数:
value
- 地图的最小比例尺。
-
getMaxScale
public double getMaxScale()
返回地图的最大比例尺。- 返回:
- 地图的最大比例尺。
- 默认值:
- 默认值为 0,表示地图按照默认值可缩放到无穷远或无穷近。
-
setMaxScale
public void setMaxScale(double value)
设置地图的最大比例尺。- 参数:
value
- 地图的最大比例尺。
-
getCoordUnit
public Unit getCoordUnit()
返回当前地图的坐标单位。- 返回:
- 当前地图的坐标单位。
-
setCoordUnit
public void setCoordUnit(Unit value)
设置当前地图的坐标单位。- 参数:
value
- 指定当前地图的坐标单位。
-
getDistanceUnit
public Unit getDistanceUnit()
返回当前地图的距离量度单位。- 返回:
- 当前地图的距离量度单位。
- 默认值:
- 默认值为Meter
-
setDistanceUnit
public void setDistanceUnit(Unit value)
设置当前地图的距离量度单位。- 参数:
value
- 指定当前地图的距离量度单位。
-
getTrackingLayer
public TrackingLayer getTrackingLayer()
返回当前地图的跟踪图层。跟踪图层是覆盖在地图的其他图层之上的一个空白的透明的图层,详细信息请参见TrackingLayer
类。- 返回:
- 当前地图的跟踪图层。
- 默认值:
- 默认值为 TrackingLayer 的默认值。
-
getScreenLayer
public ScreenLayer getScreenLayer()
返回地图对象的屏幕图层,该图层的坐标与屏幕坐标系相同。单位为像素。- 返回:
- 地图对象的屏幕图层,该图层的坐标与屏幕坐标系相同。单位为像素。
-
isDynamicProjection
public boolean isDynamicProjection()
返回是否允许地图动态投影显示。地图动态投影显示是指如果当前地图窗口中地图的投影信息与数据源的投影信息不同,利用地图动态投影显示可以将当前地图的投影信息转换为数据源的投影信息。- 返回:
- 是否允许地图动态投影显示。
- 默认值:
- 默认值为 false。即不允许地图动态投影显示。
-
setDynamicProjection
public void setDynamicProjection(boolean value)
设置是否允许地图动态投影显示。地图动态投影显示是指如果当前地图窗口中地图的投影信息与数据源的投影信息不同,利用地图动态投影显示可以将当前地图的投影信息转换为数据源的投影信息。- 参数:
value
- 一个布尔值,用于指定是否允许地图动态投影显示。
-
getPrjCoordSys
public PrjCoordSys getPrjCoordSys()
返回地图的投影坐标系统。投影坐标系类请参见PrjCoordSys
。- 返回:
- 地图的投影坐标系统。
- 默认值:
- 默认值为 PrjCoordSys 的默认值。
-
setPrjCoordSys
public void setPrjCoordSys(PrjCoordSys value)
设置地图的投影坐标系统。投影坐标系类请参见PrjCoordSys
。- 参数:
value
- 地图的投影坐标系统。
-
getDynamicPrjTransMethond
@Deprecated public CoordSysTransMethod getDynamicPrjTransMethond()
已过时。
-
getDynamicPrjTransMethod
public CoordSysTransMethod getDynamicPrjTransMethod()
返回地图动态投影时所使用的地理坐标系转换算法。默认值为:MTH_GEOCENTRIC_TRANSLATION。Map对象动态投影支持设置地理坐标系转换方法(参见:
setDynamicPrjTransMethod(CoordSysTransMethod) 方法
),以及参数的设置(参见:getDynamicPrjTransParameter 方法
),用于满足在动态投影时更准确的转换。- 返回:
- 返回地图动态投影时所使用的投影算法。
-
setDynamicPrjTransMethond
@Deprecated public void setDynamicPrjTransMethond(CoordSysTransMethod transMethod)
已过时。
-
setDynamicPrjTransMethod
public void setDynamicPrjTransMethod(CoordSysTransMethod transMethod)
设置地图动态投影时,当源投影与目标目标投影所基于的地理坐标系不同时,需要设置该转换算法。此处的投影算法不支持自定义算法,即:CoordSysTransMethod.MTH_EXTENTION。
Map对象动态投影支持设置地理坐标系转换方法(参见:
setDynamicPrjTransMethod(CoordSysTransMethod) 方法
),以及参数的设置(参见:getDynamicPrjTransParameter 方法
),用于满足在动态投影时更准确的转换。- 参数:
transMethod
- 地理坐标系转换算法。
-
getDynamicPrjTransParameter
public CoordSysTransParameter getDynamicPrjTransParameter()
设置地图动态投影时,当源投影与目标目标投影所基于的地理坐标系不同时,可以通过该方法设置转换参数。Map对象动态投影支持设置地理坐标系转换方法(参见:
setDynamicPrjTransMethod(CoordSysTransMethod) 方法
),以及参数的设置(参见:getDynamicPrjTransParameter 方法
),用于满足在动态投影时更准确的转换。- 返回:
- 返回动态投影坐标系的转换参数。
-
setDynamicPrjTransParameter
public void setDynamicPrjTransParameter(CoordSysTransParameter value)
设置动态投影坐标系的转换参数。Map对象动态投影支持设置地理坐标系转换方法(参见:
setDynamicPrjTransMethod(CoordSysTransMethod) 方法
),以及参数的设置(参见:getDynamicPrjTransParameter 方法
),用于满足在动态投影时更准确的转换。- 参数:
value
- 动态投影坐标系的转换参数。
-
getDynamicPrjTransRunnable
public CoordSysTransRunnable getDynamicPrjTransRunnable()
返回地图自定义投影转换方法的执行对象。- 返回:
- 返回地图自定义投影转换方法的执行对象。
-
setDynamicPrjTransRunnable
public void setDynamicPrjTransRunnable(CoordSysTransRunnable value)
设置地图自定义投影转换方法。- 参数:
value
- 地图自定义投影转换方法的执行对象。
-
getLayers
public Layers getLayers()
返回当前地图所包含的图层集合对象。地图的图层集合对象管理地图中的所有图层。- 返回:
- 当前地图所包含的图层集合对象。
- 默认值:
- 默认值为 Layers 对象的默认值。
-
getWorkspace
public Workspace getWorkspace()
返回当前地图所关联的工作空间。地图是对其所关联的工作空间中的数据的显示。- 返回:
- 当前地图所关联的工作空间。
- 默认值:
- 默认值为 null。即不能访问 Layers,不能出图,涉及到数据的操作都不可用,其他可用。
-
setWorkspace
public void setWorkspace(Workspace workspace)
设置当前地图所关联的工作空间。地图是对其所关联的工作空间中的数据的显示。- 参数:
workspace
- 指定当前地图所关联的工作空间。
-
getImageSize
public Dimension getImageSize()
返回无界面出图时图片的大小,以像素为单位。无界面出图是 SuperMap iObjects Java 提供的功能,它可以不使用 MapControl 直接出图。- 返回:
- 无界面出图时图片的大小。
- 默认值:
- 如果地图是通过地图控件 (MapControl) 返回的,其默认值为地图控件的大小;如果是直接实例化出来的,其默认值为 256*256。
-
setImageSize
public void setImageSize(Dimension size)
设置无界面出图时图片的大小,以像素为单位。无界面出图是 SuperMap iObjects Java 提供的功能,它可以不使用 MapControl 直接出图。- 参数:
size
- 无界面出图时图片的大小。
-
isOverlapDisplayed
public boolean isOverlapDisplayed()
返回重叠时是否显示对象。- 返回:
- 重叠时显示对象返回 true;否则返回 false。
-
setOverlapDisplayed
public void setOverlapDisplayed(boolean value)
设置重叠时是否显示对象。- 参数:
value
- 一个布尔值,用于指定重叠时是否显示对象。
-
getOverlapDisplayedOptions
public MapOverlapDisplayedOptions getOverlapDisplayedOptions()
返回地图的压盖过滤显示选项。与方法Map.isOverlapDisplayed()一起使用,用来处理地图中各种对象的压盖显示。当 Map.isOverlapDisplayed()方法的返回值为 false 时(通过方法 Map.setOverlapDisplayed()的设置实现),用方法Map.getOverlapDisplayedOptions()得到的各设置项才会起作用。
- 返回:
- 地图的过滤显示选项。
-
setOverlapDisplayedOptions
public void setOverlapDisplayedOptions(MapOverlapDisplayedOptions value)
设置地图的压盖过滤显示选项。与方法Map.isOverlapDisplayed()一起使用,用来处理地图中各种对象的压盖显示。当 Map.isOverlapDisplayed()方法的返回值为 false 时(即通过方法 Map.setOverlapDisplayed()的设置实现),用方法Map.setOverlapDisplayedOptions()得到的各设置项才会起作用。
- 参数:
value
- 用于指定地图的过滤显示选项。
-
getGrid
public GridSetting getGrid()
返回地图对象的格网设置。- 返回:
- 返回地图对象的格网设置。
- 默认值:
- 默认值为 {IsVisible=False,IsSnapable=False,HorizontalSpacing=0,=0,IsSizeFixed=False,Type=Point}。
-
setGrid
public void setGrid(GridSetting value)
设置地图对象的格网设置。- 参数:
value
- 地图对象的格网设置。
-
getResouces
@Deprecated public Resources getResouces()
已过时。
-
getResources
public Resources getResources()
返回地图所使用的资源库,如果该方法返回值为 null 时,则使用工作空间中的资源库中的符号。- 返回:
- 返回地图所使用的资源库。
- 默认值:
- 默认值为 null。
-
setResources
public void setResources(Resources resources)
设置地图所使用的资源库,如果该方法返回值为 null 时,则使用工作空间中的资源库中的符号。- 参数:
resources
- 地图所使用的资源库。
-
getCustomBounds
public Rectangle2D getCustomBounds()
返回地图自定义边界。 当isCustomBoundsEnabled()
方法返回值为 true 时,viewEntire()
方法会使用该字段值来进行全幅显示; 在isCustomBoundsEnabled()
方法返回值为 false 时,viewEntire()
方法会使用getBounds()
的返回值来进行全幅显示。- 返回:
- 返回地图的自定义边界。
-
setCustomBounds
public void setCustomBounds(Rectangle2D rectangle2D)
设置地图自定义边界。 当isCustomBoundsEnabled()
方法返回值为 true 时,viewEntire()
方法会使用该字段值来进行全幅显示; 在isCustomBoundsEnabled()
方法返回值为 false 时,viewEntire()
方法会使用getBounds()
的返回值来进行全幅显示。- 参数:
rectangle2D
- 地图自定义边界。
-
isCustomBoundsEnabled
public boolean isCustomBoundsEnabled()
返回自定义地图边界是否有效。 该方法返回值为 true 时,viewEntire()
方法会使用getCustomBounds
方法的返回值作为边界来进行全幅显示; 该方法返回值为 false 时,viewEntire()
方法会使用getBounds()
方法的返回值作为边界来进行全幅显示。- 返回:
- 返回自定义地图边界是否有效。
-
setCustomBoundsEnabled
public void setCustomBoundsEnabled(boolean value)
设置自定义地图边界是否有效。 该方法返回值为 true 时,viewEntire()
方法会使用getCustomBounds
方法的返回值作为边界来进行全幅显示; 该方法返回值为 false 时,viewEntire()
方法会使用getBounds()
方法的返回值作为边界来进行全幅显示。- 参数:
value
- 自定义地图边界是否有效
-
isVisibleScalesEnabled
public boolean isVisibleScalesEnabled()
返回是否使用固定比例尺来显示地图。- 返回:
- 返回是否使用固定比例尺来显示地图。
-
setVisibleScalesEnabled
public void setVisibleScalesEnabled(boolean value)
设置是否使用固定比例尺来显示地图。- 参数:
value
- 是否使用固定比例尺来显示地图。
-
getVisibleScales
public double[] getVisibleScales()
返回地图的可见比例尺数组。- 返回:
- 返回地图的可见比例尺数组。
-
setVisibleScales
public void setVisibleScales(double[] values)
设置地图的可见比例尺数组,设置后只在设定的可见比例尺范围内时才显示地图。用户设置的比例尺数组在重新获取时会按照升序排列。
- 参数:
values
- 地图的可见比例尺数组。
-
isTextAntialias
public boolean isTextAntialias()
返回是否使用地图文字反走样显示功能。- 返回:
- 是否使用地图文字反走样显示功能。
-
setTextAntialias
public void setTextAntialias(boolean value)
设置是否使用地图文字反走样显示功能。- 参数:
value
- 是否使用地图文字反走样显示功能。
-
isLineAntialias
public boolean isLineAntialias()
返回是否地图线型反走样显示。- 返回:
- 是否地图线型反走样显示。
-
setLineAntialias
public void setLineAntialias(boolean value)
设置是否地图线型反走样显示。- 参数:
value
- 是否地图线型反走样显示。
-
outputMapToEMF
@Deprecated public boolean outputMapToEMF(String fileName)
已过时。 11.1 版本已废弃将地图导出为增强型图元文件(.emf)。将地图窗口中可见范围的内容输出为 EMF 文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
注意:当比例尺为无穷大(即
getScale()
方法返回值为 0)时出图失败。将地图窗口中可见范围的内容输出为 EMF 文件时不建议做透明、渐变、半透明等特效。
该方法仅在 Windows 平台版本中提供。
- 参数:
fileName
- 导出的 EMF 文件的名称。- 返回:
- 导出成功则返回 true,否则返回 false。
-
outputMapToPDF
public boolean outputMapToPDF(String fileName)
将地图输出为PDF文件。关于地图输出为PDF文件的详细说明,请参见:地图和布局输出为PDF。
- 参数:
fileName
- 指定PDF文件保存路径,路径为包含文件名的全路径。- 返回:
- 输出成功返回true;否则,返回false。
-
outputMapToBitmap
public BufferedImage outputMapToBitmap()
将地图输出为内存图片对象。将地图窗口中可见范围的内容输出为内存图片文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
- 返回:
- 返回 BufferedImage 对象。
-
outputMapToBitmap
public BufferedImage outputMapToBitmap(boolean isBackTransparent)
将地图输出为内存图片对象。将地图窗口中可见范围的内容输出为内存图片文件。当无界面出土时,出图范围需要根据设置setImageSize()来确定。
- 参数:
isBackTransparent
- 是否背景透明。- 返回:
- 返回 BufferedImage 对象。
-
ensureVisible
public boolean ensureVisible(Geometry geometry)
用于全幅显示指定几何对象,即将指定几何对象全幅显示在此地图控件中。这时,地图的可见范围为指定几何对象的最小外接矩形。- 参数:
geometry
- 要全幅显示的空间对象。- 返回:
- 操作成功返回 true;否则返回 false。
- 示范代码:
- 以下代码示范了如何全幅显示某几何对象。
public void ensureVisibleTest() { // 打开数据源 Workspace workspace = new Workspace(); String path = "G:/World"; DatasourceConnectionInfo dsConnectionInfo = new DatasourceConnectionInfo(path + "\\world.udb", "world", ""); Datasource datasource = workspace.getDatasources().open( dsConnectionInfo); // 获取数据集 DatasetVector datasetVector = (DatasetVector) datasource.getDatasets(). get(0); // 在地图中打开数据集 Map map = new Map(workspace); map.getLayers().add(datasetVector, true); // 返回数据集中给定ID的对象 int[] id = new int[] {1, 2, 3, 4, 5}; Recordset recordset = datasetVector.query(id, CursorType.STATIC); Geometry geometry = recordset.getGeometry(); // 全幅显示该对象 map.ensureVisible(geometry); map.refresh(); }
-
ensureVisible
public boolean ensureVisible(Geometry geometry, double ratio)
用于按指定的比例全幅显示指定几何对象,即将指定几何对象全幅显示在此地图控件中,并根据 ratio 参数的值设置其显示比例。当缩放比例为1时,地图的可见范围为指定对象的最小外接矩形。若指定缩放比例小于1时,地图的可见范围大于指定对象的最小外接矩形;若指定缩放比例大于1,地图的可见范围小于指定对象的最小外接矩形,对象不能完全显示,但可见范围的中心点始终为指定对象的最小外接矩形的中心点。- 参数:
geometry
- 要全幅显示的空间对象。ratio
- 显示比率,默认值为 1.0,该比率对点对象无效。- 返回:
- 操作成功返回 true;否则返回 false。
-
ensureVisible
public boolean ensureVisible(Recordset recordset)
用于全幅显示记录集对应的若干空间对象,此时,地图控件的可视范围为包含记录集中的所有记录所对应的空间对象的最小外接矩形构成的最小矩形。- 参数:
recordset
- 需要全幅显示的几何对象所对应的记录集。- 返回:
- 操作成功返回 true;否则返回 false。
-
ensureVisible
public boolean ensureVisible(Recordset recordset, double ratio)
用于全幅显示记录集对应的若干空间对象,并通过设置 ratio 来指定显示的比率。地图当前显示范围的中心点始终为包含记录集中的所有记录所对应的空间对象的最小外接矩形所构成的最小矩形的中心点。- 参数:
recordset
- 需要全幅显示的几何对象所对应的记录集。ratio
- 指定的显示比率,默认值为 1.0,该比率对点对象无效。- 返回:
- 操作成功返回 true;否则返回 false。
- 示范代码:
- 以下代码示范了如何按照一定比率显示某部分记录。
假设打开了一个工作空间
workspace
对象,工作空间中存在一幅地图。public void ensureVisible2Test() { // 打开工作空间中的地图 Map map = new Map(workspace); map.open(workspace.getMaps().get(0)); // 设定显示比率 double ratio = 1.0; String queryString = "smid>=5"; // 从地图中的给定图层中按照给定的查询条件查询得到记录集 Layer layer = map.getLayers().get(0); DatasetVector dataset = (DatasetVector) layer.getDataset(); Recordset recordset = dataset.query(queryString, CursorType.STATIC); // 按照给定比率显示得到的记录集 map.ensureVisible(recordset, ratio); map.refresh(); // 释放资源 map.dispose(); recordset.dispose(); workspace.dispose(); }
-
ensureVisible
public boolean ensureVisible(Layer layer)
用于全幅显示给定的图层所对应的空间对象。- 参数:
layer
- 需要全幅显示的图层。- 返回:
- 操作成功返回 true;否则返回 false。
-
ensureVisible
public boolean ensureVisible(Layer layer, double ratio)
用于全幅显示给定图层中的空间对象,并通过设置 ratio 来指定显示的比率。地图当前显示范围的中心点始终为图层中所有空间对象的最小外接矩形所构成的最小矩形的中心点。- 参数:
layer
- 需要全幅显示的图层。ratio
- 指定的显示比率,默认值为 1.0,该比率对点对象无效。- 返回:
- 操作成功返回 true;否则返回 false。
- 示范代码:
- 以下代码示范了如何按照一定比率显示图层。
假设打开了一个工作空间
workspace
对象,工作空间中存在一幅地图。public void ensureVisible3Test() { // 打开工作空间中的地图 Map map = new Map(workspace); map.open(workspace.getMaps().get(0)); // 设定显示比率 double ratio = 1.0; // 获取地图中的给定的图层 Layer layer = map.getLayers().get(0); // 按照给定比率显示该图层 map.ensureVisible(layer, ratio); map.refresh(); // 释放资源 map.close(); map.dispose(); workspace.dispose(); }
-
open
public boolean open(String name)
打开指定名称的地图。该指定名称为地图所关联的工作空间中的地图集合对象中的一个地图的名称,注意与地图的显示名称相区别。- 参数:
name
- 地图名称。- 返回:
- 打开成功则返回 true,否则返回 false。
-
close
public void close()
关闭当前地图。
-
findSelection
public Selection[] findSelection(boolean hasGeometrySelected)
返回当前地图的选择集。返回的选择集为地图中所有图层的选择集的副本的集合。当参数 hasGeometrySelected 为 true 时,返回所有有选择对象的图层的选择集,否则返回所有图层的选择集。- 参数:
hasGeometrySelected
- 指定返回的选择集是所有图层的还是有选择对象的图层的。当其为 true 时,返回所有有选择对象的图层的选择集,否则返回所有图层的选择集。- 返回:
- 当参数 hasGeometrySelected 为 true 时,返回所有有选择对象的图层的选择集,否则返回所有图层的选择集。
-
outputMapToBMP
public boolean outputMapToBMP(String fileName)
- 参数:
fileName
- 导出的 BMP 文件的名称。- 返回:
- 导出成功则返回 true,否则返回 false。
- 示范代码:
- 请参见
Map.outputMapToJPG()
方法的示例。
-
outputMapToJPG
public boolean outputMapToJPG(String fileName)
将地图导出为 JPEG 图像文件(*.jpg)。注意:当比例尺为无穷大(即
getScale()
方法的返回值为 0)时出图失败。将地图窗口中可见范围的内容输出为JPG文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
- 参数:
fileName
- 导出的 JPG 文件的名称。- 返回:
- 导出成功则返回 true,否则返回 false。
- 示范代码:
- 以下代码示范了如何进行地图出图,输出的格式为(BMP、JPG、PNG(背景透明)、EMF、EPS)。
假设打开了一个工作空间
workspace
对象,工作空间中存在一幅地图。public void outputMapToJPGTest() { // 打开工作空间里面的地图 Map map = new Map(workspace); map.open(workspace.getMaps().get(0)); // 输出地图为 JPG 文件 String outputFileJPG = "c:/temp/outputTest.jpg"; map.outputMapToJPG(outputFileJPG); // 输出地图为 PNG 文件 String outputFilePNG = "c:/temp/outputTest.png"; map.outputMapToPNG(outputFilePNG, true); // 输出地图为 BMP 文件 String outputFileBMP = "c:/temp/outputTest.bmp"; map.outputMapToBMP(outputFileBMP); // 输出地图为 EMF 文件 String outputFileEMF = "c:/temp/outputTest.emf"; map.outputMapToEMF(outputFileEMF); // 释放资源 map.dispose(); }
-
outputMapToPNG
public boolean outputMapToPNG(String fileName, boolean isBackTransparent)
将地图导出为便携网络图形(PNG)格式图像文件。将地图窗口中可见范围的内容输出为PNG文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
注意:1.当比例尺为无穷大(即
getScale()
方法返回值为 0)时出图失败。注意:2.设置输出的图片背景色透明时,如果计算机的颜色质量设置为中(16位)时, 输出图片的背景色为黑色而非透明;如果设置为最高(32位)时,输出的图片背景色为透明的。
- 参数:
fileName
- 导出的 PNG 文件的名称。isBackTransparent
- 表示背景色是否透明。- 返回:
- 导出成功则返回 true,否则返回 false。
- 示范代码:
- 请参见
Map.outputMapToJPG()
方法的示例。
-
outputMapToWEBP
public boolean outputMapToWEBP(String fileName, boolean isBackTransparent)
地图输出为webp文件- 参数:
fileName
- 文件路径isBackTransparent
- 是否背景透明- 返回:
- 是否成功
- 抛出:
IllegalStateException
- 当前对象已被释放
-
outputTrackingLayerToPNG
public boolean outputTrackingLayerToPNG(String fileName, boolean isBackTransparent)
导出跟踪图层上的地图至 PNG 文件。注意:当比例尺为无穷大(即
getScale()
方法返回值为 0)时出图失败。- 参数:
fileName
- 导出的 PNG 文件的名称。isBackTransparent
- 表示背景色是否透明。- 返回:
- 导出成功则返回 true,否则返回 false。
- 示范代码:
- 以下代码示范了获取给定图层中的记录集,并将从记录集中返回的几何对象添加到跟踪图层,最后将跟踪图层输出为 PNG 格式文件。
假设打开了一个工作空间
workspace
对象,工作空间中存在一幅地图。public void outputTrackingLayerToPNGTest() { // 打开工作空间中的地图 Map map = new Map(workspace); map.open(workspace.getMaps().get(0)); //获取地图中的给定的图层,并返回图层中所有的记录集 Layer layer = map.getLayers().get(0); DatasetVector datasetVector = (DatasetVector) layer.getDataset(); Recordset recordset = datasetVector.getRecordset(false, CursorType.STATIC); recordset.moveFirst(); //返回记录集中的几何对象,并添加到跟踪图层中 for (int i = 0; i < recordset.getRecordCount(); i++) { Geometry geometry = recordset.getGeometry(); map.getTrackingLayer().add(geometry, String.valueOf(i)); recordset.moveNext(); } // 将跟踪图层中的地图导出为 PNG 文件 String outputFilePNG = "c:/temp/OutputTrackinglayerToPNGTest.png"; map.outputTrackingLayerToPNG(outputFilePNG, false); // 释放资源 map.dispose(); recordset.dispose(); }
-
outputTrackingLayerToPNG
public boolean outputTrackingLayerToPNG(String fileName, boolean isBackTransparent, int dpi, Rectangle2D bounds)
根据指定的参数,将跟踪图层导出至 PNG 文件。- 参数:
fileName
- 指定的文件名。isBackTransparent
- 是否背景透明。dpi
- 指定的 dpi。bounds
- 指定的出图的地理范围。- 返回:
- 返回一个布尔值,若导出成功则返回 true,否则返回 false。
-
outputScreenLayerToPNG
public boolean outputScreenLayerToPNG(String fileName, boolean isBackTransparent)
根据给定的参数,将屏幕图层导出为 PNG 文件。- 参数:
fileName
- 指定的文件名。isBackTransparent
- 是否背景透明。- 返回:
- 一个布尔值,若导出成功则返回 true,否则返回 false。
-
outputScreenLayerToPNG
public boolean outputScreenLayerToPNG(String fileName, boolean isBackTransparent, int dpi, Rectangle2D bounds)
/** 根据给定的参数,将屏幕图层导出为 PNG 文件。- 参数:
fileName
- 指定的文件名。isBackTransparent
- 是否背景透明。dpi
- 指定的 dpi。bounds
- 指定的出图的地理范围。- 返回:
- 导出成功则返回 true,否则返回 false。
-
outputMapToFile
public boolean outputMapToFile(String fileName, ImageType type, boolean isBackTransparent)
根据给定的参数,将地图输出为图片文件。将地图窗口中可见范围的内容输出为图片文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
- 参数:
fileName
- 输出文件的全路径。type
- 出图的图片类型。isBackTransparent
- 是否背景透明。该参数仅在 type 参数设置为 GIF 和 PNG 类型时有效。- 返回:
- 导出成功则返回 true,否则返回 false。
-
outputMapToFile
public boolean outputMapToFile(String fileName, ImageType type, int dpi, Rectangle2D bounds, boolean isBackTransparent)
根据给定的参数,将地图输出为图片文件。对于大幅面、大数据地图的输出打印,可以先通过此接口将地图输出成高分辨率的某种格式的图片,然后对图片进行打印。将地图窗口中可见范围的内容输出为图片文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
带 DPI 参数的出图支持四种格式:BMP、JPG、PNG、TIFF。PNG格式不支持过大分辨率的出图。
- 参数:
fileName
- 输出文件的全路径。type
- 出图的图片类型。dpi
- 设置出图的分辨率。bounds
- 设置出图的范围。isBackTransparent
- 是否背景透明。该参数仅在 type 参数设置 PNG 类型时有效。- 返回:
- 导出成功则返回 true,否则返回 false。
-
outputMapToDatasetImage
public DatasetImage outputMapToDatasetImage(Datasource datasource, String datasetName, double resolution, Rectangle2D bounds, EncodeType encodeType)
将地图输出为影像数据集。- 参数:
datasource
- 生成的影像数据集存放的数据源。datasetName
- 生成的影像数据集的名称。resolution
- 生成的影像数据集的分辨率。bounds
- 生成的影像数据集的输出范围。encodeType
- 生成的影像数据集的编码方式。- 返回:
- 新生成的影像数据集。
-
outputMapToEPS
@Deprecated public boolean outputMapToEPS(String fileName)
已过时。 已过时。将地图导出为内嵌式 Postscript 格式(EPS)文件。将地图窗口中可见范围的内容输出为 EPS 文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
注意:当比例尺为无穷大(即
getScale()
方法返回值为 0)时出图失败。EPS 输出仅支持 windows 自带填充, 不支持半透明填充和渐变填充,中文字体输出可能为乱码,通过 Illustrator 等绘图软件进行修改字体,然后保存即可。
- 参数:
fileName
- 导出的 EPS 文件的名称。- 返回:
- 导出成功则返回 true,否则返回 false。
-
outputMapToGIF
@Deprecated public boolean outputMapToGIF(String fileName, boolean isBackTransparent)
已过时。 已过时。将地图导出为可交换图像文件(GIF 格式文件)。将地图窗口中可见范围的内容输出为GIF文件。当无界面出图时,出图范围需要根据设置setImageSize()来确定。
注意:当比例尺为无穷大(即
getScale()
返回值为 0)时出图失败。- 参数:
fileName
- 导出的 GIF 文件的名称。isBackTransparent
- 表示背景色是否透明。- 返回:
- 输出成功返回 true,否则返回 false。
-
zoom
public void zoom(double ratio)
将地图放大或缩小指定的比例。缩放之后地图的比例尺=原比例尺 *ratio,其中 ratio 必须为正数,当 ratio 为大于1时,地图被放大;当 ratio 小于1时,地图被缩小。- 参数:
ratio
- 缩放地图比例,此值不可以为负。
-
pan
public void pan(double offsetX, double offsetY)
将地图平移指定的距离。- 参数:
offsetX
- X 方向上的移动距离,单位为坐标单位。offsetY
- Y 方向上的移动距离,单位为坐标单位。
-
mapToPixel
public Point mapToPixel(Point2D point)
将地图中指定点的地图坐标转换为像素坐标。 这个方法必须在设置setImageSize()
方法之后才能正常工作。- 参数:
point
- 要转换坐标的指定点。- 返回:
- 指定点的像素坐标。
- 示范代码:
- 以下代码示范了返回当前鼠标点的地理坐标,并展现出来。
public void mapControl_MouseDown(MouseEvent e) { // 获取鼠标点 java.awt.Point pointMouse = new java.awt.Point(e.getX(), e.getY()); // 将地图中指定点的像素坐标转换为地图坐标 Point2D point = mapControl.getMap().pixelToMap(pointMouse); // 显示鼠标点的地理坐标 System.out.println("点的坐标为:" + point.getX() + "," + point.getY()); }
-
mapToLogical
public Point2D mapToLogical(Point2D point)
将地图中指定点的地图坐标转换为逻辑坐标。- 参数:
point
- 要转换坐标的指定点。- 返回:
- 以逻辑坐标来表示的指定点对象
-
logicalToMap
public Point2D logicalToMap(Point2D point)
将地图中指定点的逻辑坐标转换为地图坐标。- 参数:
point
- 要转换坐标的指定点。- 返回:
- 以地图坐标来表示的指定点对象。
-
logicalToPixel
public Point logicalToPixel(Point2D point)
将地图中指定点的逻辑坐标转换为屏幕坐标。- 参数:
point
- 要转换坐标的指定点。- 返回:
- 以屏幕坐标来表示的指定点对象。
-
pixelToLogical
public Point2D pixelToLogical(Point point)
将地图中指定点的屏幕坐标转换为逻辑坐标。- 参数:
point
- 要转换坐标的指定点。- 返回:
- 以逻辑坐标来表示的指定点对象。
-
pixelToMap
public Point2D pixelToMap(Point point)
将地图中指定点的像素坐标转换为地图坐标。 这个方法必须在设置setImageSize()
方法之后才能正常工作。- 参数:
point
- 要转换坐标的指定点。- 返回:
- 指定点的地图坐标。
-
refresh
public void refresh()
重新绘制当前地图。
-
refreshWithSnapshot
public void refreshWithSnapshot()
重绘地图,并刷新快照图层
-
refreshTrackingLayer
public void refreshTrackingLayer()
用于刷新地图窗口中的跟踪图层。
-
refreshEx
public void refreshEx(Rectangle2D rect)
刷新给定范围内的地图内容。- 参数:
rect
- 指定的范围。
-
viewEntire
public void viewEntire()
全幅显示此地图。
-
fromXML
public boolean fromXML(String xml)
根据指定的 XML 字符串创建地图对象。任何地图都可以导出成 xml 字符串,而地图的 xml 字符串也可以导入成为一个地图来显示。地图的 xml 字符串中存储了关于地图及其图层的显示设置以及关联的数据信息等。此外,可以将地图的 xml 字符串保存成一个 xml 文件。
- 参数:
xml
- 用来创建地图的 xml 字符串。- 返回:
- 创建成功则返回 true,否则返回 false。
- 示范代码:
- 请参见
Map.toXML()
方法的示例。
-
fromXML
public boolean fromXML(String xml, WorkspaceVersion version)
用 XML 字符串创建地图对象。任何地图都可以导出成 xml 字符串,而地图的 xml 字符串也可以导入成为一个地图来显示。地图的 xml 字符串中存储了关于地图及其图层的显示设置以及关联的数据信息等。此外,可以将地图的 xml 字符串保存成一个 xml 文件。
- 参数:
xml
- 用于创建地图对象的 XML 字符串。version
- xml 内容所对应的工作空间的版本。使用该参数时,请确保指定的版本与 xml 内容相符。若不相符,可能会导致部分图层的风格丢失。- 返回:
- 返回一个布尔值,若地图对象创建成功,返回 true,否则返回 false。
-
toXML
public String toXML()
返回此地图对象的 XML 字符串形式的描述。任何地图都可以导出成 xml 字符串,而地图的 xml 字符串也可以导入成为一个地图来显示。地图的 xml 字符串中存储了关于地图及其图层的显示设置以及关联的数据信息等。此外,可以将地图的 xml 字符串保存成一个 xml 文件。
- 返回:
- 返回地图的 XML 形式的描述。
- 示范代码:
- 以下代码示范了打开地图,并将地图导出为 XML 字符串形式的描述。
假设打开了一个工作空间
workspace
对象,工作空间中存在一幅地图。public void toAndFromXMLTest() { // 打开工作空间中的地图 Map map = new Map(workspace); map.open(workspace.getMaps().get(0)); // 将地图导出为 XML 字符串 String xml = map.toXML(); map.close(); // 通过导入 xml 字符串创建地图 map.fromXML(xml); // 将地图输出为 PNG 文件 map.outputMapToPNG(path + "\\mapPNG.png", true); //释放资源 map.dispose(); }
-
dispose
public void dispose()
释放对象所占用的资源。调用该方法之后,此对象不再可用。
-
isOrthographView
public boolean isOrthographView()
返回用于控制地图是否以正射投影方式显示。- 返回:
- 返回用于控制地图是否以正射投影方式显示。
-
setOrthographView
public void setOrthographView(boolean value)
设置用于控制地图是否以正射投影方式显示。- 参数:
value
- 用于控制地图是否以正射投影方式显示。
-
isDisableDynamicEffect
public boolean isDisableDynamicEffect()
返回是否在出图的时候关闭地图的动态效果。- 返回:
- 一个布尔值,返回是否在出图的时候关闭地图的动态效果。
- 默认值:
- 默认值为 false,表示在出图的时候不关闭地图动态效果。
-
setDisableDynamicEffect
public void setDisableDynamicEffect(boolean value)
设置是否在出图的时候关闭地图的动态效果。当关闭地图的动态效果(setDisableDynamicEffect(true))时,其地图下的统计专题图或标签专题图图层的流动显示和自动避让效果将无效,即ThemeGraph/ThemeLabel.setFlowEnable(true) 或 ThemeGraph/ThemeLabel.setOverlapAvoided(true)无效果。
- 参数:
value
- 一个布尔值,true 表示关闭地图动态效果,false 表示不关闭地图动态效果。
-
isDisableAutoAvoidEffect
public boolean isDisableAutoAvoidEffect()
是否在出图的时候关掉地图的自动避让效果。- 返回:
- 一个布尔值,指示是否在出图的时候关掉地图的自动避让效果,true表示关闭自动避让效果;false表示不关闭。
-
setDisableAutoAvoidEffect
public void setDisableAutoAvoidEffect(boolean value)
设置是否在出图的时候关掉地图的自动避让效果。- 参数:
value
- 一个布尔值,指示是否在出图的时候关掉地图的自动避让效果,true表示关闭自动避让效果;false表示不关闭。
-
getHashCode
public String getHashCode(ImageType imageType)
根据对应的图片类型,返回当前地图对应的 HashCode,该值通常用于计算地图缓存瓦片数据的文件名。- 参数:
imageType
- HashCode 对应的图片类型。- 返回:
- 当前地图对应的 HashCode。
-
isInflateBounds
public boolean isInflateBounds()
获取地图查询时是否扩大范围- 返回:
- 是否扩大范围
- 抛出:
IllegalStateException
- 当前对象已被释放
-
setInflateBounds
public void setInflateBounds(boolean value)
地图查询时是否扩大范围- 参数:
value
- 是否扩大- 抛出:
IllegalStateException
- 当前对象已被释放
-
addDrawingListener
public void addDrawingListener(MapDrawingListener l)
添加一个用于接收地图绘制操作事件(MapDrawingEvent
)的监听器。- 参数:
l
- 一个用于接收地图绘制操作事件的监听器。
-
removeDrawingListener
public void removeDrawingListener(MapDrawingListener l)
移除一个用于接收地图绘制操作事件(MapDrawingEvent
)的监听器。- 参数:
l
- 一个用于接收地图绘制操作事件的监听器。
-
addDrawnListener
public void addDrawnListener(MapDrawnListener l)
添加一个用于接收地图绘制结束事件(MapDrawnEvent
)的监听器。- 参数:
l
- 一个用于接收地图绘制结束事件的监听器。
-
removeDrawnListener
public void removeDrawnListener(MapDrawnListener l)
移除一个用于接收地图绘制结束事件(MapDrawnEvent
)的监听器。- 参数:
l
- 一个用于接收地图绘制结束事件的监听器。
-
addDrawContinuingListener
public void addDrawContinuingListener(MapDrawContinuingListener l)
添加一个用于接收地图绘制继续事件(MapDrawContinuingEvent
)的监听器。- 参数:
l
- 一个用于接收地图绘制继续事件的监听器。
-
removeDrawContinuingListener
public void removeDrawContinuingListener(MapDrawContinuingListener l)
移除一个用于接收地图绘制继续事件(MapDrawContinuingEvent
)的监听器。- 参数:
l
- 一个用于接收地图绘制继续事件的监听器。
-
addSteppedListener
public void addSteppedListener(SteppedListener l)
添加一个用于接收地图输出为影像数据集的进度条(SteppedEvent
)的监听器。- 参数:
l
- 一个用于接收地图输出为影像数据集进度的监听器。
-
removeSteppedListener
public void removeSteppedListener(SteppedListener l)
移除一个用于接收地图输出为影像数据集的进度条(SteppedEvent
)的监听器。- 参数:
l
- 一个用于接收地图输出为影像数据集进度的监听器。
-
addTrackingLayerDrawingListener
public void addTrackingLayerDrawingListener(TrackingLayerDrawingListener l)
添加一个用于接收绘制跟踪图层事件(TrackingLayerDrawingEvent
)的监听器。- 参数:
l
- 一个用于接收绘制跟踪图层事件的监听器。
-
removeTrackingLayerDrawingListener
public void removeTrackingLayerDrawingListener(TrackingLayerDrawingListener l)
移除一个用于接收绘制跟踪图层事件(TrackingLayerDrawingEvent
)的监听器。- 参数:
l
- 一个用于接收绘制跟踪图层事件的监听器。
-
addTrackingLayerDrawnListener
public void addTrackingLayerDrawnListener(TrackingLayerDrawnListener l)
添加一个用于接收绘制跟踪图层结束事件(TrackingLayerDrawnEvent
)的监听器。- 参数:
l
- 一个用于接收绘制跟踪图层结束事件的监听器。
-
removeTrackingLayerDrawnListener
public void removeTrackingLayerDrawnListener(TrackingLayerDrawnListener l)
移除一个用于接收绘制跟踪图层结束事件(TrackingLayerDrawnEvent
)的监听器。- 参数:
l
- 一个用于接收绘制跟踪图层结束事件的监听器。
-
addMapOpenedListener
public void addMapOpenedListener(MapOpenedListener l)
添加一个用于接收地图打开事件(MapOpenedEvent
)的监听器。- 参数:
l
- 一个用于接收地图打开事件的监听器。
-
removeMapOpenedListener
public void removeMapOpenedListener(MapOpenedListener l)
移除一个用于接收地图打开事件(MapOpenedEvent
)的监听器。- 参数:
l
- 一个用于接收地图打开事件的监听器。
-
addMapClosedListener
public void addMapClosedListener(MapClosedListener l)
添加一个用于接收地图关闭事件(MapClosedEvent
)的监听器。- 参数:
l
- 一个用于接收地图关闭事件的监听器。
-
removeMapClosedListener
public void removeMapClosedListener(MapClosedListener l)
移除一个用于接收地图关闭事件(MapClosedEvent
)的监听器。- 参数:
l
- 一个用于接收地图关闭事件的监听器。
-
getMapControl
public MapControl getMapControl()
获取当前地图绑定的地图窗口控件- 返回:
- 地图窗口控件
-
isFillMarkerAngleFixed
public boolean isFillMarkerAngleFixed()
返回是否固定填充符号的填充角度。- 返回:
- 是否固定填充符号的填充角度。
-
setFillMarkerAngleFixed
public void setFillMarkerAngleFixed(boolean value)
设置是否固定填充符号的填充角度。- 参数:
value
- 是否固定填充符号的填充角度。
-
isSymbolFillIgnored
public boolean isSymbolFillIgnored()
返回当前地图是否忽略符号填充。地图支持忽略符号填充时则只绘制填充区域的背景色,不进行符号的绘制。
该方法对位图填充设置无效。
- 返回:
- 一个布尔值,返回当前地图是否忽略符号填充。
- 默认值:
- 默认值为 false,表示当前地图不忽略符号填充。
-
setSymbolFillIgnored
public void setSymbolFillIgnored(boolean value)
设置当前地图是否忽略符号填充。- 参数:
value
- 一个布尔值,true 表示忽略符号填充,false 表示不忽略符号填充。
-
getChartSetting
public ChartSetting getChartSetting()
返回海图显示参数,如海图的显示模式、显示类型名称、颜色模式、安全水深线等各属性。- 返回:
- 海图显示参数。
-
isContainLayerChart
public boolean isContainLayerChart()
返回当前地图是否包含海图图层,true,表示包含;false,表示不包含。- 返回:
- 一个布尔值,用来指示当前地图是否包含海图图层,true,表示包含;false,表示不包含。
-
isUseSystemDPI
public boolean isUseSystemDPI()
返回是否使用系统的的DPI。- 返回:
- 一个布尔值,用来指示是否使用系统的DPI,true,表示使用系统的DPI;false,表示使用地图的设置。
- 默认值:
- 默认值为true。
-
setUseSystemDPI
public void setUseSystemDPI(boolean value)
返回是否使用系统的的DPI。
-
getDPI
public double getDPI()
返回地图的DPI,代表每英寸有多少个像素,值域为(60,180)。- 返回:
- 地图的DPI。
-
setDPI
public void setDPI(double value)
设置地图的DPI,代表每英寸有多少个像素,值域为(60,180)。
-
isCompatibleFontHeight
public boolean isCompatibleFontHeight()
表示是否为兼容模式下的字。7.1版本去除SuperMap.xml中的IsSupportClearType节点信息,以及废弃Environment .IsClearTypeSupported 接口。改为地图的方法(Map.IsCompatibleFontHeight()和Map.setCompatibleFontHeight()),表示是否为兼容模式下的字,为false时与SuperMap GIS 7C及6R字体大小一样,为true时与Micorsoft Office World 等软件字体大小相同,表现为false时文字会小一些,true时文字会大一些。
- 返回:
- 返回一个布尔值,表示是否为兼容模式下的字。
-
setCompatibleFontHeight
public void setCompatibleFontHeight(boolean value)
设置是否为兼容模式下的字。7.1版本去除SuperMap.xml中的IsSupportClearType节点信息,以及废弃Environment .IsClearTypeSupported 接口。改为地图的方法(Map.IsCompatibleFontHeight()和Map.setCompatibleFontHeight()),表示是否为兼容模式下的字,为false时与SuperMap GIS 7C及6R字体大小一样,为true时与Micorsoft Office World 等软件字体大小相同,表现为false时文字会小一些,true时文字会大一些。
- 参数:
value
- 一个布尔值,表示是否为兼容模式下的字。
-
isGraphicsAlphaEnable
public boolean isGraphicsAlphaEnable()
返回地图是否使用了Alpha通道。true表示使用;false表示未使用Alpha通道。当在新建的地图中第一次添加图层时,如果添加的图层为矢量数据图层,地图的Alpha通道自动开启,即该接口的值为true;如果添加的图层是影像或者栅格图层时,地图的Alpha通道自动关闭,来提高地图的显示效率,即该接口的值为false。
- 返回:
- 一个布尔值,指示地图是否使用了Alpha通道。true表示使用;false表示未使用Alpha通道。
-
setGraphicsAlphaEnable
public void setGraphicsAlphaEnable(boolean value)
设置地图是否使用Alpha通道。true表示使用;false表示未使用Alpha通道。- 参数:
value
- 一个布尔值,指示地图是否使用了Alpha通道。true表示使用;false表示未使用Alpha通道。
-
getDynamicLayers
public DynamicLayers getDynamicLayers()
返回地图的动态图层集合。- 返回:
- 返回地图的动态图层集合。
-
getBookMarks
public BookMarks getBookMarks()
返回地图的书签集合,地图书签用来保存地图浏览时的感兴趣区域。- 返回:
-
getTileZoomInCacheEnable
public boolean getTileZoomInCacheEnable()
获取是否开启瓦片地图放大过渡- 返回:
- boolean 是否开启
- 抛出:
IllegalStateException
- 当前对象已被释放
-
setTileZoomInCacheEnable
public void setTileZoomInCacheEnable(boolean bEnable)
设置是否开启瓦片地图放大过渡,默认开启- 参数:
bEnable
- 是否开启- 抛出:
IllegalStateException
- 当前对象已被释放
-
getTileRefreshIntervals
public int getTileRefreshIntervals()
获取瓦片图层刷新间隔- 返回:
- 时间(毫秒)
- 抛出:
IllegalStateException
- 当前对象已被释放
-
setTileRefreshIntervals
public void setTileRefreshIntervals(int nTime)
设置瓦片刷新间隔- 参数:
nTime
- 时间(毫秒)- 抛出:
IllegalStateException
- 当前对象已被释放
-
isTempCacheFileEnable
public boolean isTempCacheFileEnable()
获取是否已经启动地图临时缓存- 返回:
- 抛出:
IllegalStateException
- 当前对象已被释放
-
setTempCacheFileEnable
public void setTempCacheFileEnable(boolean value)
设置是否启用临时缓存文件- 参数:
value
- 是否启用- 抛出:
IllegalStateException
- 当前对象已被释放
-
getTimeStep
public TimeSpan getTimeStep()
返回播放时态数据的时间步长间隔。- 返回:
- 返回播放时态数据的时间步长间隔。
- 抛出:
IllegalStateException
- 当前对象已被释放
-
setTimeStep
public void setTimeStep(TimeSpan timeStep)
设置播放时态数据的时间步长间隔。Layer.getTimeStepInterval()
和Map.getTimeStep()
都表示时间步长间隔,两者的区别在于:Map.getTimeStep()用于控制地图播放显示时态数据的时间间隔,不管地图中各图层的时间步长间隔(
Layer.getTimeStepInterval()
)的值为多少。Layer.getTimeStepInterval()
可以描述图层对象的采集时间间隔;也可以计算Map.getTimeStep()
默认值,计算由Map.getMinTimeStep()
方法实现,具体为:若地图中包含多个启用时间的图层,并且各图层的时间步长间隔(Layer.getTimeStepInterval()
)值不同,Map.getMinTimeStep()方法返回最小的图层时间步长间隔。- 参数:
timeStep
- 播放时态数据的时间步长间隔。
-
getTimeWindow
public TimeSpan getTimeWindow()
返回播放时态数据的时间窗。- 返回:
- 返回播放时态数据的时间窗。
-
setTimeWindow
public void setTimeWindow(TimeSpan timeWindow)
设置播放时态数据的时间窗。默认情况下,时间窗的值为0。当前帧显示的时间范围与时间窗有关,具体参见:
Map.getCurrentPlayerTick()
接口的描述。- 参数:
timeWindow
- 播放时态数据的时间窗。
-
getCurrentPlayerTick
public int getCurrentPlayerTick()
返回当前地图播放显示的帧的序号。下面介绍如何计算当前帧播放的时间范围,地图将依据该范围去过滤显示所有启用时间的图层对象,从而确定当前帧的显示内容。
1.基于当前的播放参数设置,计算播放的总帧数:
总帧数=时间线的起止时间差/时间步长间隔=(
getMapEndTime()
-getMapStartTime()
)/getTimeStep()
2.总帧数相当于对时间线均匀地划分时间刻度,刻度间隔为
getTimeStep()
,确定当前帧所指的时间刻度:当前帧的时间刻度=时间线的起始时间+帧数*时间步长间隔=
getMapStartTime()
+getTimeStep()
*getCurrentPlayerTick()
3.当前帧可显示的时间并非时间刻度的值而是一段时间,当前帧的时间范围计算如下:
若时间窗设置为0,当前帧时间范围为:(当前帧的时间刻度,当前帧的时间刻度+时间步长间隔];
若时间窗为非0值,当前帧时间范围为:(当前帧的时间刻度-时间窗,当前帧的时间刻度+时间步长间隔]。
- 返回:
- 返回当前地图播放显示的帧的序号。
-
setCurrentPlayerTick
public void setCurrentPlayerTick(int currentTick)
设置当前地图播放显示的帧的序号。- 参数:
currentTick
- 当前地图播放显示的帧的序号。
-
getMapStartTime
public Date getMapStartTime()
返回地图播放显示时态数据的时间线长度的起始时间值。- 返回:
- 返回地图播放显示时态数据的时间线长度的起始时间值。
-
setMapStartTime
public void setMapStartTime(Date startTime)
设置地图播放显示时态数据的时间线长度的起始时间值。时间线的起止时间默认值,可以使用方法
Map.getDefaultMapStartTime()
和Map.getDefaultMapEndTime()
计算获得,该方法遍历所有启用时间且可见的图层的时间字段,取时间值的最小和最大值分别作为时间线的起止时间。- 参数:
startTime
- 地图播放显示时态数据的时间线长度的起始时间值。
-
getMapEndTime
public Date getMapEndTime()
返回地图播放显示时态数据的时间线长度的终止时间值。- 返回:
- 返回地图播放显示时态数据的时间线长度的终止时间值。
-
setMapEndTime
public void setMapEndTime(Date endTime)
设置地图播放显示时态数据的时间线长度的终止时间值。时间线的起止时间默认值,可以使用方法
Map.getDefaultMapStartTime()
和Map.getDefaultMapEndTime()
计算获得,该方法遍历所有启用时间且可见的图层的时间字段,取时间值的最小和最大值分别作为时间线的起止时间。- 参数:
endTime
- 地图播放显示时态数据的时间线长度的终止时间值。
-
isTimeEnable
public boolean isTimeEnable()
返回地图是否启用播放显示时态数据的功能。- 返回:
- 返回地图是否启用播放显示时态数据的功能。
-
IsTimeEnable
@Deprecated public boolean IsTimeEnable()
已过时。
-
setTimeEnable
public void setTimeEnable(boolean bEnable)
设置地图是否启用播放显示时态数据的功能。地图播放显示时态数据的实质是通过时间过滤条件过滤显示图层对象。
地图播放显示的时态数据图层必须启用时间,并完成时间相关设置,具体参见Layer对象中时间相关接口。
下文描述地图播放显示时态数据的具体过程:
首先,在Map对象中指定播放数据的时间范围(时间线起止时间)、时间步长间隔、时间窗,并可以根据这些设置参数计算获得当前地图播放时态数据的总帧数。
然后,确定地图当前帧显示的对象内容:
1.确定地图显示的当前帧(
Map.getCurrentPlayerTick()
);2.根据时间步长间隔(
Map.getTimeStep()
)、时间窗(Map.getCurrentPlayerTick()
)、时间线起始时间(Map.getMapStartTime()
和Map.getMapEndTime()
),计算当前帧的起止时间;3.当前帧的起止时间传入启用时间的Layer对象,即分别赋值给
Layer.setTimeFilterStarting()
和Layer.setTimeFilterEnding()
。4.根据Layer对象的
getTimeFilterStarting()
和getTimeFilterEnding()
返回值,构成时间过滤条件(getTimeFilterStarting(),getTimeFilterEnding()]来过滤显示图层对象,具体为:判断图层对象时间值构成的时间区间[Layer.getTimeStartField()
() getTimeStartField()},Layer.getTimeEndField()
() getTimeEndField()}]是否与查询时间条件有交集,若有对象显示,否则,对象不显示。由此,实现Map对象按照某时间序列播放显示时态数据的效果,方便查看数据随时间推移而呈现出的模式或变化趋势。
地图中那些启用时间且可见的图层才能播放显示,并且相关参数的计算也基于这些图层。
- 参数:
bEnable
- 是否启用时间播放
-
getDefaultMapStartTime
public Date getDefaultMapStartTime()
遍历所有启用时间且可见的图层的时间字段,返回时间值的最小值作为时间线的起始时间。- 返回:
- 遍历所有启用时间且可见的图层的时间字段,返回时间值的最小值作为时间线的起始时间。
-
getDefaultMapEndTime
public Date getDefaultMapEndTime()
遍历所有启用时间且可见的图层的时间字段,返回时间值的最大值作为时间线的终止时间。- 返回:
- 遍历所有启用时间且可见的图层的时间字段,返回时间值的最大值作为时间线的终止时间。
-
getMinTimeStep
public TimeSpan getMinTimeStep()
计算地图播放显示时态数据的默认时间步长间隔。- 返回:
- 返回地图播放显示时态数据的默认时间步长间隔。
-
getTimeFormat
public String getTimeFormat()
时态数据播放显示时,如果设置窗口显示当前帧的时间范围,该接口可以返回显示时间的格式。- 返回:
- 返回显示时间的格式。
-
setTimeFormat
public void setTimeFormat(String timeFormat)
时态数据播放显示时,如果设置窗口显示当前帧的时间范围,该接口可以设置显示时间的格式。当时态数据播放时,地图窗口可以显示当前播放帧的时间范围,例如当前播放帧的起止时间为:2018/6/1 13:30:10 到 2018/6/1 14:00:10,可以通过设置使地图窗口显示出:时间:2018年6月1日 13时30分10 秒 到 2018年6月1日 14时00分10秒,从而展示每一帧所显示数据的时间范围。关于窗口所显示的时间的格式,可以由用户自定义,如:2018/6/1 13:30:10、2018-6-1、2018年6月1日、13时30分,下文将详细介绍该方法传入的时间格式字符串如何构造。
1. 地图窗口仅显示日期。
日期中的年份使用“YYYY”或者“YY”作为格式化字符,系统遍历该方法传入的字符串,如果含有“YYYY”或者“YY”,在显示时间时,将使用当前帧时间范围中的年份去替换这两个字符串,其中:“YYYY”替换为四位数的年份,而“YY”则取年份的后两位数替换。
同理,日期中的月份使用“MM”作为格式化字符,为两位数的月份;日期中的日使用“DD”作为格式化字符,为两位数的日。
2. 地图窗口仅显示时间。
时间中的小时使用“hh”作为格式化字符串,系统遍历该方法传入的字符串,如果含有“hh”,在显示时间时,将使用当前帧时间范围中的小时数去替换该字符串,小时数的表达采用24小时制。
同理,时间中的分钟使用“mm”作为格式化字符;时间中的秒使用“ss”作为格式化字符。
3. 地图窗口同时显示日期和时间,使用上述格式化字符构造日期和时间的组合方式。
【注意】时间格式化字符的大小写必须严格遵守上述的内容。
上述描述了如何格式化时间,其实质就是:系统对于该方法传入的字符串,除了将上述的时间格式化字符替换为相应的时间数值外,所有非时间格式化字符都将直接显示。
【注意】时间格式字符串中不支持添加“%”和“\”特殊字符。
- 参数:
timeFormat
- 指定显示时间的格式。
-
getTimeTextPosition
public TextPosition getTimeTextPosition()
返回时态数据播放显示时,窗口所显示的时间文本的位置,位置为时间文本锚点相对于窗口的位置。- 返回:
- 返回窗口所显示的时间文本的位置。
-
setTimeTextPosition
public void setTimeTextPosition(TextPosition timeTextPosition)
设置时态数据播放显示时,窗口所显示的时间文本的位置,位置为时间文本锚点相对于窗口的位置。地图窗口显示的时间文本可以选择在如下窗口9种位置中的任意一个位置显示。
时间文本显示时,文本的锚点将与上述窗口的9个位置中指定的位置对齐,并且此时,文本的锚点与文本的相对位置也需保持一致。例如:如果选择时间文本在窗口底部居中的位置显示,那么文本的锚点与文本的对齐方式应为中下点对齐,即文本的锚点位于文本外接矩形的中下点。
- 参数:
timeTextPosition
- 指定窗口所显示的时间文本的位置。
-
isShowTime
public boolean isShowTime()
返回时态数据播放显示时,窗口是否显示当前帧的时间范围的文本,true表示显示,false表示不显示。- 返回:
- 返回时态数据播放显示时,窗口是否显示当前帧的时间范围的文本,true表示显示,false表示不显示。
-
setIsShowTime
public void setIsShowTime(boolean isShowTime)
设置时态数据播放显示时,窗口是否显示当前帧的时间范围的文本,true表示显示,false表示不显示。当时态数据播放时,地图窗口可以显示当前播放帧的时间范围,例如当前播放帧的起止时间为:2018/6/1 13:30:10 到 2018/6/1 14:00:10,可以通过设置使地图窗口显示出:时间:2018年6月1日 13时30分10 秒 到 2018年6月1日 14时00分10秒,从而展示每一帧所显示数据的时间范围。关于窗口所显示的时间的格式,可以由用户自定义,如:2018/6/1 13:30:10、2018-6-1、2018年6月1日、13时30分,自定义时间格式请参见:
Map.setTimeFormat()
。- 参数:
isShowTime
- 一个布尔值,指示时态数据播放显示时,窗口是否显示当前帧的时间范围的文本,true表示显示,false表示不显示。
-
getTimeTextStyle
public TextStyle getTimeTextStyle()
当时态数据播放显示时,可以设置在窗口上显示当前帧的起止时间,该接口返回时间文本的样式。- 返回:
- 返回时间文本的样式。
-
setTimeTextStyle
public void setTimeTextStyle(TextStyle timeTextStyle)
当时态数据播放显示时,可以设置在窗口上显示当前帧的起止时间,该接口可以设置时间文本的样式。- 参数:
timeTextStyle
- 时间文本的样式。
-
isDebugMode
public boolean isDebugMode()
获取地图调试模式- 返回:
- 是否调试模式
-
setDebugMode
public void setDebugMode(boolean value)
设置地图调试模式- 参数:
value
- 是否调试模式
-
isMapThreadDrawingEnabled
public boolean isMapThreadDrawingEnabled()
返回是否另启线程绘制地图元素,true表示另启线程绘制地图元素,可以提升大数据量地图的绘制性能。- 返回:
- 一个布尔值,指示是否另启线程绘制地图元素,true表示另启线程绘制地图元素,可以提升大数据量地图的绘制性能。
-
setMapThreadDrawingEnabled
public void setMapThreadDrawingEnabled(boolean value)
设置是否另启线程绘制地图元素,true表示另启线程绘制地图元素,可以提升大数据量地图的绘制性能。- 参数:
value
- 一个布尔值,指示是否另启线程绘制地图元素,true表示另启线程绘制地图元素,可以提升大数据量地图的绘制性能。
-
isMapProfileingEnable
public static boolean isMapProfileingEnable()
返回是否开启地图的性能信息收集,在对地图性能分析时可以开启该属性。该属性会有性能损耗,在非性能收集需要时请关闭。默认值为false。- 返回:
- 返回是否开启地图的性能信息收集,true表示开启。
-
setMapProfileingEnable
public static void setMapProfileingEnable(boolean value)
设置是否开启地图的性能信息收集,在对地图性能分析时可以开启该属性。该属性会有性能损耗,在非性能收集需要时请关闭。- 参数:
value
- 是否开启地图的性能信息收集,true表示开启。
-
getLastProfilingResult
public String getLastProfilingResult()
返回地图性能分析的结果。仅在地图绘制完后调用。返回地图性能分析的结果。如果Bin目录下的SuperMap.xml中"MapProfilesSetting"项下的IsToFile设置为true,则性能分析的结果字符串将输出到组件Bin目录下的log文件夹,结果为一个xml文件。
该接口只有在组件Bin目录下的SuperMap.xml中"MapProfilesSetting"项下的IsEnabled属性设置为true时才有效,才有输出性能分析内容,否则输出为空。
- 返回:
- 返回地图性能分析的结果。
-
setDatasetToBeUpdated
public static void setDatasetToBeUpdated(Dataset dataset)
-
getMapLabelAvoidWeightInfos
public LabelAvoidWeightInfos getMapLabelAvoidWeightInfos()
获取标签避让的权重信息- 返回:
- 权重信息列表
-
getExternalXML
public String getExternalXML()
获取布局的扩展XML- 返回:
- 扩展XML字符串
-
setExternalXML
public void setExternalXML(String enternalXML)
设置布局的扩展XML,用于存储用户需要的内容- 参数:
enternalXML
- 扩展XML字符串- 抛出:
IllegalArgumentException
- 非法参数
-
isFullLabel
public boolean isFullLabel()
-
setFullLabel
public void setFullLabel(boolean value)
-
setPreLoadWebCache
public void setPreLoadWebCache(int seconds)
设置地图显示和出图时预先加载Web缓存图层的时间,单位为秒,默认为6秒。- 参数:
seconds
- 缓存时间- 默认值:
- 默认为6秒。
-
isMapOutputFull
public boolean isMapOutputFull()
-
setMapOutputFull
public void setMapOutputFull(boolean value)
-
isDrawTextAtLast
public boolean isDrawTextAtLast()
获取是否标签图层最后绘制。- 返回:
- 是否标签图层最后绘制
- 默认值:
- false 标签图层按照其在图层中的顺序从下往上绘制
-
setDrawTextAtLast
public void setDrawTextAtLast(boolean value)
设置是否标签图层最后绘制。默认为false,即标签图层按照其在图层中的顺序从下往上绘制。如果希望标签图层最后绘制,来避免被其他图层(如点符号、统计符号等压盖),需要将标签图层最后绘制
- 参数:
value
- 是否标签图层最后绘制
-
isTextLayerReverse
public boolean isTextLayerReverse()
获取标签绘制是否反序如果希望越上层的标签图层先绘制来避免被其他图层压盖而导致不显示,需要将标签绘制是否反序设置为true
- 返回:
- 标签绘制是否反序
-
setTextLayerReverse
public void setTextLayerReverse(boolean value)
设置标签绘制是否反序。默认为false,即标签图层按照图层顺序从下往上绘制。如果希望越上层的标签图层先绘制来避免被其他图层压盖而导致不显示,需要将标签绘制是否反序设置为true
- 参数:
value
- 是否反序
-
measureText
public Rectangle2D measureText(String text, TextStyle style)
计算地图中文本的精确宽高范围。使用GeoText.getBounds()方法也可以获得地图中文本的宽高范围,但是,此方法获得的范围精确度不高,并且地图中对于文本风格的设置也会影响文本的实际范围,因此,Map.measureText() 方法可以精确获得在当前地图风格设置和绘制条件下的文本范围。
因此,Map.measureText() 方法正确执行的关键必须保证地图对象已打开地图,并能正常出图或绘制正确。Map.measureText() 方法返回结果为高精度矩形类型,代表在当前地图环境下,传入的文本内容(text 参数)在指定文本风格条件(style 参数)下,以地图坐标原点为起始点(固定为左上角对齐)占用的地理范围,单位为当前地图单位。
Map.measureText() 方法将忽略风格中的角度和排版,需要外部自己实现旋转和偏移。
如:EPSG 4326坐标系的地图使用下面的代码计算,返回结果为Left=0.09515457098993352,Bottom=-4.5364979297035575,Right=7.40361354856762,Top=-1.516302597899596
- 参数:
text
- 待计算精确范围的文本。style
- 文本在指定的风格下计算精确范围,该参数将指定文本的风格。- 返回:
- 返回文本高精度矩形范围。
TextStyle style = new TextStyle(); style.setSizeFixed(true); style.setFontHeight(10); style.setFontName("微软雅黑"); Rectangle2D bounds = map.measureText("test", style);
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.