名前

ST_Knots — NURBS 曲線のノットベクトル (knot vector) を返します。

概要

float8[] ST_Knots(geometry nurbscurve);

説明

NURBS 曲線のノットベクトル (knot vector) を倍精度浮動小数点数配列で返します。ノットベクトルはパラメーター空間を決め、制御点が曲線に影響を与える場所と強さを制御します。返り値は必ず (制御点数+次数+1) に等しい長さで、昇順になります。

曲線がデフォルトの開一様ノットベクトルを使う場合、または入力が NULL の場合にはNULL を返します。入力が NURBS 曲線でない場合にはエラーが発生します。

Availability: 3.7.0

この例では独自のノットベクトルを持つ NURBS 曲線からノットベクトルを返します。

コード
SELECT ST_Knots(ST_MakeNurbsCurve(
        2,
        'LINESTRING(0 0,5 10,10 0)'::geometry,
        ARRAY[1.0, 2.0, 1.0],
        ARRAY[0, 0, 0, 1, 1, 1]));
出力
{0,0,0,1,1,1}
Geometry figure for visual-st-knots-01

この例ではデフォルトのノットベクトルを使っている曲線のノットベクトルを調べます。

コード
SELECT ST_Knots('NURBSCURVE(2, (0 0, 5 10, 10 0))'::geometry);
出力
null
Geometry figure for visual-st-knots-02