参考资料

在本节中,我们介绍一些 Jmix 地图的细节。我们将深入研究 图层 如何有助于在地图上组织数据,并了解能提供可视化内容的数据源。此外,我们还介绍了 geo-object 的概念,并在 Jmix 地图的上下文中探索其实际用途。

地图是什么?

Jmix Map 是一个能显示多数据源的地理地图组件。支持多图层,可以有效地将数据结构化,且支持为每一图层实现不同的业务逻辑。

使用地图时,需要了解两个关键概念:图层数据源

图层

图层(Layer) - 是一种在地图上组织数据的方法。

图层可以是栅格图层,或矢量图层。栅格层由栅格图像组成,栅格图像是像素矩阵,而矢量层由矢量几何图形组成。

栅格层用于表示底图,矢量层是地图上由一个或多个要素组成的对象,但作为单一对象进行操作。例如,矢量层可能包含描述区域的多边形或表示客户或商店位置的地理点。

structure

地图扩展组件支持下列类型的图层:

  • Tile layer(瓦片层) 用于显示 XYZ 瓦片服务提供的瓦片。

  • Image layer(图像层) 用于处理静态图像或 WMS(Web地图服务)图像。

  • Vector layer(矢量层) 包含地理对象(具有几何属性的实体)。

图层作为一种包装器,因为显示的数据取决于所使用的 数据源

数据源

数据源是指提供图像来源的服务。此图像通常用作地图的基础背景图层,并提供空间上下文。可以从开源或商业服务(XYZ 瓦片服务或 WMS 服务)提供商获取图像。

投影

投影是指用于在地图上表示和转换地理位置的坐标参考系(CRS)。投影对于准确显示空间数据至关重要,可确保地球表面的位置在地图上正确定位和定向。

地图插件支持各种标准投影,如 EPSG:4326(WGS 84 - 通常用于 GPS 坐标)和 EPSG:3857(Web Mercator(墨卡托) - 由于其保形特性而在在线地图中很受欢迎)。

默认投影为: EPSG:4326

数据矢量源

数据矢量源是包含 地理对象 的源。此数据源可以连接是数据和 地图 UI 组件。它携带数据以及有关地理对象应如何在地图上显示的一些附加信息。

地理对象

基本上,地理对象(geo-object)是具有几何类型特定属性的实体。此属性存储特定数据,表示点、折线和多边形。Jmix 提供了数据感知组件,可以连接地理对象和地图。

坐标

坐标参考系(CRS) 通过一组称为坐标的数字来指定地球上的每个位置。有两组特定的坐标系,第一组是投影坐标系(也称为笛卡尔坐标系或矩形坐标系)和地理坐标系。

地理坐标系使用纬度和经度,有时还使用高度值来描述地球表面上的位置。最流行的是世界大地测量系统 - WGS 84(EPSG:4326)。GPS 设备使用该坐标系来定义地球上的位置。

这是 Jmix 地图组件使用或输出的所有坐标的默认坐标系。

在 OpenLayers 中处理 EPSG:4326 坐标时,请先输入经度,然后再输入纬度。有关更多详细信息,请参阅 OpenLayers 文档

将地图数据投影到平面上后,基于在球体上测量的角度的地理系统(经纬度)将不再有效。此时,平面使用笛卡尔坐标系。当用户在 Jmix 地图组件中输入经度和纬度坐标时,会将地理坐标转换为投影坐标(以米为单位),用于在 GIS 和 WM(T)S 服务中生成栅格瓦片。

标记

标记 可以显示在地图最上层,用于展示兴趣点,例如地址、建筑物、车辆或任何其他实体。标记由坐标和图标定义。

标记可以配置为显示文本,默认情况下,文本显示在标记图标下方。可以通过为标记 自定义 文本的位置和样式。