Loading

【GeoScene】四、GeoScene Pro处理并发布倾斜摄影(OSGB)

前言

看了网上好多教程,很多都不全,在自己操作的过程中遇到了很多问题,最后将我完整的流程整理出来,以供大家参考
从数据处理、优化、发布、加载完整流程都有

一、数据格式转换

1、全局搜索“创建集成网格场景图层内容“,打开该工具;

image

2、根据自己的数据选择

数据集:我这里选择的是osgb数据的Data目录
输出场景图层包:设置数据生成的路径
锚点类型:文件
锚点文件:选择OSGB数据的metadata.xml文件
坐标系:因为我的场景是全球场景,且项目要求2000坐标系,所以我这里选的是“China Geodetic Coordinate System 2000 “
最大纹理大小:不知道啥意思,随便设置的
纹理优化:默认

image

3、完成后点击运行,等待数据处理完成;

image

二、 加载测试

创建全球场景,在文件夹中找到刚才生成的slpk文件,将文件拖动到场景中,可以加载一个默认底图,这样可以更清楚一些;

image

三、优化SLPK

1、全局搜索“倾斜I3S顶级节点综合”(这个工具需要单独授权,可以通过售前联系易智瑞申请)

image

2、选择刚才生成的slpk,以及设置新的slpk位置,其它参数可以参考我的填写;

image

3、填写完成后点击运行,等待处理完成;合并前后渲染速度还是有的提升(也仅仅是有提升);这里截取部分内容展示吧,完整的不方便展示,第一张图等待很久了也没有继续加载,需要拖动场景后才能继续加载,处理后的数据就可以完整加载出来;

image
(合并前)
image
(合并后)

四、发布SLPK

这里有两种方式发布,当你的slpk不是很大的可以直接在线发布;

1、在线发布

登录GeoScene Enterprise,选择“个人中心” -> “我的内容” -> “添加项目” -> “您的设备”,选择处理的slpk文件;

image

选择“添加场景包并创建托管场景图层”,然后点击“下一步”

image

填写标题等信息后点击保存,等待上传发布完成;

image

上传发布完成后就可以预览查看了

image

2、对于数据量特别大的就不适用于前面的发布方式了,大概率会出问题,大数据量可以参考以下操作;

打开xftp,连接GeoScene Enterprise服务,我的GeoScene Enterprise安装在银河麒麟上面,所以需要用xftp连接,如果是Windows 直接远程windows就可以了,操作大差不差,将slpk文件手动上传至服务器 ,

image

使用xshell连接服务器,,切换geoscene用户使⽤unzip解压test.slpk⽂件,

[root@jyxx ~]# su geoscene
[geoscene@jyxx root]$ cd /home/geoscene/Data/
[geoscene@jyxx Data]$ unzip test.slpk -d ./test.eslpk
[geoscene@jyxx Data]$ chmod -R 755 test.eslpk/

image

创建⽂件夹类型的datastore
image
image
image
image
image

在server后端使⽤createservice创建服务
image
image
image

这⾥有3个参数要填写,
serviceName 服务名称
pathInCachedStore 解压test.slpk的⽂件夹名称
cacheStoreId 创建⽂件夹类型datastroe返回的id

{
	"serviceName": "qxsy_4490_eslpk",
	"type": "SceneServer",
	"description": "",
	"capabilities": "Scene,Data,Query",
	"provider": "ArcObjects11",
	"clusterName": "default",
	"minInstancesPerNode": 0,
	"maxInstancesPerNode": 0,
	"instancesPerContainer": 1,
	"maxWaitTime": 60,
	"maxStartupTime": 300,
	"maxldleTime": 1800,
	"maxUsageTime": 600,
	"loadBalancing": "ROUND_ROBIN",
	"isolationLevel": "HIGH",
	"configuredState": "STARTED",
	"recyclelnterval": 24,
	"recycleStartTime": "00:00",
	"keepAliveInterva": 1800,
	"private": false,
	"isDefault": false,
	"maxUploadFileSize": 0,
	"allowedUploadFileTypes": "",
	"properties": {
		"pathInCachedStore": "qxsy_4490.eslpk",
		"cacheStoreId": "21c1cd3b072e491c8ee1d20d8d655415",
		"byRefToExtractedCache": "true"
	},
	"extensions": [],
	"frameworkProperties": {},
	"datasets": []
}

进入geoscene service,设置共享权限

image

五、Js 加载发布的倾斜摄影服务

这里的依赖我用的是arcgis的,用和geoscene是差不多的

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" />
		<title>IntegratedMeshLayer - 4.26</title>

		<link rel="stylesheet" href="https://js.arcgis.com/4.26/esri/themes/light/main.css" />
		<script src="https://js.arcgis.com/4.26/"></script>

		<style>
			html,
			body,
			#viewDiv {
				padding: 0;
				margin: 0;
				height: 100%;
				width: 100%;
			}
		</style>

		<script>
			require(["esri/Map", "esri/views/SceneView", "esri/layers/IntegratedMeshLayer"], function (Map, SceneView, IntegratedMeshLayer) {
				var layer = new IntegratedMeshLayer({
					url: "https://jyxx.geoscene1.com/server/rest/services/qxsy_4490_eslpk/SceneServer",
				});

				var map = new Map({
					// basemap: "gray-vector",
					layers: [layer],
					// ground: "world-elevation",
				});

				var view = new SceneView({
					// viewingMode:'local',
					container: "viewDiv",
					map: map,
					qualityProfile: "low",
					viewingMode: "local"
					// spatialReference: {
					// 	wkid: 4490
					// }
				});

				view.when(function () {
					view.qualitySettings.memoryLimit = 4096;
		            view.qualitySettings.additionalCacheMemory = 150;
		            view.qualitySettings.maximumPixelRatio = 1;
					view.goTo(layer.fullExtent);
				});
			});
		</script>
	</head>

	<body>
		<div id="viewDiv"></div>
	</body>
</html>

image

posted @ 2024-04-02 15:50  路遥_13  阅读(543)  评论(0编辑  收藏  举报