Graphviz 12.0.1~dev.20240716.0800
Loading...
Searching...
No Matches
sfdpinit.c File Reference
#include "config.h"
#include <float.h>
#include <limits.h>
#include <sfdpgen/sfdp.h>
#include <neatogen/neato.h>
#include <neatogen/adjust.h>
#include <pack/pack.h>
#include <assert.h>
#include <sfdpgen/spring_electrical.h>
#include <neatogen/overlap.h>
#include <sfdpgen/stress_model.h>
#include <cgraph/alloc.h>
#include <cgraph/cgraph.h>
#include <cgraph/gv_ctype.h>
#include <cgraph/strcasecmp.h>
#include <stdbool.h>
#include <stddef.h>
Include dependency graph for sfdpinit.c:

Go to the source code of this file.

Functions

static void sfdp_init_edge (edge_t *e)
 
static void sfdp_init_node_edge (graph_t *g)
 
static void sfdp_init_graph (Agraph_t *g)
 
static double * getPos (Agraph_t *g)
 
static void sfdpLayout (graph_t *g, spring_electrical_control ctrl, pointf pad)
 
static int late_smooth (graph_t *g, Agsym_t *sym, int dflt)
 
static int late_quadtree_scheme (graph_t *g, Agsym_t *sym, int dflt)
 
static void tuneControl (graph_t *g, spring_electrical_control ctrl)
 
void sfdp_layout (graph_t *g)
 
void sfdp_cleanup (graph_t *g)
 

Function Documentation

◆ getPos()

static double * getPos ( Agraph_t g)
static

Definition at line 64 of file sfdpinit.c.

References agfindnodeattr, agfstnode(), agnnodes(), agnxtnode(), gv_calloc(), hasPos, ND_id, ND_pos, Ndim, and NULL.

Referenced by sfdpLayout().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ late_quadtree_scheme()

static int late_quadtree_scheme ( graph_t g,
Agsym_t sym,
int  dflt 
)
static

Definition at line 166 of file sfdpinit.c.

References agxget(), gv_isalpha(), gv_isdigit(), QUAD_TREE_FAST, QUAD_TREE_NONE, and QUAD_TREE_NORMAL.

Referenced by tuneControl().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ late_smooth()

static int late_smooth ( graph_t g,
Agsym_t sym,
int  dflt 
)
static

Definition at line 120 of file sfdpinit.c.

References agxget(), gv_isalpha(), gv_isdigit(), SMOOTHING_NONE, SMOOTHING_RNG, SMOOTHING_SPRING, SMOOTHING_STRESS_MAJORIZATION_AVG_DIST, SMOOTHING_STRESS_MAJORIZATION_GRAPH_DIST, SMOOTHING_STRESS_MAJORIZATION_POWER_DIST, and SMOOTHING_TRIANGLE.

Referenced by tuneControl().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sfdp_cleanup()

void sfdp_cleanup ( graph_t g)

Definition at line 301 of file sfdpinit.c.

References agfstnode(), agfstout(), agnxtnode(), agnxtout(), gv_cleanup_edge(), and gv_cleanup_node().

Here is the call graph for this function:

◆ sfdp_init_edge()

static void sfdp_init_edge ( edge_t e)
static

Definition at line 30 of file sfdpinit.c.

References agbindrec(), and common_init_edge().

Referenced by sfdp_init_node_edge().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sfdp_init_graph()

static void sfdp_init_graph ( Agraph_t g)
static

Definition at line 50 of file sfdpinit.c.

References agfindgraphattr, agroot(), EDGETYPE_LINE, GD_ndim, GD_odim, late_int(), MAXDIM, MIN, Ndim, setEdgeType(), and sfdp_init_node_edge().

Referenced by sfdp_layout().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sfdp_init_node_edge()

static void sfdp_init_node_edge ( graph_t g)
static

Definition at line 36 of file sfdpinit.c.

References agfstnode(), agfstout(), agnxtnode(), agnxtout(), neato_init_node(), and sfdp_init_edge().

Referenced by sfdp_init_graph().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sfdp_layout()

◆ sfdpLayout()

static void sfdpLayout ( graph_t g,
spring_electrical_control  ctrl,
pointf  pad 
)
static

Definition at line 85 of file sfdpinit.c.

References A, agfstnode(), agnxtnode(), spring_electrical_control_struct::edge_labeling_scheme, free(), getPos(), getSizes(), makeMatrix(), multilevel_spring_electrical_embedding(), ND_id, ND_pos, Ndim, NULL, spring_electrical_control_struct::overlap, and SparseMatrix_delete().

Referenced by sfdp_layout().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tuneControl()

static void tuneControl ( graph_t g,
spring_electrical_control  ctrl 
)
static