すべてのプロダクト
Search
ドキュメントセンター

PolarDB:ST_Simplify

最終更新日:Jul 02, 2024

このトピックでは、ST_Simplify関数について説明します。 この関数は3Dモデルを単純化します。

構文

シーンST_Simplify (シーンsc、cstringルール);

パラメーター

パラメーター説明
scシーンオブジェクト。
ルール3Dモデルを単純化するために使用されるルール。

説明

この関数は、指定したルールに基づいて3Dモデルを簡素化します。 ルールはJSON形式です。
{
  "mothed": "percent"/"error" 、デフォルトは "percent" 、
  "threshold": デフォルトは0.5、
  "blacklist" : ["wall" 、"glass"] 、
  "boundary": デフォルトはtrueです。境界を単純化し、
  "mesh":[
    {"names": ["m0","m1"] 、"threshold": 0.5} 、
    {"names": ["m2","m3"], "threshold": 0.001}
  ]
}
次の表に、JSON値のフィールドを示します。
フィールド説明
mothed単純化を制御するために使用される方法。 有効な値:
  • percent: 三角形サーフェスの割合。 有効な値: (0, 1)
  • error: 結果の幾何学的エラー。 有効値 :( 0, + inf) 。
説明 % は、元のモデルの三角形サーフェスの数に対する簡略化後の三角形サーフェスの数の割合を示します。 値が小さいほど、モデルが単純化されていることを示します。 errorは、新しい頂点から元の頂点までの距離を示します。 値が大きいほど、モデルがより単純化されていることを示します。
しきい値単純化のしきい値。 有効な値の詳細については、mothedパラメーターの説明をご参照ください。
ブラックリスト簡略化のブラックリスト。 モデル内のメッシュオブジェクトは名前でフィルタリングされます。 ブラックリストにあるメッシュオブジェクトは単純化されません。
境界境界を単純化するかどうかを指定します。 デフォルト値:true
説明 境界が単純化される場合、モデルは崩壊または破壊され得る。
meshes.name sモデル内のメッシュオブジェクトを名前でグループ化し、グループごとに単純化できます。 グループごとに異なるしきい値を指定できます。
meshes.thresholdグループの簡略化しきい値。
説明 モデル内のオブジェクトを名前でグループ化し、オブジェクトをグループごとに単純化できます。 たとえば、高精度モデルが簡略化される割合を増やし、低精度モデルが簡略化される割合を減らすことができます。
モデルの単純化は、モデルの表示結果を緩和しないが、モデルによって占有されるストレージを大幅に削減することができる。 次のセクションでは、例を示します。
  • 簡略化の割合: 100%
    • 占有ストレージ: 96 MB
    • 結果 100% simplification
  • 簡略化の割合: 幾何学的簡略化と25% 画像簡略化の5%
    • 占有ストレージ: 2.9 MB
    • 結果 5%+25%

SELECT ST_Simplify (データ、
                    '{
                        "threshold": 0.1、
                        "mothed": "パーセント" 、
                        "blacklist":["Mesh.012", "Mesh.009", "Mesh.005"] 、
                        "mesh": [
                            {"names":["Mesh.007"] 、"threshold": 0.01} 、
                            {"names":["Mesh.004"], "threshold": 0.3}
                        t; から]}')
---------------------------
0x .....