PostGIS  2.5.0dev-r@@SVN_REVISION@@
void circ_tree_print ( const CIRC_NODE node,
int  depth 
)

Definition at line 792 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().

793 {
794  uint32_t i;
795 
796  if (circ_node_is_leaf(node))
797  {
798  printf("%*s[%d] C(%.5g %.5g) R(%.5g) ((%.5g %.5g),(%.5g,%.5g))",
799  3*depth + 6, "NODE", node->edge_num,
800  node->center.lon, node->center.lat,
801  node->radius,
802  node->p1->x, node->p1->y,
803  node->p2->x, node->p2->y
804  );
805  if ( node->geom_type )
806  {
807  printf(" %s", lwtype_name(node->geom_type));
808  }
809  if ( node->geom_type == POLYGONTYPE )
810  {
811  printf(" O(%.5g %.5g)", node->pt_outside.x, node->pt_outside.y);
812  }
813  printf("\n");
814 
815  }
816  else
817  {
818  printf("%*s C(%.5g %.5g) R(%.5g)",
819  3*depth + 6, "NODE",
820  node->center.lon, node->center.lat,
821  node->radius
822  );
823  if ( node->geom_type )
824  {
825  printf(" %s", lwtype_name(node->geom_type));
826  }
827  if ( node->geom_type == POLYGONTYPE )
828  {
829  printf(" O(%.5g %.5g)", node->pt_outside.x, node->pt_outside.y);
830  }
831  printf("\n");
832  }
833  for ( i = 0; i < node->num_nodes; i++ )
834  {
835  circ_tree_print(node->nodes[i], depth + 1);
836  }
837  return;
838 }
GEOGRAPHIC_POINT center
uint32_t num_nodes
uint32_t geom_type
POINT2D * p2
#define POLYGONTYPE
Definition: liblwgeom.h:86
POINT2D * p1
unsigned int uint32_t
Definition: uthash.h:78
double x
Definition: liblwgeom.h:327
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:327
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: