|
Graphviz 16.1.0~dev.20260902.0144
|
#include "config.h"#include <assert.h>#include <errno.h>#include <limits.h>#include <math.h>#include <stdbool.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <label/xlabels.h>#include <util/alloc.h>#include <util/exit.h>Go to the source code of this file.
Macros | |
| #define | XLABEL_INT |
Functions | |
| static int | icompare (void *, void *) |
| static XLabels_t * | xlnew (object_t *objs, size_t n_objs) |
| static void | xlfree (XLabels_t *xlp) |
| static unsigned int | xlhorder (boxf obj_bb) |
| static unsigned | hd_hil_s_from_xy (point p, unsigned n) |
| static double | aabbaabb (Rect_t r, Rect_t s) |
| static bool | lblenclosing (object_t *objp, object_t *objp1) |
| static Rect_t | objp2rect (const object_t *op) |
| static Rect_t | objplp2rect (const object_t *objp) |
| static Rect_t | objplpmks (object_t *objp) |
| static int | getintrsxi (object_t *op, object_t *cp) |
| static double | recordointrsx (object_t *op, object_t *cp, Rect_t rp, double a, object_t *intrsx[XLNBR]) |
| static double | recordlintrsx (object_t *op, object_t *cp, Rect_t *rp, double a, object_t *intrsx[XLNBR]) |
| static BestPos_t | xlintersections (XLabels_t *xlp, object_t *objp, object_t *intrsx[XLNBR]) |
| static BestPos_t | xladjust (XLabels_t *xlp, object_t *objp) |
| static int | xlhdxload (XLabels_t *xlp, boxf obj_bb) |
| static void | xlspdxload (XLabels_t *xlp) |
| static int | xlinitialize (XLabels_t *xlp, boxf obj_bb) |
| int | placeLabels (object_t *objs, size_t n_objs, const label_params_t *params) |
Variables | |
| Dtdisc_t | Hdisc |
Definition at line 141 of file xlabels.c.
References Rect::boundary, and Overlap().
Referenced by recordlintrsx(), recordointrsx(), and xlintersections().
Definition at line 213 of file xlabels.c.
References object_t::lbl, object_t::pos, xlabel_t::set, pointf_s::x, and pointf_s::y.
Referenced by recordlintrsx(), and recordointrsx().
|
static |
Definition at line 114 of file xlabels.c.
References point::x, and point::y.
Referenced by xlhdxload().
Definition at line 162 of file xlabels.c.
References object_t::lbl, xlabel_t::pos, object_t::pos, xlabel_t::sz, object_t::sz, pointf_s::x, and pointf_s::y.
Referenced by xlintersections().
Definition at line 175 of file xlabels.c.
References Rect::boundary, object_t::pos, object_t::sz, pointf_s::x, and pointf_s::y.
Referenced by recordlintrsx(), recordointrsx(), and xlintersections().
Definition at line 185 of file xlabels.c.
References Rect::boundary, object_t::lbl, xlabel_t::pos, xlabel_t::sz, pointf_s::x, and pointf_s::y.
Referenced by recordlintrsx(), recordointrsx(), and xlintersections().
Definition at line 196 of file xlabels.c.
References Rect::boundary, object_t::lbl, object_t::pos, xlabel_t::sz, object_t::sz, pointf_s::x, and pointf_s::y.
Referenced by xlhdxload().
| int placeLabels | ( | object_t * | objs, |
| size_t | n_objs, | ||
| const label_params_t * | params | ||
| ) |
Definition at line 541 of file xlabels.c.
References label_params_t::bb, label_params_t::force, object_t::lbl, xlabel_t::pos, xlabel_t::set, xladjust(), xlfree(), xlinitialize(), and xlnew().
Referenced by addXLabels().
|
static |
Definition at line 276 of file xlabels.c.
References aabbaabb(), getintrsxi(), NULL, objp2rect(), and objplp2rect().
Referenced by xlintersections().
|
static |
Definition at line 246 of file xlabels.c.
References aabbaabb(), getintrsxi(), NULL, objp2rect(), and objplp2rect().
Referenced by xlintersections().
|
static |
Definition at line 363 of file xlabels.c.
References object_t::lbl, xlabel_t::pos, object_t::pos, xlabel_t::sz, object_t::sz, pointf_s::x, xlintersections(), and pointf_s::y.
Referenced by placeLabels().
|
static |
Definition at line 64 of file xlabels.c.
References free(), and RTreeClose().
Referenced by placeLabels().
|
static |
Definition at line 500 of file xlabels.c.
References dtinsert, gv_alloc(), hd_hil_s_from_xy(), objplpmks(), point::x, and xlhorder().
Referenced by xlinitialize().
|
static |
Definition at line 77 of file xlabels.c.
References boxf::UR, pointf_s::x, and pointf_s::y.
Referenced by xlhdxload().
|
static |
| obj_bb | Bounding box of all objects |
Definition at line 533 of file xlabels.c.
References dtclose(), xlhdxload(), and xlspdxload().
Referenced by placeLabels().
|
static |
Definition at line 306 of file xlabels.c.
References aabbaabb(), object_t::lbl, lblenclosing(), LeafList::next, objp2rect(), objplp2rect(), xlabel_t::pos, recordlintrsx(), recordointrsx(), RTreeLeafListFree(), RTreeSearch(), and xlabel_t::set.
Referenced by xladjust().
|
static |
Definition at line 46 of file xlabels.c.
References Dtobag, dtopen(), graphviz_exit(), gv_alloc(), Hdisc, and RTreeOpen().
Referenced by placeLabels().
|
static |
Definition at line 525 of file xlabels.c.
References dtfirst, dtnext, and RTreeInsert().
Referenced by xlinitialize().