Map类参考

地图类,负责地图显示环境的管理。 更多...

所有成员的列表。

公有成员

(id)  - init
  构造一个新的地图对象。
(id)  - initWithWorkspace:
  构造一个新的地图对象,并将该地图对象关联到指定的工作空间。
(void)  - setDynamicProjection:prj:
  设置投影坐标系统和是否动态投影
(void)  - setImageSizeWith:Height:
  设置图片的大小。
(Point2D *)  - pixelTomap:
  将地图中指定点的像素坐标转换为地图坐标。
(CGPoint)  - mapToPixel:
  将地图中指定点的地图坐标转换为像素坐标。
(BOOL)  - open:
  打开指定名称的地图。
(BOOL)  - addLayersFromMap:withDynamicProjection:
  从指定名称的地图合并图层。
(void)  - close
  关闭当前地图。
(void)  - zoom:
  将地图放大或缩小指定的比例。
(void)  - panOffsetX:offsetY:
  将地图平移指定的距离。
(void)  - viewEntire
  全幅显示此地图。
(void)  - dispose
  释放对象所占用的资源。调用该方法之后,此对象不再可用。
(void)  - refresh
  重新绘制当前地图,刷新当前地图窗口。
(void)  - refreshEx:Bound:
  重新绘制当前地图,刷新设定比例尺的特定范围的地图。
(NSString *)  - toXML
  返回此地图对象的 XML 字符串形式的描述。
(void)  - setEditLayerIndex:
  设置地图可编辑图层的索引。
(int)  - getEditLayerIndex
  获取可编辑图层的索引。
(void)  - setDynamicProjection:
  设置是否允许地图动态投影显示。
(BOOL)  - save
  保存当前地图到工作空间
(BOOL)  - fromXML:
  将地图转化为XML文件
(BOOL)  - save:
  以指定名称保存当前地图,但不能与工作空间中现有地图重名
(BOOL)  - saveAs:
  将当前地图另存为指定名称的地图

属性

id< MapParameterChangedDelegate delegate
  地图参数变化时通知委托。
id< MapLoadDelegate mapLoadDelegate
  地图第一次加载完成时通知委托。
NSString *  name
  获取或设置当前地图的名称。
Rectangle2D bounds
  获取当前地图的空间范围。
Rectangle2D userEditBounds
  获取和设置当前地图的可编辑范围。
NSString *  description
  获取或设置当前地图的描述信息。
double  angle
  获取或设置当前地图的旋转角度。
double  slantAngle
  获取或设置当前地图的倾斜角度。
GeoStyle backgroundStyle
  获取或设置当前地图的背景风格。
Rectangle2D viewBounds
  获取或设置当前地图的可见范围,也称显示范围。
BOOL  isViewBoundsLocked
  获取或设置 MapControl 地图控件中是否锁定地图的可视范围。
Rectangle2D lockedViewBounds
  获取或设置 MapControl 地图控件中锁定的地图可视范围。
Point2D center
  获取或设置当前地图的显示范围的中心点。
BOOL  isAntialias
  获取或设置一个布尔值指定是否反走样地图。
BOOL  isModified
  获取或设置一个布尔值指定当前地图是否被修改了。
BOOL  isPaintBackground
  获取或设置一个布尔值指定是否绘制地图背景。
BOOL  isFullScreenDrawModel
  获取是否使用全屏绘制模式
TrackingLayer trackingLayer
  获取当前地图的跟踪图层。
CGFloat  mapAlpha
ScreenLayer screenLayer
  屏幕图层
PrjCoordSys prjCoordSys
  获取或设置地图的投影坐标系统。
Layers layers
  获取当前地图所包含的图层集合对象。
Workspace workspace
  获取或设置当前地图所关联的工作空间。
double  scale
  获取或设置 当前地图的显示比例尺。
double  maxScale
  获取,设置地图的最大比例尺。
double  minScale
  获取,设置地图的最小比例尺。
NSInteger  imageSizeWidth
  获取图片大小的宽度。
NSInteger  imageSizeHeight
  获取图片的高。
Legend legend
LayerManager layerManager
BOOL  isVisibleScalesEnabled
  设置,获取 使用固定比例尺来显示地图
NSArray *  visibleScales
  获取,设置 固定比例尺数组,即固定比例尺显示时,可显示的比例尺
MapColorMode  mapColorMode
  地图颜色模式
