Name

ST_NurbsCurveIsRational — NURBS曲線が有理である (重みをもつ)かを調べます。

Synopsis

boolean ST_NurbsCurveIsRational(geometry nurbscurve);

説明

NURBS曲線がその制御点に重みが割り当てられている場合にはTRUEを返します。一様の重みが使われている場合 (非有理Bスプラインの場合)にはFALSEを返します。

有理NURBS曲線は、曲線形状で可変の重み付けによって、より柔軟になります。非有理Bスプラインでは一様の重みを使うもので、NURBS曲線の特別な場合です。

入力がNURBS曲線でない場合にはエラーが発生します。入力がNULLの場合にはNULLを返します。

Availability: 3.7.0

この例では曲線が有理であるかどうかを調べます。

SELECT ST_NurbsCurveIsRational(ST_MakeNurbsCurve(
                2,
                'LINESTRING(0 0, 5 10, 10 0)'::geometry,
                ARRAY[1.0, 2.0, 1.0]));
t

この例では非有利な曲線を調べます。

SELECT ST_NurbsCurveIsRational('NURBSCURVE(2, (0 0, 5 10, 10 0))'::geometry);
f