Giter Site home page Giter Site logo

s3m-spec's Introduction

S3M (Spatial 3D Model)是一种开放式、可扩展的空间三维数据格式,旨为海量多源异构三维地理空间数据在不同终端之间的传输、交换与共享提供数据格式的具体规范。

主要技术特点

S3M的主要技术特点可以概括为:

  1. 支持表达多源地理空间数据:倾斜摄影三维模型、BIM、建筑白模、城市精细模型、激光点云、矢量、地下管线等多源数据。

  2. 具备海量数据高效绘制的能力:支持LOD、批次绘制、实例化等技术,可以提升渲染性能。

  3. 具备单体化选择和查询能力:支持高效选择、支持批量修改对象颜色、批量修改对象可见性。

  4. 全面支持PBR(Physically-based rendering,基于物理的渲染)材质:支持利用更符合物理学规律的方式来渲染出更真实的对象和场景。

  5. 支持纹理压缩和几何压缩技术:支持WebP、CRN、KTX2.0等纹理压缩格式以及几何压缩技术,可大幅降低数据量,实现不同终端使用同一套数据。

  6. 支持骨骼动画,可用于表达人、物运动效果。

  7. 简洁易读:格式简洁,易解析,适用于WebGL等轻量级客户端。

  8. 高效传输:数据紧凑,以二进制形式保存,占用空间小,传输性能高。

  9. 快速载入显卡:数据结构尽可能跟OpenGL接口保持一致,减少加载时间,高性能,低消耗。

  10. 跨终端:独立于任何终端,适用于PC端、Web端、移动端、游戏引擎等,具有较好的兼容性。

  11. 可扩展性:支持扩展,允许增加一些多用途扩展或特定厂商的扩展。

  12. 完善的工具支撑:提供S3M数据解析和转换工具,支持3D-Tiles、OSGB等格式与S3M格式相互转换。

  13. 完善的配套设施:完整的解决方案,成熟的可行性,强大的实用性。基于S3M形成了完整的B/S及C/S架构的三维GIS应用解决方案,从数据生成、服务器端发布到多种客户端加载应用等多个环节解决用户实际问题。

对接软件

目前,S3M标准格式已在国内外多类软件平台得到应用,主要内容见下方。

数据生产

厂商 产品 产品定位 能力
Bentley Context Capture 实景建模软件 支持生产符合S3M标准的倾斜摄影三维模型数据
大疆 大疆智图DJI Terra 三维重建软件 支持生产符合S3M标准的倾斜摄影三维模型数据
东方道迩 pixe3DBuilder Engine(P3BJet) 跨平台三维重建核心引擎 支持生产符合S3M标准的倾斜摄影三维模型数据
大势智慧 重建大师(GET3D) 超大规模实景三维集群建模软件 支持生产符合S3M标准的倾斜摄影三维模型数据
瞰景科技 Smart3D 实景三维建模系统 支持生产符合S3M标准的倾斜摄影三维模型数据
天际航 DP-Modeler 图像快速建模系统 支持生产符合S3M标准的倾斜摄影三维模型数据

数据应用

厂商 产品 产品定位 能力
华为 沃土数字平台 构建数字世界的底座 将S3M作为其3D GIS标准服务,对项目合作伙伴免费开放
阿里 DataV 数据可视化平台 支持在平台中加载、可视化和应用S3M数据
京东 城市操作系统 智能城市大数据平台 支持在平台中加载、可视化和应用S3M数据
睿呈时代 RAY-BDV 大数据可视化平台 支持加载、可视化和应用S3M数据
光辉城市 DIVA 数字孪生系统构建平台 支持在平台中加载、可视化和应用S3M数据
飞渡科技 iFreedo 数字底板“中枢” 支持加载、可视化和应用S3M数据
华为 HMS Core 3D Engine 实时3D引擎 通过SuperMap Hi-Fi 3D SDKs支持加载、可视化和应用S3M数据
Epic Game UE4 游戏引擎 通过SuperMap Hi-Fi 3D SDKs支持加载、可视化和应用S3M数据
Epic Game UE5 游戏引擎 通过SuperMap Hi-Fi 3D SDKs支持加载、可视化和应用S3M数据
Unity Unity 实时3D互动内容创作和运营平台 通过SuperMap Hi-Fi 3D SDKs支持加载、可视化和应用S3M数据
维图斯 Ventuz 三维实时图文内容创作软件 支持加载、可视化和应用S3M数据
中设数字 马良XCUBE BIM数智设计软件 支持加载、可视化和应用S3M数据
天房云科技 天房云平台 BIM+GIS应用平台 支持加载、可视化和应用S3M数据
产品 产品定位 能力
SuperMap iDesktop/SuperMap iDesktopX 二三维一体化桌面 GIS 软件平台 支持将倾斜摄影三维模型、点云、BIM、城市精细模型、建筑白模、矢量数据、地下管线等多源异构数据生成为S3M数据,还支持S3M数据处理功能
SuperMap iExplorer3D 三维场景浏览软件 支持加载、可视化和应用S3M数据
SuperMap iObjects 大型全组件式GIS软件开发平台 支持通过API将倾斜摄影三维模型、点云、BIM、城市精细模型、建筑白模、矢量数据、地下管线等多源异构数据生成为S3M数据,还支持S3M数据处理功能
SuperMap iServer 服务器GIS软件平台 支持将S3M数据发布为三维服务,供多终端使用
SuperMap Hi-Fi 3D SDKs 高保真三维GIS开发平台 支持加载、可视化和应用S3M数据
SuperMap iClient3D for WebGL/WebGPU/Cesium 三维GIS网络客户端开发平台 支持加载、可视化和应用S3M数据
SuperMap iMobile for iOS/Android 移动GIS开发平台 支持加载、可视化和应用S3M数据

其他

深圳可视化城市空间数字平台将S3M作为其GIS标准服务,对深圳市各行政事业单位免费开放。

并且光启元RayData专业版、吉嘉时空的Gaea Explorer、洛阳众智WiseMap、深圳嘉瑞建设BIM项目应用系统等国内外多个倾斜摄影建模软件、BIM软件及前端的三维渲染引擎正在开展对接工作。

开放资源

  • ConvertTool:转换工具,用于实现S3M数据与3D Tiles的相互转换,以及与OSGB、OBJ的转换。

  • S3M_SDK:读写及解析工具,包括S3M数据的C++读写开发包和JavaScript解析源码以及相关范例。

  • Specification:提供中文、英文两种语言表述的T/CAGIS 1-2019标准文本,以及S3M数据格式规范

许可

数据格式标准规范遵循Creative Commons Attribution-NoDerivatives 4.0 International协议。

S3M_SDK、ConvertTool以及相关数据示例遵循Apache License V2.0协议

s3m-spec's People

Contributors

fuzhenn avatar heqianhq avatar liqiujun avatar pasu avatar refineiks25 avatar supermap123 avatar supermapliukaiyun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

s3m-spec's Issues

使用WebGL2后显示效果异常

image
image

开启WebGL2:

let viewer = new Cesium.Viewer('cesiumContainer', {
  contextOptions: {
    requestWebgl2: true
  }
});

感觉是DDS纹理和mipmap采样时的问题,得空的时候麻烦查一下吧,谢谢!
(Cesium1.92~1.95均可复现该问题)

opaque和transparent下blending都为alphaBlending的疑问

renderEntity中,无论对于opaque还是transparent pass,blending均为 alphaBlending,这个blending默认值是有什么目的吗?

function getOpaqueRenderState() {
    return Cesium.RenderState.fromCache({
        cull : {
            enabled : false
        },
        depthTest : {
            enabled : true,
            func : Cesium.DepthFunction.LESS_OR_EQUAL
        },
        blending : Cesium.BlendingState.ALPHA_BLEND
    });
}

function getTransparentRenderState() {
    return Cesium.RenderState.fromCache({
        cull : {
            enabled : true
        },
        depthTest : {
            enabled : true,
            func : Cesium.DepthFunction.LESS_OR_EQUAL
        },
        blending : Cesium.BlendingState.ALPHA_BLEND
    });
}

对比3DTiles中

function getTranslucentRenderState(renderState) {
  var rs = clone(renderState, true);
  rs.cull.enabled = false;
  rs.depthTest.enabled = true;
  rs.depthMask = false;
  rs.blending = BlendingState.ALPHA_BLEND;
  rs.stencilTest = StencilConstants.setCesium3DTileBit();
  rs.stencilMask = StencilConstants.CESIUM_3D_TILE_MASK;

  return RenderState.fromCache(rs);
}

function getOpaqueRenderState(renderState) {
  var rs = clone(renderState, true);
  rs.stencilTest = StencilConstants.setCesium3DTileBit();
  rs.stencilMask = StencilConstants.CESIUM_3D_TILE_MASK;

  return RenderState.fromCache(rs);
}

s3mTileLayer设置颜色不起作用

测试style3D不起效果,是什么问题
s3mTilesLayers[0].style3D.fillForeColor = new Cesium.Color(1,0,0,1);
15:07:03.879 Color {red: 1, green: 0, blue: 0, alpha: 1}

image

linker error

使用cesium 1.68以上时出现shader linker error

空间数据格式中的instanceinfo 实例化信息

空间数据格式中的instanceinfo 实例化信息是什么用处呢,以及怎么生成数据呢
根据文档中给出的格式,结合s3m_js代码,结构体格式并没有对上,可以给解释一下吗

用工具s3mb转b3dm出现卡死

2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 16, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 15, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 16, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 15, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4824, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] Failed to open s3mb file, ThreadID: 4824, Timespan(ms): 0, ResourceID: -100, SourceCode: ......\Src\FileParserS3MB\UGFileParserS3MBTile.cpp(32)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 14796, Timespan(ms): 16, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 4064, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 8812, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 13676, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 16248, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 16020, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 15532, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)
2022-04-25 12:50:26 [error] No enough disk space for caches, ThreadID: 16152, Timespan(ms): 0, ResourceID: EAa001, SourceCode: ......\Src\Toolkit\UGCompress.cpp(144)