CoordSysTransMethod  dynamicPrjTransMethond
  设置,获取地图动态投影时所使用的投影算法,在不同椭球体时需要设置。默认值为:MTH_GEOCENTRIC_TRANSLATION
CoordSysTransParameter dynamicPrjTransParameter
  设置,获取地图动态投影时所使用的参数,默认7个参数全为0
BOOL  IsOverlapDisplay
  压盖设置 是否显示压盖对象(用于关闭/开启文字和点图层的自动避让)

详细描述

地图类,负责地图显示环境的管理。

地图是对地理数据的可视化,通常由一个或多个图层组成。一个地图对象通常通过其图层集合对象 Layers 来管理其中的所有图层,并且地图必须与一个工作空间相关联,以便来显示该工作空间中的数据。另外,对地图的显示方式的设置将对其中的所有图层起作用。该类提供了对地图的各种显示方式的返回和设置,如地图的显示范围,比例尺,坐标以及量度单位,坐标系统以及文本、点等图层的默认显示方式等,并提供了对地图进行的相关操作的方法,如地图的打开与关闭,缩放、平移与全幅显示,以及地图的输出等。

注意:

对于从工作空间获取的 Map,编辑之后,必须保存到工作空间的 Maps 中,否则对于 Map 的编辑不能够保存。

当用户使用该工作空间对象进行编程时,如果将 WorkspaceMapControl 建立了关联,那么在进行对象的关闭时,一定需要注意关闭的顺序,如下: 1. 关闭 Map 对象; 2. 关闭 MapControl 对象; 3. 关闭 Workspace 对象。


成员函数文档

- (BOOL) addLayersFromMap: (NSString *)  name
withDynamicProjection: (BOOL)  bUseIfNeeded  

从指定名称的地图合并图层。

该指定名称为地图所关联的工作空间中的地图集合对象中的一个地图的名称,注意与地图的显示名称相区别。

参数:
name  地图名称。
bUseIfNeeded  需要时是否打开地图动态投影。
返回:
成功则返回 true,否则返回 false。
- (void) close  

关闭当前地图。

- (void) dispose  

释放对象所占用的资源。调用该方法之后,此对象不再可用。

- (BOOL) fromXML: (NSString *)  strXML  

将地图转化为XML文件

返回:
转化成功返回true,否则返回false
- (int) getEditLayerIndex  

获取可编辑图层的索引。

在嵌入式设备上,地图只能有一个可编辑图层,此处设置的是可编辑图层在地图的所有图层中的索引。

- (id) init  

构造一个新的地图对象。

- (id) initWithWorkspace: (Workspace *)  workspace  

构造一个新的地图对象,并将该地图对象关联到指定的工作空间。

参数:
workspace  指定的工作空间。
- (CGPoint) mapToPixel: (Point2D *)  point2D  

将地图中指定点的地图坐标转换为像素坐标。

这个方法必须在设置 setImageSize() 方法之后才能正常工作。

参数:
point2D  要转换坐标的指定点。
返回:
指定点的像素坐标。
- (BOOL) open: (NSString *)  name  

打开指定名称的地图。

该指定名称为地图所关联的工作空间中的地图集合对象中的一个地图的名称,注意与地图的显示名称相区别。

参数:
name  地图名称。
返回:
打开成功则返回 true,否则返回 false。
- (void) panOffsetX: (double)  offsetX
offsetY: (double)  offsetY  

将地图平移指定的距离。

参数:
offsetX  X 方向上的移动距离,单位为坐标单位。
offsetY  Y 方向上的移动距离,单位为坐标单位。
- (Point2D*) pixelTomap: (CGPoint)  point  

将地图中指定点的像素坐标转换为地图坐标。

这个方法必须在设置 setImageSize() 方法之后才能正常工作。

参数:
point  要转换坐标的指定点。
返回:
指定点的地图坐标。
- (void) refresh  

重新绘制当前地图,刷新当前地图窗口。

- (void) refreshEx: (double)  dScale
Bound: (Rectangle2D *)  bound  

重新绘制当前地图,刷新设定比例尺的特定范围的地图。

参数:
dScale  刷新的地图比例尺。
bound  刷新的地图范围。
- (BOOL) save  

保存当前地图到工作空间

返回:
返回boolean类型,保存成功返回true;否则返回false.

1.若当前地图已经关闭,保存失败; 2.若当前地图没有绑定的工作空间,保存失败;

异常:
Exception 
- (BOOL) save: (NSString *)  mapName  

以指定名称保存当前地图,但不能与工作空间中现有地图重名

