@@ -318,11 +318,33 @@ SELECT spoly '{(10d,0d),(10d,1d),(15d,0d)}';
318318 {(10d , 0d),(10d , 1d),(15d , 0d)}
319319(1 row)
320320
321+ SELECT spoly_deg(ARRAY[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]);
322+ spoly_deg
323+ ---------------------------------
324+ {(1d , 2d),(3d , 4d),(5d , 6d)}
325+ (1 row)
326+
327+ SELECT spoly_deg(ARRAY[10.0, 0.0, 10.0, 1.0, 15.0, 0.0]);
328+ spoly_deg
329+ ------------------------------------
330+ {(10d , 0d),(10d , 1d),(15d , 0d)}
331+ (1 row)
332+
321333-- incorrect input -----
322334SELECT spoly '{(10d,0d),(10d,1d)}';
323335ERROR: spherepoly_in: more than two points needed
324336LINE 1: SELECT spoly '{(10d,0d),(10d,1d)}';
325337 ^
338+ SELECT spoly_deg(ARRAY[1.0, 2.0, 3.0, 4.0, 5.0]);
339+ ERROR: spherepoly_deg: invalid number of arguments (must be even and >= 6)
340+ SELECT spoly_deg(ARRAY[]::float8[]);
341+ ERROR: spherepoly_deg: invalid number of arguments (must be even and >= 6)
342+ SELECT spoly_deg(NULL::float8[]);
343+ spoly_deg
344+ -----------
345+
346+ (1 row)
347+
326348--- self-crossing input -----
327349SELECT spoly '{(0d,0d),(10d,10d),(0d,10d),(10d,0d)}';
328350ERROR: spherepoly_from_array: a line segment overlaps or polygon too large
0 commit comments