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加载结果瓦片


相关推荐
prince0519 小时前
用户积分系统怎么设计
java·大数据·数据库
967721 小时前
理解IOC控制反转和spring容器,@Autowired的参数的作用
java·sql·spring
SY_FC21 小时前
实现一个父组件引入了子组件,跳转到其他页面,其他页面返回回来重新加载子组件函数
java·前端·javascript
啵啵鱼爱吃小猫咪21 小时前
机械臂阻抗控制github项目-mujoco仿真
开发语言·人工智能·python·机器人
似水明俊德21 小时前
02-C#
开发语言·c#
耀耀_很无聊21 小时前
09_Jenkins安装JDK环境
java·运维·jenkins
ノBye~21 小时前
Centos7.6 Docker安装redis(带密码 + 持久化)
java·redis·docker
黑臂麒麟21 小时前
openYuanrong:多语言运行时独立部署以库集成简化 Serverless 架构 & 拓扑感知调度:提升函数运行时性能
java·架构·serverless·openyuanrong
oem11021 小时前
C++中的享元模式实战
开发语言·c++·算法
XiaoLeisj1 天前
Android Jetpack 页面架构实战:从 LiveData、ViewModel 到 DataBinding 的生命周期管理与数据绑定
android·java·架构·android jetpack·livedata·viewmodel·databinding