参数:
mapName 
返回:
异常:
Exception 
- (BOOL) saveAs: (NSString *)  mapName  

将当前地图另存为指定名称的地图

参数:
mapName  地图名称,不能为null或空串("").
isOverWrite  重名时是否覆盖,如果为false,地图重名时将不会保存地图。
返回:
返回boolean类型,保存成功返回true;否则返回false.

1.若指定的地图名称为null或为空串(""),保存失败; 2.若当前地图已经关闭,保存失败; 3.若当前地图没有绑定的工作空间,保存失败;

- (void) setDynamicProjection: (BOOL)  value  

设置是否允许地图动态投影显示。

地图动态投影显示是指如果当前地图窗口中地图的投影信息与数据源的投影信息不同,利用地图动态投影显示可以将当前地图的投影信息转换为数据源的投影信息。

参数:
value  一个布尔值,用于指定是否允许地图动态投影显示。
- (void) setDynamicProjection: (BOOL)  bDynamic
prj: (PrjCoordSys *)  value  

设置投影坐标系统和是否动态投影

参数:
value  投影坐标系
bDynamic  地图是否动态投影 PrjCoordSys
- (void) setEditLayerIndex: (int)  index  

设置地图可编辑图层的索引。

在嵌入式设备上,地图只能有一个可编辑图层,此处设置的是可编辑图层在地图的所有图层中的索引。

参数:
index  可编辑图层的索引。
- (void) setImageSizeWith: (NSInteger)  width
Height: (2_0) 
(8_0)  NS_DEPRECATED_IOS  

设置图片的大小。

参数:
width  图片的宽。
height  图片的高。
- (NSString*) toXML  

返回此地图对象的 XML 字符串形式的描述。

任何地图都可以导出成 xml 字符串,而地图的 xml 字符串也可以导入成为一个地图来显示。地图的 xml 字符串中存储了关于地图及其图层的显示设置以及关联的数据信息等。此外,可以将地图的 xml 字符串保存成一个 xml 文件。

返回:
地图的 XML 形式的描述。
- (void) viewEntire  

全幅显示此地图。

- (void) zoom: (double)  ratio  

将地图放大或缩小指定的比例。

缩放之后地图的比例尺=原比例尺 *ratio,其中 ratio 必须为正数,当 ratio 为大于1时,地图被放大;当 ratio 小于1时,地图被缩小。

参数:
ratio  缩放地图比例,此值不可以为负。

属性文档

- (double) angle [read, write, assign]

获取或设置当前地图的旋转角度。

单位为度,精度到 0.1 度。逆时针方向为正方向,如果用户输入负值,地图则以顺时针方向旋转。

返回:
当前地图的旋转角度。
- (GeoStyle*) backgroundStyle [read, write, assign]

获取或设置当前地图的背景风格。

返回:
当前地图的背景风格。
- (Rectangle2D*) bounds [read, assign]

获取当前地图的空间范围。

地图的空间范围是其所显示的各数据集的范围的最小外接矩形,即包含各数据集范围的最小的矩形。当地图显示的数据集增加或删除时,其空间范围也会相应发生变化。

返回:
当前地图的空间范围。
- (Point2D*) center [read, write, assign]

获取或设置当前地图的显示范围的中心点。

返回:
当前地图的显示范围的中心点。
- (id<MapParameterChangedDelegate>) delegate [read, write, assign]

地图参数变化时通知委托。

- (NSString*) description [read, write, assign]

获取或设置当前地图的描述信息。

返回:
当前地图的描述信息。
- (CoordSysTransMethod) dynamicPrjTransMethond [read, write, assign]

设置,获取地图动态投影时所使用的投影算法,在不同椭球体时需要设置。默认值为:MTH_GEOCENTRIC_TRANSLATION

- (CoordSysTransParameter*) dynamicPrjTransParameter [read, write, assign]

设置,获取地图动态投影时所使用的参数,默认7个参数全为0

- (NSInteger) imageSizeHeight [read, assign]

获取图片的高。

返回:
图片的高。
- (NSInteger) imageSizeWidth [read, assign]

获取图片大小的宽度。

返回:
图片大小的宽度。
- (BOOL) isAntialias [read, write, assign]

获取或设置一个布尔值指定是否反走样地图。

文本、线型被设置为反走样后,可以去除一些显示锯齿,使显示更加美观。如图分别为线型和文本反走样前和反走样后的效果对比。

返回:
用一个布尔值指定是否反走样地图。
- (BOOL) isFullScreenDrawModel [read, write, assign]

