Graphviz 14.1.4~dev.20260320.0055
Loading...
Searching...
No Matches
adjust.h
Go to the documentation of this file.
1/*************************************************************************
2 * Copyright (c) 2011 AT&T Intellectual Property
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v2.0
5 * which accompanies this distribution, and is available at
6 * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html
7 *
8 * Contributors: Details at https://graphviz.org
9 *************************************************************************/
10
11#pragma once
12
13#include <common/types.h>
14#include <sparse/SparseMatrix.h>
15#include <util/api.h>
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21#include "geom.h"
22#include <stdbool.h>
23
24#define DFLT_MARGIN 4 /* 4 points */
25
33
34typedef struct {
36 char *print;
37 int value;
38 double scaling;
40
41typedef struct {
42 double x, y;
43 bool doAdd; /* if true, x and y are in points */
44} expand_t;
45
52PRIVATE int cAdjust(graph_t *, int);
53PRIVATE int scAdjust(graph_t *, int);
54PRIVATE void graphAdjustMode(graph_t *G, adjust_data*, char* dflt);
55PRIVATE double *getSizes(Agraph_t * g, pointf pad, int *n_elabels, int **elabels);
57
58#ifdef __cplusplus
59}
60#endif
PRIVATE int removeOverlapAs(graph_t *, char *)
Use flag value to determine if and how to remove node overlaps.
Definition adjust.c:986
PRIVATE int removeOverlapWith(graph_t *, adjust_data *)
Definition adjust.c:899
PRIVATE int scAdjust(graph_t *, int)
Definition constraint.c:767
PRIVATE expand_t sepFactor(graph_t *G)
Definition adjust.c:1046
PRIVATE expand_t esepFactor(graph_t *G)
Definition adjust.c:1071
PRIVATE int adjustNodes(graph_t *G)
Definition adjust.c:999
PRIVATE void graphAdjustMode(graph_t *G, adjust_data *, char *dflt)
Definition adjust.c:863
PRIVATE double * getSizes(Agraph_t *g, pointf pad, int *n_elabels, int **elabels)
Set up array of half sizes in inches.
Definition adjust.c:512
PRIVATE int cAdjust(graph_t *, int)
Definition constraint.c:538
PRIVATE int normalize(graph_t *g)
Definition adjust.c:722
adjust_mode
Definition adjust.h:26
@ AM_PORTHOYX
Definition adjust.h:30
@ AM_NONE
Definition adjust.h:27
@ AM_VPSC
Definition adjust.h:31
@ AM_PORTHO
Definition adjust.h:30
@ AM_ORTHO_YX
Definition adjust.h:29
@ AM_ORTHO
Definition adjust.h:29
@ AM_PORTHO_YX
Definition adjust.h:30
@ AM_NSCALE
Definition adjust.h:28
@ AM_SCALE
Definition adjust.h:28
@ AM_SCALEXY
Definition adjust.h:28
@ AM_IPSEP
Definition adjust.h:31
@ AM_ORTHOYX
Definition adjust.h:29
@ AM_PRISM
Definition adjust.h:31
@ AM_VOR
Definition adjust.h:27
@ AM_ORTHOXY
Definition adjust.h:29
@ AM_PORTHOXY
Definition adjust.h:30
@ AM_COMPRESS
Definition adjust.h:30
PRIVATE SparseMatrix makeMatrix(Agraph_t *g)
Definition adjust.c:542
macro for API hiding/exposing
#define PRIVATE
Definition api.h:16
#define G
Definition gdefs.h:7
geometric types and macros (e.g. points and boxes)
graph or subgraph
Definition cgraph.h:424
int value
Definition adjust.h:37
double scaling
Definition adjust.h:38
char * print
Definition adjust.h:36
adjust_mode mode
Definition adjust.h:35
double x
Definition adjust.h:42
bool doAdd
Definition adjust.h:43
graphs, nodes and edges info: Agraphinfo_t, Agnodeinfo_t and Agedgeinfo_t