地图

地图扩展组件提供了 GeoMap 组件和丰富的功能,支持开发者在 Web 应用程序中集成可交互的地理空间要素。

overview map

介绍

该扩展组件为应用程序提供了对空间数据的可视化展示和直观操作的功能。你可以选用符合你要求的地图供应商。

组件基于 OpenLayers JavaScript 库(v8.2.0)。默认情况所有 API 兼容 CRS - EPSG:4326

组件集成了 JTS Topology Suite(JTS)的空间数据类型(点、多段线、多边形),JTS 是最流行的 Java 空间数据类型处理库。

组件支持专业 GIS 系统中传统的多图层展示结构。图层作为地图的结构性单元进行展示。

map overview

要素

这些章节是地图组件的核心要素:

  • 图层。该扩展组件支持下列图层类型:

  • 标记(Markers) 是表示特定位置或点的地图元素。

  • 地图视图。地图组件支持配置视图,包括中心点位置、缩放级别、旋转角度、投影定义。

  • 事件。地图可以触发一些开发者能监听的事件,以便在用户交互时实现自定义的地图行为,事件包括地图点击事件、部件点击事件等。

  • 样式。地图组件支持自定义标记图标并能为地图中的多种部件创建新样式,例如多边形、点等。

安装

此扩展组件需要企业版 订阅。如果没有企业版订阅,可以按照 企业版试用 介绍的方法试用。

请按照 扩展组件 章节的介绍通过 Jmix 市场自动安装。

手动安装步骤:

  1. 配置 premium 仓库的访问

    • build.gradle 添加 premium 仓库:

      repositories {
          // ...
          maven {
              url = 'https://global.repo.jmix.io/repository/premium'
              credentials {
                  username = rootProject['premiumRepoUser']
                  password = rootProject['premiumRepoPass']
              }
          }
      }
    • 将 premium 仓库的凭证记录在 ~/.gradle/gradle.properties 文件中:

      premiumRepoUser=123456123456
      premiumRepoPass=abcdefabcdef

      仓库的凭证可以通过许可秘钥获取:秘钥中短横前的部分为用户名,短横后的部分为密码。例如,如果你的秘钥是 123456123456-abcdefabcdef,则用户名是:123456123456,密码是 abcdefabcdef

  2. build.gradle 中添加依赖:

    implementation 'io.jmix.maps:jmix-maps-starter'
    implementation 'io.jmix.maps:jmix-maps-flowui-starter'