SuperMap Layer(图层) |
地图窗口是地理数据可视化显示的窗口,地图数据在地图窗口中都将以图层的形式进行管理和显示,地图窗口中的这些图层就构成一幅地图。通常一个图层关联SuperMap的一个数据集,该图层显示和管理这个数据集的空间数据内容。
在SuperMap组件中的一个地图对应一个Map对象,地图中的图层对应Layer对象。一个地图由多个图层组成,因此一个地图对应了一个Layers图层集合对象,图层集合中组织着该地图中的所有图层。具体关系如下图所示:
Layer类与相关类的关系
地图中显示的数据类型的不同,相应地就会有不同类型的图层,如影像数据显示在地图中,其对应的图层就为影像图层;矢量数据显示在地图中,其对应的图层就为矢量图层。另外,SuperMap为了服务于海洋领域的应用,对于显示的海图数据也专门提供了海图图层类型;还有用于管理图层的分组图层以及用户完全可以自定义的扩展图层类型。如此丰富的图层类型,您不免有点眼花缭乱,下面将逐一为您介绍这些类型的图层。
可以说,Layer类是所有图层类型的基类,同时Layer类本身也是一类图层。具体说明一下:
l 地图中添加的矢量数据、影像数据、栅格数据以及基于这些数据做制作的专题图都对应Layer对象;
l 海图数据添加到地图中对应LayerChart对象,即海图图层类型;LayerChart类继承自Layer类;
l 7.1版本后,SuperMap组件提供了一个新的图层类型,分组图层(LayerGroup类,该类继承自Layer类),其作用并不是为了显示某种类型的空间数据,而是用于管理地图中的所有图层,包括对图层进行分组、统一控制分组下的所有图层的可见性等;
l 如果以上图层类型仍旧不能满足您对数据显示和管理的需求,别担心,7.1版本开始,我们还提供了完全由您自定义的扩展图层类型(LayerExtensionBase类,该类继承自Layer类),您可以自由决定图层显示的数据类型以及数据显示方面的绘制等。
Layer类的继承关系