获取是否使用全屏绘制模式

- (BOOL) isModified [read, write, assign]

获取或设置一个布尔值指定当前地图是否被修改了。

当地图的任何显示属性发生变化,或者其中的 layers 或 layer 对象发生变化,都认为该地图被修改。

返回:
一个布尔值,用于指定当前地图是否被修改了。
- (BOOL) IsOverlapDisplay [read, write, assign]

压盖设置 是否显示压盖对象(用于关闭/开启文字和点图层的自动避让)

- (BOOL) isPaintBackground [read, write, assign]

获取或设置一个布尔值指定是否绘制地图背景。

返回:
一个布尔值指定是否绘制地图背景。
- (BOOL) isViewBoundsLocked [read, write, assign]

获取或设置 MapControl 地图控件中是否锁定地图的可视范围。

返回:
一个布尔值,用于指定此地图控件的可视范围是否锁定。
- (BOOL) isVisibleScalesEnabled [read, write, assign]

设置,获取 使用固定比例尺来显示地图

返回:
返回是否使用固定比例尺来显示地图
- (LayerManager*) layerManager [read, assign]
- (Layers*) layers [read, assign]

获取当前地图所包含的图层集合对象。

地图的图层集合对象管理地图中的所有图层。

返回:
当前地图所包含的图层集合对象。
- (Legend*) legend [read, assign]
- (Rectangle2D*) lockedViewBounds [read, write, assign]

获取或设置 MapControl 地图控件中锁定的地图可视范围。

当地图控件的可视范围被锁定后,则地图控件只显示指定的可视范围内的地图,其余的地图内容不显示。

返回:
地图控件锁定的可视范围。
- (CGFloat) mapAlpha [read, write, assign]
- (MapColorMode) mapColorMode [read, write, assign]

地图颜色模式

- (id<MapLoadDelegate>) mapLoadDelegate [read, write, assign]

地图第一次加载完成时通知委托。

- (double) maxScale [read, write, assign]

获取,设置地图的最大比例尺。

返回:
地图的最大比例尺。
- (double) minScale [read, write, assign]

获取,设置地图的最小比例尺。

默认值为 0,表示地图按照默认值可缩放到无穷远或无穷近。

返回:
返回地图的最小比例尺。
- (NSString*) name [read, assign]

获取或设置当前地图的名称。

返回:
当前地图的名称。
- (PrjCoordSys*) prjCoordSys [read, write, assign]

获取或设置地图的投影坐标系统。

投影坐标系类请参见 <PrjCoordSys>。

返回:
地图的投影坐标系统。
- (double) scale [read, write, assign]

获取或设置 当前地图的显示比例尺。

返回:
当前地图的显示比例尺。
- (ScreenLayer*) screenLayer [read, assign]

屏幕图层

返回:
ScreenLayer
- (double) slantAngle [read, write, assign]

获取或设置当前地图的倾斜角度。

单位为度,精度到 0.1 度。范围0~90度。

返回:
当前地图的倾斜角度。
- (TrackingLayer*) trackingLayer [read, assign]

获取当前地图的跟踪图层。

跟踪图层是覆盖在地图的其他图层之上的一个空白的透明的图层,详细信息请参见 <TrackingLayer> 类。

返回:
当前地图的跟踪图层。
- (Rectangle2D*) userEditBounds [read, write, assign]

获取和设置当前地图的可编辑范围。

返回:
当前地图的可编辑范围(默认为0)。
- (Rectangle2D*) viewBounds [read, write, assign]

获取或设置当前地图的可见范围,也称显示范围。

当前地图的可见范围除了可以通过 setViewBounds() 方法来进行设置,还可以通过设置显示范围的中心点(Center)和显示比例尺(Scale)的方式来进行设置。

返回:
当前地图的可见范围。
- (NSArray*) visibleScales [read, write, assign]

获取,设置 固定比例尺数组,即固定比例尺显示时,可显示的比例尺

返回:
返回取固定比例尺数组
- (Workspace*) workspace [read, write, assign]

获取或设置当前地图所关联的工作空间。

地图是对其所关联的工作空间中的数据的显示。

返回:
当前地图所关联的工作空间。

该类的文档由以下文件生成:
 å…¨éƒ¨ ç±» æ–‡ä»¶ å‡½æ•° å˜é‡ ç±»åž‹å®šä¹‰ æžšä¸¾ æžšä¸¾å€¼ å±žæ€§ å®å®šä¹‰