Graphviz 13.0.0~dev.20241222.1117
|
#include "config.h"
#include <sys/types.h>
#include <math.h>
#include <stdlib.h>
#include <time.h>
#include <unistd.h>
#include <ctype.h>
#include <fdpgen/dbg.h>
#include <fdpgen/grid.h>
#include <neatogen/neato.h>
#include <fdpgen/tlayout.h>
#include <common/globals.h>
Go to the source code of this file.
Data Structures | |
struct | parms_t |
Macros | |
#define | FDP_PRIVATE 1 |
#define | srand48 srand |
#define | D_useGrid (fdp_parms->useGrid) |
#define | D_useNew (fdp_parms->useNew) |
#define | D_numIters (fdp_parms->numIters) |
#define | D_unscaled (fdp_parms->unscaled) |
#define | D_C (fdp_parms->C) |
#define | D_Tfact (fdp_parms->Tfact) |
#define | D_K (fdp_parms->K) |
#define | D_T0 (fdp_parms->T0) |
#define | T_useGrid (parms.useGrid) |
#define | T_useNew (parms.useNew) |
#define | T_seed (parms.seed) |
#define | T_numIters (parms.numIters) |
#define | T_maxIters (parms.maxIters) |
#define | T_unscaled (parms.unscaled) |
#define | T_C (parms.C) |
#define | T_Tfact (parms.Tfact) |
#define | T_K (parms.K) |
#define | T_T0 (parms.T0) |
#define | T_smode (parms.smode) |
#define | T_Cell (parms.Cell) |
#define | T_Wd (parms.Wd) |
#define | T_Ht (parms.Ht) |
#define | T_pass1 (parms.pass1) |
#define | T_loopcnt (parms.loopcnt) |
#define | EXPFACTOR 1.2 |
#define | DFLT_maxIters 600 |
#define | DFLT_K 0.3 |
#define | DFLT_Cell 0.0 |
#define | DFLT_seed 1 |
#define | DFLT_smode INIT_RANDOM |
#define | FLOOR(d) ((int)floor(d)) |
Functions | |
static double | cool (int t) |
static void | reset_params (void) |
static int | init_params (graph_t *g, xparams *xpms) |
void | fdp_initParams (graph_t *g) |
static void | doRep (node_t *p, node_t *q, double xdelta, double ydelta, double dist2) |
static void | applyRep (Agnode_t *p, Agnode_t *q) |
static void | doNeighbor (Grid *grid, int i, int j, node_list *nodes) |
static int | gridRepulse (cell *cellp, Grid *grid) |
static void | applyAttr (Agnode_t *p, Agnode_t *q, Agedge_t *e) |
static void | updatePos (Agraph_t *g, double temp, bport_t *pp) |
static void | gAdjust (Agraph_t *g, double temp, bport_t *pp, Grid *grid) |
static void | adjust (Agraph_t *g, double temp, bport_t *pp) |
static pointf | initPositions (graph_t *g, bport_t *pp) |
void | fdp_tLayout (graph_t *g, xparams *xpms) |
Variables | |
static parms_t | parms |
#define DFLT_smode INIT_RANDOM |
#define T_seed (parms.seed) |
|
static |
Definition at line 414 of file tlayout.c.
References agfstnode(), agfstout(), aghead, agnxtnode(), agnxtout(), applyAttr(), applyRep(), and updatePos().
|
static |
Definition at line 106 of file tlayout.c.
References T_maxIters, and T_T0.
Definition at line 242 of file tlayout.c.
References dist2(), doRep(), findGrid(), gLength(), grid, ND_pos, _node_list::next, _node_list::node, cell::nodes, T_Cell, and Verbose.
Referenced by gridRepulse().
Definition at line 206 of file tlayout.c.
References dist(), dist2(), T_K, and T_useNew.
Referenced by applyRep(), and doNeighbor().
void fdp_initParams | ( | graph_t * | g | ) |
Definition at line 166 of file tlayout.c.
References agattr(), agnameof(), AGRAPH, agwarningf(), D_C, D_K, D_numIters, D_T0, D_Tfact, D_unscaled, D_useGrid, D_useNew, DFLT_Cell, DFLT_K, DFLT_maxIters, DFLT_seed, DFLT_smode, INIT_SELF, late_double(), late_int(), NULL, setSeed(), T_C, T_Cell, T_K, T_maxIters, T_numIters, T_pass1, T_seed, T_smode, T_T0, T_Tfact, T_unscaled, T_useGrid, T_useNew, and Verbose.
Referenced by fdp_init_graph().
Definition at line 612 of file tlayout.c.
References adjust, adjustGrid(), agfstnode(), agnnodes(), agnxtnode(), cool, delGrid(), gAdjust(), grid, init_params(), initPositions(), mkGrid(), ND_pos, reset(), reset_params(), T_loopcnt, T_T0, T_useGrid, pointf_s::x, and pointf_s::y.
Referenced by layout().
Definition at line 385 of file tlayout.c.
References addGrid(), agfstnode(), agfstout(), aghead, agnxtnode(), agnxtout(), applyAttr(), clearGrid(), FLOOR, grid, gridRepulse(), ND_pos, T_Cell, updatePos(), and walkGrid().
Referenced by fdp_tLayout().
Definition at line 273 of file tlayout.c.
References applyRep(), doNeighbor(), gLength(), grid, gridpt::i, gridpt::j, _node_list::next, _node_list::node, cell::nodes, cell::p, and Verbose.
Referenced by gAdjust().
Definition at line 125 of file tlayout.c.
References agnameof(), agnnodes(), xparams::C, cool, xparams::K, xparams::loopcnt, xparams::numIters, Agraph_s::root, xparams::T0, T_C, T_K, T_loopcnt, T_maxIters, T_numIters, T_pass1, T_T0, T_Tfact, and Verbose.
Referenced by fdp_tLayout().
Definition at line 446 of file tlayout.c.
References agfstedge(), agfstnode(), aghead, agnnodes(), agnxtedge(), agnxtnode(), agtail, alpha, cnt(), drand48(), EXPFACTOR, hasPos, INIT_RANDOM, boxf::LL, M_PI, MAX, MIN, ND_pinned, ND_pos, NULL, P_SET, srand48, T_Ht, T_K, T_seed, T_smode, T_Wd, boxf::UR, pointf_s::x, and pointf_s::y.
Referenced by fdp_tLayout().
|
static |
Definition at line 113 of file tlayout.c.
References T_T0.
Referenced by fdp_tLayout().
|
static |
|
static |
Definition at line 80 of file tlayout.c.
Referenced by create_hierarchy(), makeHier(), positionAllItems(), and set_active_levels().