PostGIS  2.5.7dev-r@@SVN_REVISION@@

◆ gml_is_srid_planar()

static int gml_is_srid_planar ( int  srid)
static

Return 1 if given srid is planar (0 otherwise, i.e geocentric srid) Return -1 if srid is not in spatial_ref_sys.

Definition at line 336 of file lwgeom_in_gml.c.

337 {
338  char *result;
339  char query[256];
340  int is_planar, err;
341 
342  if (SPI_OK_CONNECT != SPI_connect ())
343  lwpgerror("gml_is_srid_planar: could not connect to SPI manager");
344 
345  /* A way to find if this projection is planar or geocentric */
346  sprintf(query, "SELECT position('+units=m ' in proj4text) \
347  FROM spatial_ref_sys WHERE srid='%d'", srid);
348 
349  err = SPI_exec(query, 1);
350  if (err < 0) lwpgerror("gml_is_srid_planar: error executing query %d", err);
351 
352  /* No entry in spatial_ref_sys */
353  if (SPI_processed <= 0)
354  {
355  SPI_finish();
356  return -1;
357  }
358 
359  result = SPI_getvalue(SPI_tuptable->vals[0], SPI_tuptable->tupdesc, 1);
360  is_planar = atoi(result);
361  SPI_finish();
362 
363  return is_planar;
364 }

Referenced by parse_gml_srs().

Here is the caller graph for this function: