Graphviz 14.0.2~dev.20251008.0253
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 v1.0
5 * which accompanies this distribution, and is available at
6 * https://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors: Details at https://graphviz.org
9 *************************************************************************/
10
11#pragma once
12
13#include <util/api.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19#include "geom.h"
20#include <sparse/SparseMatrix.h>
21#include <stdbool.h>
22
23#define DFLT_MARGIN 4 /* 4 points */
24
32
33typedef struct {
35 char *print;
36 int value;
37 double scaling;
39
40typedef struct {
41 double x, y;
42 bool doAdd; /* if true, x and y are in points */
43} expand_t;
44
51PRIVATE int cAdjust(graph_t *, int);
52PRIVATE int scAdjust(graph_t *, int);
53PRIVATE void graphAdjustMode(graph_t *G, adjust_data*, char* dflt);
54PRIVATE double *getSizes(Agraph_t * g, pointf pad, int *n_elabels, int **elabels);
56
57#ifdef __cplusplus
58}
59#endif
PRIVATE int removeOverlapAs(graph_t *, char *)
Use flag value to determine if and how to remove node overlaps.
Definition adjust.c:985
PRIVATE int removeOverlapWith(graph_t *, adjust_data *)
Definition adjust.c:898
PRIVATE int scAdjust(graph_t *, int)
Definition constraint.c:783
PRIVATE expand_t sepFactor(graph_t *G)
Definition adjust.c:1045
PRIVATE expand_t esepFactor(graph_t *G)
Definition adjust.c:1070
PRIVATE int adjustNodes(graph_t *G)
Definition adjust.c:998
PRIVATE void graphAdjustMode(graph_t *G, adjust_data *, char *dflt)
Definition adjust.c:862
PRIVATE double * getSizes(Agraph_t *g, pointf pad, int *n_elabels, int **elabels)
Set up array of half sizes in inches.
Definition adjust.c:511
PRIVATE int cAdjust(graph_t *, int)
Definition constraint.c:552
PRIVATE int normalize(graph_t *g)
Definition adjust.c:721
adjust_mode
Definition adjust.h:25
@ AM_PORTHOYX
Definition adjust.h:29
@ AM_NONE
Definition adjust.h:26
@ AM_VPSC
Definition adjust.h:30
@ AM_PORTHO
Definition adjust.h:29
@ AM_ORTHO_YX
Definition adjust.h:28
@ AM_ORTHO
Definition adjust.h:28
@ AM_PORTHO_YX
Definition adjust.h:29
@ AM_NSCALE
Definition adjust.h:27
@ AM_SCALE
Definition adjust.h:27
@ AM_SCALEXY
Definition adjust.h:27
@ AM_IPSEP
Definition adjust.h:30
@ AM_ORTHOYX
Definition adjust.h:28
@ AM_PRISM
Definition adjust.h:30
@ AM_VOR
Definition adjust.h:26
@ AM_ORTHOXY
Definition adjust.h:28
@ AM_PORTHOXY
Definition adjust.h:29
@ AM_COMPRESS
Definition adjust.h:29
PRIVATE SparseMatrix makeMatrix(Agraph_t *g)
Definition adjust.c:541
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:36
double scaling
Definition adjust.h:37
char * print
Definition adjust.h:35
adjust_mode mode
Definition adjust.h:34
double x
Definition adjust.h:41
bool doAdd
Definition adjust.h:42