子场景(subScene)是场景(scene)的子级,一个子场景为一张全景图或视频,本文介绍如何创建子场景。
须知:
3D模型、全景图片类型场景:只可创建图片类型的子场景。
视频类型场景:只可创建视频类型的子场景。
混合类型场景:视频、图片类型的子场景都可创建。
创建子场景流程如下:
1、以下代码用于创建子场景(AddSubScene)接口调用。lyjClient的初始化见:初始化
// 场景ID
String sceneId = "sdjhuseiuiuew****";
// 子场景名称
String subSceneName = "sdjhuseiuiuew****";
AddSubSceneRequest request = new AddSubSceneRequest();
request.setSceneId(sceneId);
request.setName(subSceneName);
// sdk调用
AddSubSceneResponse addSubSceneResponse = lyjClient.addSubScene(request);
// 响应数据
AddSubSceneResponseBody response = addSubSceneResponse.getBody();
请求参数和响应数据字段说明详见新增子场景。
2、以下代码用于获取上传凭据。lyjClient的初始化见:初始化
//这里的子场景ID来源于上一步AddSunScene接口的调用
String subSceneId ="sdjkiuiduy****";
GetOssPolicyRequest request = new GetOssPolicyRequest();
request.setSubSceneId(subSceneId);
GetOssPolicyResponse response = lyjClient.getOssPolicy(request);
GetOssPolicyResponseBody response = response.getBody();
// 返回oss上传凭据
{
"accessId": "LTAI5t9k9*****",
"callback": null,
"dir": "pano_src/100070-****/images/",
"expire": 1640315464,
"host": "https://lyj-algo-cloud.oss-cn-hangzhou.aliyuncs.com",
"policy": "leHBpcmF0aW9uIjoiMjAyMS0xMi0****=",
"signature": null
}
请求参数和响应数据字段说明详见获取OSS授权。
3、oss上传采用上传凭据的形式直传,参考代码如下:
// post formData请求
const ossOptions = {
name: example.jpg
key: pano_src_temp/100070-test-***/images/example.jpg
policy: eyJleHBpcmF0aW9uIjoiMjAyMS0xMi0****=
OSSAccessKeyId: LTAI5t9k9*****
success_action_status: 200
signature: jWKqD535lRRxCRsQUNiq****=
file: (binary)
expire: 1640315464
}
请求的host 为上个接口返回的host
vue或react有上传组件,可直接使用。
4、以下代码用于关联子场景资源(LinkImage)接口调用。lyjClient的初始化见:初始化
//这里的子场景ID来源于AddSunScene接口的调用
String subSceneId ="sdjkiuiduy****";
// 上传文件名(后缀为mp4/jpg)
String fileName = "example.jpg"
// 若是图片可以传递一个相机高度,默认160
Integer cameraHeight = 160;
LinkImageRequest request = new LinkImageRequest();
request.setSubSceneId(subSceneId);
request.setFileName(fileName);
if(cameraHeight != null && cameraHeight > 0){
request.setCameraHeight(cameraHeight);
}
// sdk调用
LinkImageResponse linkImageResponse = lyjClient.linkImage(request);
// 响应数据
LinkImageResponseBody response = linkImageResponse.getBody();
请求参数和响应数据字段说明详见关联图片到子场景。
文档内容是否对您有帮助?