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


相关推荐
宸津-代码粉碎机7 小时前
OpenAI 连夜迎战 Grok Bot 和 Muse:AI 智能体从 “会聊天” 到 “能办事”,现在入场还来得及吗
java·大数据·人工智能·分布式·python
chenbingjie_c8 小时前
C++ 进阶核心知识点总结:模板、内存分区、new/delete、内存池
开发语言·c++
噢,我明白了8 小时前
java中唯一键和幂等键的应用
java·后端
程序猿乐锅8 小时前
【黑马点评 | 第八篇】Redisson分布式锁
java·数据库·spring boot·redis·分布式·spring·缓存
考虑考虑8 小时前
synchronized字符串常量
java·后端·java ee
长谷深风1119 小时前
Tool与Skill:AI能力设计的分水岭
java·人工智能·ai·大模型·aiagent
m0_587383009 小时前
广州24小时自助健身房解决方案实战指南与系统部署要点
java·spring·小程序·架构·需求分析
Escalating_xu9 小时前
【C 语言】深入理解指针(1·下):指针运算、野指针、assert 与传址实战
java·c语言·开发语言
实心儿儿9 小时前
Qt — Qt 事件
开发语言·qt
周杰偷奶茶9 小时前
【Java】数据类型与变量
java·开发语言