Namn

ST_NurbsCurveIsRational — Kontrollerar om en NURBS-kurva är rationell (har vikter).

Synopsis

boolean ST_NurbsCurveIsRational(geometry nurbscurve);

Beskrivning

Returnerar TRUE om NURBS-kurvan har vikter tilldelade sina kontrollpunkter (rationell NURBS), FALSE om den använder likformiga vikter (icke-rationell B-spline).

Rationella NURBS-kurvor ger större flexibilitet vid styrning av kurvans form genom variabla vikter. Icke-rationella B-splines använder likformiga vikter och är ett specialfall av NURBS-kurvor.

Ger ett fel om indata inte är en NURBS-kurva. Returnerar NULL om indata är NULL.

Tillgänglig sedan: 3.7.0

Exempel

Det här exemplet kontrollerar om en kurva är rationell.

Kod
SELECT ST_NurbsCurveIsRational(ST_MakeNurbsCurve(
        2,
        'LINESTRING(0 0,5 10,10 0)'::geometry,
        ARRAY[1.0, 2.0, 1.0]));
Utdata
t
Figur
Geometry figure for visual-st-nurbscurveisrational-01

Det här exemplet kontrollerar en icke-rationell kurva.

Kod
SELECT ST_NurbsCurveIsRational('NURBSCURVE(2, (0 0, 5 10, 10 0))'::geometry);
Utdata
f
Figur
Geometry figure for visual-st-nurbscurveisrational-02