快速入门

最后更新时间:2020年12月25日

MapGIS Objects Java快速入门

下面将演示通过IntelliJ IDEA创建项目,显示二维地图,以助您快速了解MapGIS Objects Java二次开发。具体实现步骤为:

1.创建项目

打开IntelliJ IDEA软件,创建项目,命名为“MyFirstMap”;

新建项目界面图

2.导入开发库

MapGIS Objects SDK提供了二次开发库,展现形式是多个jar包文件(存储目录:...\MapGIS 10\Program)。

(1)在项目中创建一个新的文件夹,然后将jar包及其依赖包拷贝到此文件夹中。

拷贝开发库

(2)开发库导入:点击菜单栏中“File”下的“Project Sturcture”打开项目管理对话框。

项目管理

(3)在对话框中,首先,选择左侧的“Modules”,即为当前MyFirstMap模块修改信息;随后选择“Dependencies”依赖项;然后点击右侧的加号按钮,选择导入jar文件项“JARs or directories”;

添加jar依赖
(4)在弹出的文件选择框中,选择此前创建的Libs文件夹,点击“OK”即可将此文件夹中的jar都导入到程序中。
选择开发库路径
(5)导入完成后,项目结构对话框中如下图所示,点击“OK”;
模块依赖
(6)至此,即可将开发库引入此项目,会发现在项目文件结构列表中的“External Libraries”项中具有导入的开发库, 开发库即导入成功,可在Java文件中编写MapGIS提供的接口代码。
开发库导入完成

2.代码方式创建地图显示控件。

(1)在此不使用fxml布局中的界面,通过代码进行布局的创建。 在“Main.java”文件中,首先定义地图显示控件MapControl并在start方法中进行实例化:

//定义地图控件
private MapControl mapControl;
//实例化地图控件mapcontrol
mapControl = new MapControl();

(2)然后创建Pane对象,并将MapControl对象添加到其中:

Pane pane = new Pane();
//将地图控件添加到pane中
pane.getChildren().add(mapControl);

(3)对原有提供的默认代码进行修改,创建Scene并将前一步创建的Pane赋予给它,并可对窗口的大小进行设置: //创建场景Scene:可理解为窗口内容

Scene scene = new Scene(pane, 700, 600);

//设置窗口标题
primaryStage.setTitle("Hello World");
//设置窗口内容
primaryStage.setScene(scene);
//展示窗口
primaryStage.show();
pane.getChildren().add(mapControl);

(4)自此,完成地图控件及界面布局的创建。

3.地图显示代码实现

(1)编写地图显示的代码,在此介绍地图文档(.mapx)的显示方法,编写如下代码:

public void showMap() {
    //创建地图文档对象
    Document document = new Document();
    //打开地图文档
    int open = document.open("E:/....../WuHan.mapx");
    if (open > 0) {
        System.out.println("地图文档打开成功!");
        //获取地图
        Map map = document.getMaps().getMap(0);
        if (map != null) {
            //将地图map赋予给地图控件mapcontrol
            mapControl.setMap(map);
            //复位地图
            mapControl.restoreWnd();
        } else {
            System.out.println("当前地图文档中无地图数据!");
        }
    } else {
        System.out.println("地图文档打开失败!");
    }
}

(2)然后在start方法进行调用:

地图显示代码

4 程序运行

代码编写完成,就可点击菜单栏中“Run”项下的“Run ’Main’”,或者点击工具栏中的运行按钮,即可运行程序查看地图显示效果,如下图所示:

地图显示