Graphviz 14.0.2~dev.20251008.0253
|
#include <assert.h>
#include "topviewfuncs.h"
#include <cgraph/cgraph.h>
#include "smyrna_utils.h"
#include <common/colorprocs.h>
#include "draw.h"
#include "gui/frmobjectui.h"
#include <xdot/xdot.h>
#include <glcomp/glutils.h>
#include "selectionfuncs.h"
#include <common/types.h>
#include <common/utils.h>
#include <limits.h>
#include <float.h>
#include <math.h>
#include <stdbool.h>
#include <stdlib.h>
#include <util/alloc.h>
#include <util/gv_ctype.h>
Go to the source code of this file.
Typedefs | |
typedef void(* | edgefn) (Agraph_t *, Agedge_t *, glCompColor) |
Functions | |
static xdot * | parseXdotwithattrs (void *e) |
static void | set_boundaries (Agraph_t *g) |
static void | draw_xdot (xdot *x, double base_z) |
static glCompPoint | getEdgeHead (Agedge_t *edge) |
static glCompPoint | getEdgeTail (Agedge_t *edge) |
static float | getEdgeLength (Agedge_t *edge) |
static void | glCompColorxlate (glCompColor *c, const char *str) |
static int | visible (Agsym_t *attr, void *obj) |
static int | object_color (void *obj, glCompColor *c) |
static void | draw_edge (glCompPoint posT, glCompPoint posH) |
static char * | labelOf (Agraph_t *g, Agnode_t *v) |
static void | renderSelectedNodes (Agraph_t *g) |
static void | renderNodes (Agraph_t *g) |
static void | renderSelectedEdges (Agraph_t *g) |
static char * | skipWS (char *p) |
static char * | skipNWS (char *p) |
static char * | readPoint (char *p, xdot_point *pt) |
static char * | countPoints (char *pos, int *have_sp, xdot_point *sp, int *have_ep, xdot_point *ep, size_t *cntp) |
static int | storePoints (char *pos, xdot_point *ps) |
static xdot * | makeXDotSpline (char *pos) |
static void | renderEdgesFn (Agraph_t *g, edgefn ef, bool skipSelected) |
static void | edge_xdot (Agraph_t *g, Agedge_t *e, glCompColor c) |
static void | edge_seg (Agraph_t *g, Agedge_t *e, glCompColor c) |
static void | edge_spline (Agraph_t *g, Agedge_t *e, glCompColor c) |
static void | renderEdges (Agraph_t *g) |
static void | renderNodeLabels (Agraph_t *g) |
static void | renderEdgeLabels (Agraph_t *g) |
static void | cacheNodes (Agraph_t *g, topview *t) |
static void | cacheEdges (Agraph_t *g, topview *t) |
void | cacheSelectedEdges (Agraph_t *g, topview *t) |
void | cacheSelectedNodes (Agraph_t *g, topview *t) |
static void | cacheNodeLabels (Agraph_t *g, topview *t) |
static void | cacheEdgeLabels (Agraph_t *g, topview *t) |
void | updateSmGraph (Agraph_t *g, topview *t) |
void | initSmGraph (Agraph_t *g, topview *rv) |
void | renderSmGraph (topview *t) |
typedef void(* edgefn) (Agraph_t *, Agedge_t *, glCompColor) |
Definition at line 548 of file topviewfuncs.c.
Definition at line 741 of file topviewfuncs.c.
References topview::cache, topviewcache::edgelabel_id, and renderEdgeLabels().
Referenced by updateSmGraph().
Definition at line 701 of file topviewfuncs.c.
References topview::cache, topviewcache::edge_id, and renderEdges().
Referenced by updateSmGraph().
Definition at line 732 of file topviewfuncs.c.
References topview::cache, topviewcache::nodelabel_id, and renderNodeLabels().
Referenced by updateSmGraph().
Definition at line 688 of file topviewfuncs.c.
References topview::cache, topviewcache::node_id, and renderNodes().
Referenced by updateSmGraph().
Definition at line 712 of file topviewfuncs.c.
References topview::cache, renderSelectedEdges(), and topviewcache::seledge_id.
Referenced by deselect_all(), pick_object_xyz(), pick_objects_rect(), and updateSmGraph().
Definition at line 723 of file topviewfuncs.c.
References topview::cache, renderSelectedNodes(), and topviewcache::selnode_id.
Referenced by deselect_all(), pick_object_xyz(), pick_objects_rect(), select_polygon(), and updateSmGraph().
|
static |
Definition at line 440 of file topviewfuncs.c.
References cnt(), readPoint(), skipNWS(), and skipWS().
Referenced by makeXDotSpline().
|
static |
Definition at line 194 of file topviewfuncs.c.
References glCompPoint::x, glCompPoint::y, and glCompPoint::z.
Referenced by edge_seg(), and renderSelectedEdges().
|
static |
Definition at line 75 of file topviewfuncs.c.
References xdot::cnt, _xdot_op::drawfunc, topview::global_z, sdot_op::op, xdot::ops, _ViewInfo::Topview, and view.
Referenced by edge_spline(), edge_xdot(), renderNodes(), renderSelectedEdges(), and renderSelectedNodes().
|
static |
Definition at line 580 of file topviewfuncs.c.
References glCompColor::A, aghead, agtail, agxget(), glCompColor::B, draw_edge(), ED_posHead, ED_posTail, glCompColor::G, getPointFromStr(), GN_pos, and glCompColor::R.
Referenced by renderEdges().
|
static |
Definition at line 594 of file topviewfuncs.c.
References glCompColor::A, agxget(), glCompColor::B, draw_xdot(), freeXDot(), glCompColor::G, GE_pos, makeXDotSpline(), and glCompColor::R.
Referenced by renderEdges().
|
static |
Definition at line 569 of file topviewfuncs.c.
References draw_xdot(), freeXDot(), and parseXdotwithattrs().
Referenced by renderEdges().
|
static |
Definition at line 95 of file topviewfuncs.c.
References agget(), aghead, edge, and getPointFromStr().
Referenced by getEdgeLength().
|
static |
Definition at line 104 of file topviewfuncs.c.
References A, B, edge, getEdgeHead(), and getEdgeTail().
Referenced by object_color(), and updateSmGraph().
|
static |
Definition at line 99 of file topviewfuncs.c.
References agget(), agtail, edge, and getPointFromStr().
Referenced by getEdgeLength().
|
static |
Definition at line 113 of file topviewfuncs.c.
References glCompColor::A, glCompColor::B, colorxlate(), glCompColor::G, glCompColor::R, color_s::RGBA, RGBA_DOUBLE, str, and color_s::u.
Referenced by renderEdgeLabels(), renderNodeLabels(), and renderSelectedNodes().
Definition at line 794 of file topviewfuncs.c.
References topview::active, _ViewInfo::activeGraph, topview::attributes, topview::cache, topviewcache::edge_id, topview::fisheyeParams, _ViewInfo::g, topview::h, load_attr_list(), topviewcache::node_id, NULL, topview::sel, _selection::selectEdges, _selection::selectNodes, topviewcache::seledge_id, topviewcache::selnode_id, updateSmGraph(), and view.
Referenced by refreshViewport().
Definition at line 199 of file topviewfuncs.c.
References agget(), agnameof(), agxget(), GG_labelattribute, and GN_labelattribute.
Referenced by renderSelectedNodes().
|
static |
Definition at line 504 of file topviewfuncs.c.
References _xdot_op::bezier, cnt(), xdot_polyline::cnt, countPoints(), _xdot_op::drawfunc, free(), gv_alloc(), gv_calloc(), _xdot_op::kind, NULL, OpFns, xdot_polyline::pts, storePoints(), _xdot_op::u, xd, xd_unfilled_bezier, and xop_bezier.
Referenced by edge_spline().
|
static |
Definition at line 134 of file topviewfuncs.c.
References glCompColor::A, _ViewInfo::activeGraph, AGEDGE, agget(), AGNODE, agraphof(), AGTYPE, glCompColor::B, colorxlate(), _ViewInfo::colschms, free(), _ViewInfo::g, glCompColor::G, GE_visible, getAttrFloat(), getAttrStr(), getcolorfromschema(), getEdgeLength(), GN_visible, topview::maxedgelen, NULL, glCompColor::R, color_s::RGBA, RGBA_DOUBLE, setColorScheme(), _ViewInfo::Topview, color_s::u, view, and visible().
Referenced by renderEdgesFn(), renderNodes(), and renderSelectedEdges().
|
static |
Definition at line 31 of file topviewfuncs.c.
References agget(), agobjkind(), AGRAPH, cnt(), xdot::cnt, NULL, OpFns, xdot::ops, and parseXDotFOn().
Referenced by edge_xdot(), renderNodes(), renderSelectedEdges(), and renderSelectedNodes().
|
static |
Definition at line 401 of file topviewfuncs.c.
References xdot_point::x, xdot_point::y, and xdot_point::z.
Referenced by countPoints(), and storePoints().
|
static |
Definition at line 649 of file topviewfuncs.c.
References glCompColor::A, agfstnode(), agfstout(), agnxtnode(), agnxtout(), agxget(), glCompColor::B, ED_posHead, ED_posTail, glCompColor::G, GE_labelattribute, GG_edgelabelcolor, glCompColorxlate(), glprintfglut(), _ViewInfo::glutfont, ND_visible, glCompColor::R, view, glCompPoint::x, glCompPoint::y, glCompPoint::z, and z.
Referenced by cacheEdgeLabels().
|
static |
Definition at line 606 of file topviewfuncs.c.
References _ViewInfo::drawSplines, edge_seg(), edge_spline(), edge_xdot(), GE_pos, renderEdgesFn(), and view.
Referenced by cacheEdges().
Definition at line 550 of file topviewfuncs.c.
References agfstnode(), agfstout(), aghead, agnxtnode(), agnxtout(), agtail, ED_selected, ND_visible, and object_color().
Referenced by renderEdges().
|
static |
Definition at line 623 of file topviewfuncs.c.
References glCompColor::A, agfstnode(), agnameof(), agnxtnode(), agxget(), glCompColor::B, glCompColor::G, GG_nodelabelcolor, glCompColorxlate(), glprintfglut(), _ViewInfo::glutfont, GN_labelattribute, ND_A, ND_selected, ND_visible, glCompColor::R, view, glCompPoint::x, glCompPoint::y, and glCompPoint::z.
Referenced by cacheNodeLabels().
|
static |
Definition at line 273 of file topviewfuncs.c.
References glCompColor::A, agfstnode(), agnxtnode(), agxget(), glCompColor::B, draw_xdot(), drawCircle(), freeXDot(), glCompColor::G, getAttrInt(), getPointFromStr(), GN_pos, GN_selected, GN_size, l_float(), l_int(), ND_A, ND_selected, ND_size, ND_TVref, ND_visible, _ViewInfo::nodeScale, object_color(), parseXdotwithattrs(), glCompColor::R, view, glCompPoint::x, glCompPoint::y, and glCompPoint::z.
Referenced by cacheNodes(), and updateSmGraph().
|
static |
Definition at line 340 of file topviewfuncs.c.
References agfstnode(), agfstout(), agnxtnode(), agnxtout(), draw_edge(), draw_xdot(), ED_posHead, ED_posTail, ED_selected, freeXDot(), object_color(), parseXdotwithattrs(), and glCompPoint::z.
Referenced by cacheSelectedEdges().
|
static |
Definition at line 218 of file topviewfuncs.c.
References glCompColor::A, agfstnode(), agnxtnode(), agxget(), glCompColor::B, draw_xdot(), drawCircle(), freeXDot(), glCompColor::G, getAttrBool(), GG_nodelabelcolor, glCompColorxlate(), glprintfglut(), _ViewInfo::glutfont, labelOf(), ND_A, ND_printLabel, ND_selected, ND_size, parseXdotwithattrs(), glCompColor::R, _ViewInfo::selectedNodeColor, view, glCompPoint::x, glCompPoint::y, and glCompPoint::z.
Referenced by cacheSelectedNodes().
void renderSmGraph | ( | topview * | t | ) |
Definition at line 813 of file topviewfuncs.c.
References topview::cache, _ViewInfo::drawedgelabels, _ViewInfo::drawedges, _ViewInfo::drawnodelabels, _ViewInfo::drawnodes, topviewcache::edge_id, topviewcache::edgelabel_id, topview::fitin_zoom, _ViewInfo::labelnumberofnodes, topviewcache::node_id, topviewcache::nodelabel_id, _ViewInfo::nodeScale, topviewcache::seledge_id, topviewcache::selnode_id, view, and _ViewInfo::zoom.
Referenced by glexpose_drawgraph().
|
static |
Definition at line 53 of file topviewfuncs.c.
References agfstnode(), agnxtnode(), agxget(), _ViewInfo::bdxLeft, _ViewInfo::bdxRight, _ViewInfo::bdyBottom, _ViewInfo::bdyTop, getPointFromStr(), GN_pos, left, right, top(), view, glCompPoint::x, and glCompPoint::y.
Referenced by updateSmGraph().
|
static |
Definition at line 389 of file topviewfuncs.c.
References gv_isspace().
Referenced by countPoints().
|
static |
Definition at line 380 of file topviewfuncs.c.
References gv_isspace().
Referenced by countPoints(), and storePoints().
|
static |
Definition at line 487 of file topviewfuncs.c.
References ps, readPoint(), and skipWS().
Referenced by makeXDotSpline().
Definition at line 751 of file topviewfuncs.c.
References AGEDGE, agfstnode(), agfstout(), aginit(), AGNODE, agnxtnode(), agnxtout(), cacheEdgeLabels(), cacheEdges(), cacheNodeLabels(), cacheNodes(), cacheSelectedEdges(), cacheSelectedNodes(), getEdgeLength(), topview::global_z, topview::maxedgelen, topview::Nodecount, renderNodes(), topview::sel, _selection::selPoly, set_boundaries(), _ViewInfo::Topview, and view.
Referenced by initSmGraph(), on_settingsApplyBtn_clicked(), tv_hide_all(), and tv_show_all().
|
static |
Definition at line 125 of file topviewfuncs.c.
References agxget(), and mapbool().
Referenced by object_color().