PostGIS  2.4.9dev-r@@SVN_REVISION@@

◆ circ_tree_print()

void circ_tree_print ( const CIRC_NODE node,
int  depth 
)

Definition at line 819 of file lwgeodetic_tree.c.

References circ_node::center, circ_node_is_leaf(), circ_tree_print(), circ_node::edge_num, circ_node::geom_type, GEOGRAPHIC_POINT::lat, GEOGRAPHIC_POINT::lon, lwtype_name(), circ_node::nodes, circ_node::num_nodes, circ_node::p1, circ_node::p2, POLYGONTYPE, circ_node::pt_outside, circ_node::radius, POINT2D::x, and POINT2D::y.

Referenced by circ_tree_print().

820 {
821  int i;
822 
823  if (circ_node_is_leaf(node))
824  {
825  printf("%*s[%d] C(%.5g %.5g) R(%.5g) ((%.5g %.5g),(%.5g,%.5g))",
826  3*depth + 6, "NODE", node->edge_num,
827  node->center.lon, node->center.lat,
828  node->radius,
829  node->p1->x, node->p1->y,
830  node->p2->x, node->p2->y
831  );
832  if ( node->geom_type )
833  {
834  printf(" %s", lwtype_name(node->geom_type));
835  }
836  if ( node->geom_type == POLYGONTYPE )
837  {
838  printf(" O(%.5g %.5g)", node->pt_outside.x, node->pt_outside.y);
839  }
840  printf("\n");
841 
842  }
843  else
844  {
845  printf("%*s C(%.5g %.5g) R(%.5g)",
846  3*depth + 6, "NODE",
847  node->center.lon, node->center.lat,
848  node->radius
849  );
850  if ( node->geom_type )
851  {
852  printf(" %s", lwtype_name(node->geom_type));
853  }
854  if ( node->geom_type == POLYGONTYPE )
855  {
856  printf(" O(%.15g %.15g)", node->pt_outside.x, node->pt_outside.y);
857  }
858  printf("\n");
859  }
860  for ( i = 0; i < node->num_nodes; i++ )
861  {
862  circ_tree_print(node->nodes[i], depth + 1);
863  }
864  return;
865 }
GEOGRAPHIC_POINT center
POINT2D * p2
#define POLYGONTYPE
Definition: liblwgeom.h:87
POINT2D * p1
double x
Definition: liblwgeom.h:328
static int circ_node_is_leaf(const CIRC_NODE *node)
Internal nodes have their point references set to NULL.
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
Definition: lwutil.c:218
void circ_tree_print(const CIRC_NODE *node, int depth)
double y
Definition: liblwgeom.h:328
POINT2D pt_outside
double radius
struct circ_node ** nodes
Here is the call graph for this function:
Here is the caller graph for this function: