PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ gserialized_spgist_choose_3d()

PGDLLEXPORT Datum gserialized_spgist_choose_3d ( PG_FUNCTION_ARGS  )

Definition at line 396 of file gserialized_spgist_3d.c.

397 {
398  spgChooseIn *in = (spgChooseIn *)PG_GETARG_POINTER(0);
399  spgChooseOut *out = (spgChooseOut *)PG_GETARG_POINTER(1);
400  BOX3D *centroid = DatumGetBox3DP(in->prefixDatum);
401  BOX3D *box = DatumGetBox3DP(in->leafDatum);
402 
403  out->resultType = spgMatchNode;
404  out->result.matchNode.restDatum = Box3DPGetDatum(box);
405 
406  /* nodeN will be set by core, when allTheSame. */
407  if (!in->allTheSame)
408  out->result.matchNode.nodeN = getOctant(centroid, box);
409 
410  PG_RETURN_VOID();
411 }
static uint8 getOctant(BOX3D *centroid, BOX3D *inBox)
Datum centroid(PG_FUNCTION_ARGS)

References centroid(), and getOctant().

Here is the call graph for this function: