ST_AsGlb

将sfmesh类型转为Glb格式(Gltf的二进制格式)。

语法

bytea ST_AsGlb(sfmesh sfmeshObject);

参数

参数名称

描述

sfmeshObject

sfmesh对象。

options

基于JSON表示的glTF导出选项,参数项如下:

  • draco_compress:是否使用draco压缩,默认为false。

  • with_geometry:是否包含子meshgeom对象,默认为true。

  • with_submesh:是否包含子sfmesh对象,默认为true。

  • enable_tile_option:是否使用瓦片选项,对于子对象需要使用ST_SetTileOption进行设置,默认为false。

描述

将sfmesh类型转为Gltf 2.0的二进制格式,如果失败则返回NULL。

示例

select ST_AsGlb(ST_MeshFromText('{"version" : 1, "root" : 0, "meshgeoms" : ["MESHGEOM(PATCH(INDEXSURFACE Z (VERTEX(0 0 2,0 10 3,10 10 1,10 0 1),INDEX((0,1,2),(1,2,3)))))"], "primitives" : [{"meshgeom" : 0}], "nodes" : [{"primitive" : 0}]}'));

------------------------------------------------------------------------------
\x676c54460200000028040000a40300004a534f4e7b226163636573736f7273223a5 ......

-- draco 压缩
select ST_Asglb(ST_MeshFromText('{"version" : 1, "root" : 0, "meshgeoms" : ["MESHGEOM(PATCH(INDEXSURFACE Z (VERTEX(0 0 2,0 10 3,10 10 1,10 0 1),INDEX((0,1,2),(1,2,3)))))"], "primitives" : [{"meshgeom" : 0}], "nodes" : [{"primitive" : 0}]}'),'{"draco_compress":true, "with_geometry":true}');

---------------------------------
\x676c544602000000840300000c0300004a534f4e7b226173736574223a7b2276657273696f6e223a22322e3 ...