1 Star 0 Fork 8

HeyJobs / MapGIS-Desktop-Java

forked from osmapgis / MapGIS-Desktop-Java 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 8.18 KB
一键复制 编辑 原始数据 按行查看 历史
zxf-git 提交于 2020-06-30 18:53 . 版本 1.1.0

MapGIS Desktop Based on JavaFX

MapGIS 跨平台桌面主要为GIS专业用户提供空间数据管理和处理、地图制图、空间数据分析等功能。同时也为各种行业应用提供了方便、灵活的二次开发框架,以满足专业GIS桌面应用系统的搭建。

工程包含基于MapGIS Objects JavaMapGIS跨平台桌面代码。

工程通过Maven进行编译,通过IntelliJ IDEA进行编辑。

目录

工程目录结构

|-- mapgis_javafx
   |-- bin                          -- MapGIS Objects Java 和核心模块输出目录及启动脚本
      |-- libs                      -- 模块依赖开源库
      |-- plugin                    -- 插件模块输出目录
   |-- mapgis_dataconvert           -- 数据转换插件
   |-- mapgis_dockfx                -- 框架布局控件库
   |-- mapgis_gdbmanager_plugin     -- 地理数据库管理插件
   |-- mapgis_mapeditor_plugin      -- 地图编辑插件
   |-- mapgis_pluginengine          -- 插件引擎
   |-- mapgis_rastereditor_plugin   -- 栅格编辑插件
   |-- mapgis_ribbonapploader       -- 插件框架宿主(mainClass)
   |-- mapgis_ribbonfx              -- Ribbon功能区控件库
   |-- mapgis_ui_controls           -- MapGIS UI 控件库
   |-- mapgis_workspace_plugin      -- 工作空间插件
|-- .gitignore
|-- pom.xml                         -- 主 pom 文件
|-- README.md

地址

开始

  1. 下载安装 IntelliJ IDEA 最新版本
  2. 下载安装 JDK 1.8 最新版本
  3. 启动IntelliJ IDEA,点击Open or Import
  4. 选择主工程目录下的pom.xml,选择Open As Project
  5. 设置工程JDK: File - Project Structure... ,在 Project Settings - Project - Project SDK 下拉选择 1.8
  6. 编译:
    • 在右侧 Maven 视窗中,双击 desktop - Lifecycle - package 即可编译整个工程。

注:在编译过过程中,可能需要下载编译插件及工程依赖,请保持机器联网。

运行

  • Runtime Version

    • MapGIS 运行时版本为 10.3.7.13。
  • Windows

    1. MapGIS的运行时目录Program配置到系统环境变量中(可能需要重新启动以使得环境变量生效)。
    2. 右键desktop.bat以管理员启动。
  • Linux

    1. MapGIS的运行时目录Program配置到环境变量中。
    2. 使用desktop.sh启动。

