SuperMap iObjects Java地图生成栅格瓦片并保存到mongodb

文章目录


一、打开工作空间并获取地图

java 复制代码
		Workspace workspace = new Workspace();
        WorkspaceConnectionInfo workspaceConnectionInfo = new WorkspaceConnectionInfo();
        workspaceConnectionInfo.setType(WorkspaceType.SMWU);
        workspaceConnectionInfo.setServer("F:\\测试目录\\WorkSpace13.smwu");

        workspace.open(workspaceConnectionInfo);
        Map map  = new Map(workspace);
        map.open(workspace.getMaps().get(5));

二、初始化MapCacheBuilder并设置生成瓦片参数

java 复制代码
		//二维地图缓存生成类
        MapCacheBuilder builder = new MapCacheBuilder();
        //设置需要生成缓存的地图。
        builder.setMap(map);
        //设置生成地图缓存的路径
        builder.setOutputFolder("F:\\测试目录\\mapcache");
        //设置瓦片比例尺数组。
        builder.setOutputScales(new double[] { 1/147914677.727283,1/73957338.863641,1/36978669.431821,1/18489334.71591,1/9244667.357955,1/4622333.678978});
        //设置生成的地图瓦片配置文件的名称。
        builder.setCacheName("test");
        //设置图片压缩率
        builder.setMVTTileBuffer(78);
        //设置当前生成场景是否在多进程模式下。
        builder.setMultiProcessing(false);
        //设置地图瓦片图片的类型。
        builder.setTileFormat(TileFormat.PNG);
        //设置地图瓦片图片是否背景透明。
        builder.setTransparent(true);

三、设置mongo连接参数

java 复制代码
		//缓存连接管理类
        TileStorageConnection connection = new TileStorageConnection();
        connection.setServer("10.10.0.102:27017");
        connection.setStorageType(TileStorageType.MONGO);
        connection.setDatabase("map");
        connection.setUser("supermap");
        connection.setPassword("123456");
        connection.setName("aaabbbccc");
        //设置mongoDB或GPKG库连接信息。
        builder.setConnectionInfo(connection);
        //设置瓦片的存储格式。
        builder.setStorageType(StorageType.MongoDB);

四、生成瓦片

java 复制代码
		//根据参数生成矢量瓦片或风格
        boolean flag = builder.build();

五、SuperMap iDesktopX加载结果瓦片


相关推荐
飞浪纪元[FWC–FE]10 分钟前
从零到一键绿:Qt 5.14.2 + VS2019 开发环境搭建、Kit 套件配置与构建错误修复完全手册
开发语言·qt
Wang's Blog22 分钟前
Java 项目实战:交友项目 - 联系人列表
java·开发语言·交友
我命由我1234526 分钟前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
架构师伯子明28 分钟前
FFmpeg C++学习(一):编译和demo
开发语言·c++·学习
海域云SeaArea_31 分钟前
Windows Server 2008 R2 从零安装 IIS7.5(二):php.ini 配置
开发语言·windows·php
叼烟扛炮40 分钟前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain
xixingzhe241 分钟前
图表中同比与环比的区别:看趋势还是看变化?
开发语言·python
andyweike1 小时前
Swift
开发语言·ios·swift
纪念 2291 小时前
C++算法(六)
开发语言·c++·算法
香蕉大香蕉(06敬畏市场)1 小时前
MySQL 单点详解(01)
java·数据库·mysql·面试·博客·实习