加载s3mb模型效果不佳

一、步骤
1、3dmax导出fbx格式的三维模型
2、超图桌面版10i导入fbx模型
8

3、超图桌面版10i进行转换成S3MB格式
如果顶点优化方式选择不压缩,大小是正常的
6
9

如果顶点优化方式选择压缩,大小是不正常的
10

4、通过CBD.html示例程序进行修改后加载,模型可以加载出来
5、通过IIS发布,查看加载效果

二、问题
1、不知道我的操作步骤能否改进
2、加载的效果质量不佳,模型和纹理都有问题,如何解决
3、想知道示例数据中的CBD是怎么转出来的,我也想通过这种转换方式试试
下面是两种效果对比
超图桌面版10i加载效果
3
4

CBD.html加载效果
1
2

三、测试数据和Cesium包
fbx格式数据
链接:https://pan.baidu.com/s/1xhPdTklAfFYw2boH61eITA
提取码:1111

转完s3mb格式数据
链接:https://pan.baidu.com/s/1NZfq5AB45b-zP-3VdIqZmw
提取码:1111

build包
链接:https://pan.baidu.com/s/1glgxLoEVIpctSSlzBqQSYA
提取码:1111

Cesium版本
5

修改后CBD.html

`

<title>CBD</title> <script src="../Build/Cesium/Cesium.js"></script> <script src="./js/require.min.js"></script> <style> html, body, #cesiumContainer { width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden; } </style>
<script> let viewer = new Cesium.Viewer('cesiumContainer', { }); let scene = viewer.scene; require(['./js/S3MTiles/S3MTilesLayer'], function (S3MTilesLayer) { let layer = new S3MTilesLayer({ context: scene._context, url: './data/L1/L1.scp' // url: './data/CBD/cbd.scp' });
  scene.primitives.add(layer);

  layer.readyPromise.then(function () {
    var boundingSphere = Cesium.BoundingSphere.fromRectangle2D(layer.rectangle);
    boundingSphere.center = layer.position;

    scene.camera.viewBoundingSphere(boundingSphere, new Cesium.HeadingPitchRange(0.0, -0.5, boundingSphere.radius));
    scene.camera.lookAtTransform(Cesium.Matrix4.IDENTITY);
  }).otherwise(function (error) {
    console.log(error);
  });

  // layer.readyPromise.then(function () {
  //   scene.camera.setView({
  //     destination: new Cesium.Cartesian3(-2181968.890329965, 4385313.17843029, 4072712.8241634783),
  //     orientation: {
  //       heading: 3.1756648661534443,
  //       pitch: -0.3715184468182904
  //     }
  //   });
  // }).otherwise(function (error) {
  //   console.log(error);
  // });
})
</script> `

可以直接运行的完整包,test3.html是入口
链接:https://pan.baidu.com/s/1VEl1WEII3ADZJJjyvQx6sg
提取码:1111

属性文件s3md如何解析?

你好 我根据s3m文档读取一个s3md文件,成功读取到zip压缩包数据大小为1427 bytes,把后半部分的二进制数据读取后,写入到'E:\test.zip'文件中,发现并不能打开zip文件,请问如何正确获取属性数据并以json明文的形式查看?

转换工具问题

转换工具中的S3M->3Dtiles功能转换后文件出现纹理丢失,多个测试文件都出现这个情况,请问能提供测试文件测试一下是不是我这边的文件出问题了吗?

发现内存泄漏的问题

SDK2019的例子:ImgToolkit::GetTextureData(texturePath)这个获取材质数据的时候会出现内存泄漏的问题。

转换工具无法正常运行,找不到SuElement

报错:由于找不到SuElement.dll,无法继续执行代码。重新安装程序可能会解决此问题
转换工具就是路径s3m-spec-master\ConversionTool\SuperMap_Data_Convert\SuperMap_Data_Convert的工具,排除了文件下载不完整的可能性,git上确实没有该文件

转换工具的问题

转换工具怎么所有带转换文件都需要scp文件?例如dae也是让选择scp文件,osgb也是让选择scp文件?

请问s3mb中的顶点坐标是不是应该ENU坐标系下的坐标

常见的倾斜摄影osgb数据,有一个metadata.xml以及Data目录,请问倾斜osgb转s3mb过程中,是不是把metadata.xml中的中的xyz偏移量转换到WGS84下,作为scp文件中:
"position" : {
"units" : "Degree",
"x" :
"y" :
"z" :
},
这部分的值,然后每个tile目录中的数据,以这个position为原点建立ENU坐标系,然后osgb中的数据都转到这个ENU坐标系下?

加载倾斜摄影数据出错

在S3ModelParser.js的S3ModelParser.parseBuffer获取到nOptions为0。
在parsePickInfo函数不满足if((nOptions & 1) === 1)条件,直接跳出处理。最终导致pickInfo为空而没加载到数据。

image

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.