根據(jù)傳入的GLTF字符串構(gòu)建Scene對象。

語法

scene ST_SceneFromGltf(cstring gltf,
                       integer srid default 0,
                       integer lod default 0);
scene ST_SceneFromGltf(cstring gltf,
                       integer srid,
                       integer lod,
                       float8[] affine);

參數(shù)

參數(shù)名稱描述
gltf基于字符串表示的gltf。
srid空間參考ID,默認(rèn)值為0。
lodLOD層級,默認(rèn)值為0。
affine仿射變換數(shù)組,參數(shù)數(shù)量必須是12或16。如果是16個參數(shù),最后4個參數(shù)會被忽略。

描述

根據(jù)傳入的GLTF字符串構(gòu)建Scene對象。

對于仿射變換矩陣Affine:
/ p[1]   p[2]   p[3]    p[4] \
| p[5]   p[6]   p[7]    p[8]  |
\ p[9]   p[10]  p[11]   p[12] /
每一個坐標(biāo)點執(zhí)行以下變換操作:
x' = p[1]*x + p[2]*y + p[3]*z + p[4]
y' = p[5]*x + p[6]*y + p[7]*z + p[8]
z' = p[9]*x + p[10]*y + p[11]*z + p[12]

示例

  • 示例一:
    SELECT ST_AsText(ST_sceneFromGLTF('{"accessors": ... }'));
    --------------
    {"type" : "gltf", "content" : {"accessors":...}}
  • 示例二:
    SELECT ST_AsText(ST_sceneFromGLTF('{"accessors": ... }', 4326));
    --------------
    {"type" : "gltf", "srid" : 4326, "content" : {"accessors":...}}
  • 示例三:
    SELECT ST_AsText(ST_sceneFromGLTF('{"accessors": ... }', 4326, 1));
    --------------
     {"type" : "gltf", "srid" : 4326, "lod" : 1, "content" : {"accessors":...}}
  • 示例四:
    SELECT ST_AsText(ST_sceneFromGLTF('{"accessors": ... }', 4326, 1,ARRAY[0.5, 0, 0, 1, 0, 0.5, 0, 1, 0, 0, 0.5, 1]::float8[]));
    --------------
     {"type" : "gltf", "srid" : 4326, "lod" : 1, "affine" : [0.5,0,0,1,0,0.5,0,1,0,0,0.5,1,0,0,0,1], "content" : {"accessors":...}}