Graphviz 13.1.2~dev.20250722.1051
|
#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 549 of file topviewfuncs.c.
Definition at line 742 of file topviewfuncs.c.
References topview::cache, topviewcache::edgelabel_id, and renderEdgeLabels().
Referenced by updateSmGraph().
Definition at line 702 of file topviewfuncs.c.
References topview::cache, topviewcache::edge_id, and renderEdges().
Referenced by updateSmGraph().
Definition at line 733 of file topviewfuncs.c.
References topview::cache, topviewcache::nodelabel_id, and renderNodeLabels().
Referenced by updateSmGraph().
Definition at line 689 of file topviewfuncs.c.
References topview::cache, topviewcache::node_id, and renderNodes().
Referenced by updateSmGraph().
Definition at line 713 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 724 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 441 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 581 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 595 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 570 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 795 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 505 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 402 of file topviewfuncs.c.
References xdot_point::x, xdot_point::y, and xdot_point::z.
Referenced by countPoints(), and storePoints().
|
static |
Definition at line 650 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 607 of file topviewfuncs.c.
References _ViewInfo::drawSplines, edge_seg(), edge_spline(), edge_xdot(), GE_pos, renderEdgesFn(), and view.
Referenced by cacheEdges().
Definition at line 551 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 624 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 274 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 341 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 814 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 390 of file topviewfuncs.c.
References gv_isspace().
Referenced by countPoints().
|
static |
Definition at line 381 of file topviewfuncs.c.
References gv_isspace().
Referenced by countPoints(), and storePoints().
|
static |
Definition at line 488 of file topviewfuncs.c.
References ps, readPoint(), and skipWS().
Referenced by makeXDotSpline().
Definition at line 752 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().