模块

  1. 框架模块

    • mapgis_dockfx: 框架布局控件库,提供内容视图和停靠窗口的停靠和浮动。
    • mapgis_ribbonfx: Ribbon功能区控件库,统筹和管理各类工具按钮。
    • mapgis_ui_controls: UI 控件库提供了丰富的MapGIS 控件,为二次开发提供便利与指导。
    • mapgis_pluginengine: 插件引擎负责解析插件jar包,提取jar包中的插件类型信息,并提交给宿主程序生成对应的界面对象。插件引擎提供一种通讯契约,即标准插件接口。插件程序集只要实现了这些接口,就能被插件引擎认可为插件。插件引擎提供一个插件容器(PluginContainer),负责管理插件的加载,卸载等状态控制。插件引擎提供一个运行框架(Application),负责管理插件引擎运行状态和与插件程序集间的交互。
    • mapgis_ribbonapploader: 宿主程序是框架运行的入口,它通过插件引擎加载插件对象,并将插件对象以 UI 的形式来展示,并负责协调这些插件对象与界面控件间的交互。
  2. 插件模块

    • mapgis_workspace_plugin: 基础插件。如果要对地图进行编辑、处理或者分析,则此插件将是必备插件。

      • 插件特色:
        • 以目录树的形式组织地图,提供地图的新建、保存及编辑等基础管理功能;
        • 提供地图数据的二维及三维图形显示窗口,能够无级放大缩小、全方位漫游;
      • 包含的主要控件
        • 工作空间视图: 地图管理的基础视图及操作区,包含了地图的新建、保存及编辑功能;地图下的图层数据的基础信息、属性表格结构及其内容的查阅功能。
        • 地图数据视图: 地图数据的图形显示区及交互操作区,显示当前工作空间视图内图层的图像。分为两种模式:数据视图模式(二维、三维场景)。
        • 文件菜单: 文件菜单提供地图的新建、打开、保存、关闭功能等功能;Ribbon功能区用于操作数据视图。
    • mapgis_gdbmanager_plugin: 基础插件。所有对数据库文件的操作(如,创建简单要素类)都将依赖于此插件。该插件提供组织和管理各类地理信息的目录窗口、图形展示窗口。

      • 数据管理插件可以组织和管理的信息类型包括:
        • 地理数据库
        • 要素数据集
        • 矢量数据
        • 栅格数据
      • 包含的主要控件:
        • Catalog目录窗口: 以树视图组织各类数据,树节点的右键菜单提供各种编辑、管理功能。
        • 数据属性信息窗口: 显示单个数据的详细信息。
    • mapgis_dataconvert_plugin: 基础数据转换插件实现了矢量和栅格数据升级、数据迁移、数据交换等强大的数据操作功能。

      • 插件特色:
        • 支持不同MapGIS数据源之间的数据迁移,包括MapGISLocalArcGIS常用格式的数据迁移、复制和转换。
        • 兼容MapGIS 67数据,提供MapGIS 67数据的升级,以及K10数据转换为67数据。(Windows)
        • 提供数据转换时的错误检查和自动改错功能,自动消除不符合规范的命名错误;可记录详细转换日志,并提供出错提示。
        • 此外,提供统改数据名称、目的数据类型、目的数据目录的功能,极大的方便了用户操作。
      • 包含主要控件:
        • Catalog目录树的空间数据节点右键菜单,提供各种数据的导入、导出功能。
        • 要素数据集以及各要素类节点右键菜单,提供导入、导出功能。
        • 栅格数据集和栅格目录节点右键菜单,提供栅格数据的导入、导出功能。
    • mapgis_mapeditor_plugin: 地图编辑插件适用于制作精美地图,无专业分析需求的用户。它包含了部分编辑矢量数据的功能或工具。

      • 插件特色:
        • 对地图中的地理实体对象进行增加、删除、移位等;
        • 属性查询、条件查询;
        • 地图投影变换,不同坐标参照的空间数据的处理;
      • 包含的主要控件:
        • 点/线/区菜单及工具条:点/线/区要素的编辑功能都集中在这三个菜单中。例如,添加、移动、删除、修改等;
        • 通用编辑菜单及工具条:除了集成部分编辑功能外,还包含叠加分析、缓冲区分析、裁剪、查询等功能;
    • mapgis_rastereditor_plugin: 栅格编辑插件涵盖了栅格信息查询、栅格显示、栅格预处理、栅格分析的基础功能,适用于无专业遥感分析需求的用户。

  3. bin: 作为依赖包的存放目录及各模块的输出目录,组织各功能模块及其依赖的组织结构。

    • 根目录: 代码仓库本身包含MapGIS Objects Java的最新版本包,同时也是核心模块的打包输出目录,并包含可执行启动脚本。
    • libs: 包含各模块中对开源库的直接依赖和间接依赖的拷贝。
    • plugin: 插件模块的打包输出目录。

TODO:

  • 简介
  • 工程目录
  • 地址
  • 开始
  • 模块
  • 启动
  • 架构
  • 性能
  • 环境服务器
  • 文档
  • 帮助
  • 协议
  • 贡献
Java
1
https://gitee.com/heyjobs/MapGIS-Desktop-Java.git
git@gitee.com:heyjobs/MapGIS-Desktop-Java.git
heyjobs
MapGIS-Desktop-Java
MapGIS-Desktop-Java
master

搜索帮助