Commit graph

478 commits

Author SHA1 Message Date
Gavin Nishizawa
799311877a
refactor 2023-09-21 13:17:17 -07:00
Gavin Nishizawa
37adab4803
nested graph types 2023-09-21 13:17:17 -07:00
Gavin Nishizawa
140f3c77fc
add nested layout design 2023-09-21 13:17:16 -07:00
Gavin Nishizawa
e44ac23c84
cleanup warning 2023-09-20 12:18:47 -07:00
Gavin Nishizawa
4ce32e7d05
fix empty grid 2023-09-20 12:18:47 -07:00
Gavin Nishizawa
9ac8f34216
fix scenario with only center nears 2023-09-18 21:18:56 -07:00
Gavin Nishizawa
99bae24435
fix check for center near constants 2023-09-18 21:01:48 -07:00
Gavin Nishizawa
c9a6e65c6b
shift edges with grid 2023-09-13 20:27:31 -07:00
Gavin Nishizawa
f4b153d059
cleanup 2023-09-12 22:04:57 -07:00
Gavin Nishizawa
46bd6aeee5
edge case of edges on grid container 2023-09-12 17:08:34 -07:00
Gavin Nishizawa
a17013a323
update grid layout with simple edge routing 2023-09-12 16:54:42 -07:00
Gavin Nishizawa
189edf552a
add check for nodes that need to move with edges even if they start behind the original node 2023-07-28 08:54:23 -07:00
Alexander Wang
45b396c894
config vars 2023-07-20 16:08:08 -07:00
Gavin Nishizawa
fbda3e8873
add some extra space between overlapping 2023-07-20 11:31:40 -07:00
Gavin Nishizawa
a18eae7158
consider edges close to collapsing edge as being on it 2023-07-19 19:26:19 -07:00
Gavin Nishizawa
09174c17b8
check for overlaps with children 2023-07-19 17:42:21 -07:00
Gavin Nishizawa
92b8c2c877
check for internal edges and their labels 2023-07-17 15:13:21 -07:00
Gavin Nishizawa
874696da3d
fix 2023-07-14 16:12:11 -07:00
Gavin Nishizawa
5d7b0af127
account for child 3d/multiple in bounding box 2023-07-14 12:02:06 -07:00
Gavin Nishizawa
8cce0aa54c
don't shrink padding past edges on side 2023-07-14 11:59:03 -07:00
Gavin Nishizawa
f99405eaa3
fit container padding 2023-07-14 11:59:03 -07:00
Gavin Nishizawa
180a444ca0
fix grid diagram shift 2023-07-13 13:56:12 -07:00
Gavin Nishizawa
a32319d598
fix dagre_broken_arrowhead 2023-07-13 13:56:12 -07:00
Gavin Nishizawa
2c5c395315
handle merging multiple different child margins and container padding in rank direction 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
b6795e65e1
fixes 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
d25d1a3bf0
deduplicate cross rank margin adjustments 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
14917b7531
handle rank direction ending container padding 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
81db10d67e
adjust parent heights 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
27f66c8d72
get parent rank ranges 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
8e18103ffd
calculating object ranks
adusting spacing for each rank
2023-07-13 13:56:11 -07:00
Gavin Nishizawa
de8406d124
dagre container label adjustments with phantom node 2023-07-13 13:56:11 -07:00
Gavin Nishizawa
3ebc557ee8
cleanup 2023-07-12 15:40:21 -07:00
Gavin Nishizawa
d85c1e9f3b
fix 2023-07-12 15:39:02 -07:00
Gavin Nishizawa
e2289fb13f
account for shape growth 2023-07-12 15:38:44 -07:00
Gavin Nishizawa
b6263a4955
left right 2023-07-12 15:38:25 -07:00
Gavin Nishizawa
b3713d1fa7
fix 2023-07-12 15:38:25 -07:00
Gavin Nishizawa
42988d5f90
update padding for label and icons 2023-07-12 15:38:24 -07:00
Gavin Nishizawa
3431c70c30
adjust parent padding for child outside icons 2023-07-12 15:38:24 -07:00
Gavin Nishizawa
5979628a17
update 2023-07-12 15:38:24 -07:00
Gavin Nishizawa
95156063d2
update, refactor, cleanup 2023-07-12 15:38:24 -07:00
Gavin Nishizawa
1926ec1be9
elk adjust padding for inner labels 2023-07-12 15:38:24 -07:00
Gavin Nishizawa
c4d9a6231f
adjust elk layout for outside labels 2023-07-12 15:38:24 -07:00
Gavin Nishizawa
90e2fcf4e2
cleanup 2023-06-22 19:26:49 -07:00
Gavin Nishizawa
af32907a8a
user-specified label/icon positions 2023-06-22 19:17:56 -07:00
Alexander Wang
d1f7e23aff
done 2023-06-08 17:56:09 -07:00
Gavin Nishizawa
07390c7ae0
also trace in elk 2023-06-08 14:20:37 -07:00
Gavin Nishizawa
8d2636a147
cleanup 2023-06-08 14:06:43 -07:00
Gavin Nishizawa
fe52f1a659
check shape type 2023-06-08 14:00:32 -07:00
Gavin Nishizawa
3cef43cc34
also trace with edge source 2023-06-08 13:55:50 -07:00
Gavin Nishizawa
35fd624ead
trace to outside labels 2023-06-08 13:50:29 -07:00
Gavin Nishizawa
186a90de7b
fix, cleanup, test grid layout cuts 2023-06-08 13:11:31 -07:00
Gavin Nishizawa
70cbe99302
fix 2023-06-08 13:11:30 -07:00
Gavin Nishizawa
4015a48664
fix dagre shifting connection start past 2nd point 2023-06-02 15:52:06 -07:00
Gavin Nishizawa
176df52cec
fix grid icon positioning 2023-05-30 13:32:08 -07:00
Gavin Nishizawa
ad44eff47a
cleanup 2023-05-30 11:28:14 -07:00
Gavin Nishizawa
6d8dde153e
adjust grid for outside top labels 2023-05-30 11:08:05 -07:00
Gavin Nishizawa
297819dc35
grid: don't overwrite nested graph label positions 2023-05-30 11:06:56 -07:00
Gavin Nishizawa
182af8dc39
comments, renaming 2023-05-26 12:37:51 -07:00
Gavin Nishizawa
d06d797025
refactor/cleanup 2023-05-25 19:14:11 -07:00
Gavin Nishizawa
ee70180a87
fixes 2023-05-25 18:35:58 -07:00
Gavin Nishizawa
c3a3454353
elk 2023-05-25 16:22:04 -07:00
Gavin Nishizawa
6fc9ffa04d
fixes, cleanup 2023-05-24 20:07:10 -07:00
Gavin Nishizawa
6f9ad8d6dd
fix tracing edge to multiple/3d border 2023-05-24 20:07:10 -07:00
Gavin Nishizawa
3ce0b1439e
shift descendants 2023-05-24 20:07:10 -07:00
Gavin Nishizawa
d6b8149073
adjust for 3d/multiple 2023-05-24 20:07:10 -07:00
Gavin Nishizawa
7f1bfff6f2
changelog 2023-05-10 17:24:57 -07:00
Gavin Nishizawa
0750d1b3b2
also use grid-gap for grid container padding 2023-05-10 15:23:13 -07:00
Gavin Nishizawa
aff2c5c68e
layout nested grids 2023-05-10 12:57:38 -07:00
Gavin Nishizawa
939eb500da
layout nested grids 2023-05-10 12:57:07 -07:00
Gavin Nishizawa
f64588ff89
cleanup 2023-05-09 18:09:39 -07:00
Gavin Nishizawa
595cdd4b0b
improve layoutDynamic performance when evenly sized 2023-05-09 18:09:38 -07:00
Gavin Nishizawa
45d798dc53
simplify func 2023-05-04 20:58:39 -07:00
Gavin Nishizawa
d116f7d918
size grid container according to shape 2023-05-04 16:40:59 -07:00
Alexander Wang
e93682d7f5
fix elk issue when container named root
changelog
2023-04-29 20:27:33 -07:00
Gavin Nishizawa
6d54377fe1
cleanup 2023-04-28 19:50:04 -07:00
Gavin Nishizawa
0f0dd7744a
fast attempt with debt balancing + skip bad rows 2023-04-28 19:50:04 -07:00
Gavin Nishizawa
917b262773
add maximum attempts 2023-04-28 19:50:04 -07:00
Gavin Nishizawa
203cc5e4af
optimizations 2023-04-28 19:50:03 -07:00
Gavin Nishizawa
3937e37589
improve grid expand evenly 2023-04-28 17:59:08 -07:00
Alexander Wang
cd34ddcc4c
model_order cycle breaking elk 2023-04-20 11:44:00 -07:00
Alexander Wang
88e71c3088
fix elk self loop spacing 2023-04-19 20:09:53 -07:00
gavin-ts
a78698610c
Merge pull request #1198 from gavin-ts/refactor-attributes
refactor d2graph.Attributes
2023-04-14 20:18:30 -07:00
Andreas Deininger
6ae417cde9
Fixing typos
Signed-off-by: Andreas Deininger <andreas@deininger.net>
2023-04-14 07:48:22 +02:00
Gavin Nishizawa
214c95eefc
refactor d2graph.Attributes 2023-04-13 20:04:55 -07:00
Gavin Nishizawa
882df2fac9
refactor LabelWidth and LabelHeight to LabelDimensions 2023-04-13 15:43:25 -07:00
gavin-ts
1a81930876
Merge pull request #1178 from gavin-ts/grid-gap-keywords
Grid gap keywords
2023-04-12 15:23:52 -07:00
Gavin Nishizawa
c0e164e44b
rename to horizontal-gap and vertical-gap 2023-04-12 13:51:04 -07:00
Gavin Nishizawa
851af40a8c
fix grid panic with insuffient objects 2023-04-12 11:49:15 -07:00
Gavin Nishizawa
7631efce2b
cleanup 2023-04-11 11:32:35 -07:00
Gavin Nishizawa
d835ef19a9
if storing int and casting float64 each use 2023-04-11 11:20:21 -07:00
Gavin Nishizawa
a7050f3ca7
use grid-gap values for layout 2023-04-10 20:04:25 -07:00
Alexander Wang
dbc3a69951
fix solo near 2023-04-08 10:07:56 -07:00
Alexander Wang
189e5a005c
Merge pull request #1140 from alexstoick/feat/lifeline-inherit-actor-style
Lifeline should inherit the stroke style from the actor
2023-04-07 14:00:12 -07:00
Stoica Alex
2a93d21420
Lifeline should inherit the stroke style from the actor
Fixes #1137
2023-04-07 21:31:08 +01:00
donglixiaoche
b2f905efb8
Merge branch 'master' into near-keys-for-container
Conflicts:
	d2layouts/d2near/layout.go
2023-04-07 10:40:40 +08:00
donglixiaoche
59ef4ad832
fix: cr, attach objects of tempGraph 2023-04-07 10:33:19 +08:00
gavin-ts
b3511d1248
Merge pull request #1122 from gavin-ts/grid-layouts
new grid layout with rows/columns
2023-04-06 19:22:24 -07:00
Gavin Nishizawa
a75d4dd0b9
update keywords rows -> grid-rows 2023-04-06 15:48:01 -07:00
Gavin Nishizawa
37fc3ea8e0
cleanup 2023-04-06 15:37:35 -07:00
Gavin Nishizawa
bab54b4030
cleanup 2023-04-06 14:30:45 -07:00
Gavin Nishizawa
8eb99a46c6
new method for placing nodes across rows 2023-04-05 20:02:57 -07:00
donglixiaoche
e61629e692
fix: cr 2023-04-06 05:00:12 +08:00
Gavin Nishizawa
06a942cf99
rename to grid diagram 2023-04-05 11:15:52 -07:00
Gavin Nishizawa
108faceb99
layout evenly with rows and columns 2023-04-04 20:12:20 -07:00
Gavin Nishizawa
ac0845da1c
center container if growing to fit label 2023-04-04 20:12:20 -07:00
Alexander Wang
cadaaeb21f
add padding between dagre labels 2023-04-04 13:50:12 -07:00
Gavin Nishizawa
7ac72140c7
fixing rows creation 2023-04-04 13:44:41 -07:00
Gavin Nishizawa
a16924752d
finish column logic 2023-04-04 11:38:33 -07:00
donglixiaoche
c77590e5bf
fix: cr 2023-04-04 18:33:23 +08:00
Gavin Nishizawa
c958269b03
more dynamic grid sizing according to node sizes 2023-04-03 21:38:08 -07:00
Gavin Nishizawa
acd0638325
evenly size grid nodes 2023-04-03 13:49:10 -07:00
Gavin Nishizawa
06fb313d3e
values must be positive 2023-04-03 13:49:10 -07:00
Gavin Nishizawa
abe27cdc26
cleanup 2023-04-03 13:49:10 -07:00
Gavin Nishizawa
f8617d1560
refactor 2023-04-03 13:49:10 -07:00
Gavin Nishizawa
d139eeadad
layout with grids 2023-04-03 13:48:38 -07:00
donglixiaoche
a3268f2fd1
fix: cr, a clean spilit for temp graph 2023-03-30 20:31:42 +08:00
donglixiaoche
3d45f6ab51
fix: cr, return value 2023-03-28 08:57:15 +08:00
donglixiaoche
66f620f57b
fix: typo 2023-03-27 22:48:02 +08:00
donglixiaoche
54250d00dd
fix: nil labelPosition 2023-03-27 21:40:36 +08:00
donglixiaoche
a21f5ec438
fix: cr, calc labelPosition 2023-03-27 21:38:11 +08:00
donglixiaoche
77822318aa
fix: cr, use method instead of attribute 2023-03-27 21:38:11 +08:00
donglixiaoche
ebab91b043
fix: cr, delete redundant variable 2023-03-27 21:38:11 +08:00
donglixiaoche
4e4959f39b
fix: cr, delete redundant return value 2023-03-27 21:38:11 +08:00
donglixiaoche
7deb725252
chore: delete redundant code 2023-03-27 21:38:10 +08:00
donglixiaoche
df19311f9b
fix: ignore objects inside near container when calc boundingBox 2023-03-27 21:38:10 +08:00
donglixiaoche
17c4851618
fix: calc labelDimension 2023-03-27 21:38:10 +08:00
donglixiaoche
69532df6aa
fix: cr, integrate logic of construct sub graph inside WithoutConstantNears 2023-03-27 21:38:10 +08:00
donglixiaoche
3d32611a01
fix: cr delete extra blank line 2023-03-27 21:38:09 +08:00
donglixiaoche
115f46f428
feat: descendants now is allowed for container with near attribute 2023-03-27 21:38:08 +08:00
Alexander Wang
c3c60c5bab
fix elk container label 2023-03-17 21:46:57 -07:00
Alexander Wang
e36f2f946b
elk fit labels, center contents 2023-03-15 13:07:45 -07:00
Alexander Wang
7f9bc2b033
Merge branch 'master' into elk-shim 2023-03-14 18:38:43 -07:00
gavin-ts
6614000fe5
Merge pull request #1026 from gavin-ts/lint
lint for go 1.20
2023-03-14 18:21:38 -07:00
Alexander Wang
b4518cdb03
fix rounding hopefully 2023-03-14 17:54:05 -07:00
Alexander Wang
27870fc7d6
fix 2023-03-14 17:37:19 -07:00
Alexander Wang
f35be526c6
remove ladders 2023-03-14 15:29:50 -07:00
Gavin Nishizawa
9e31f83b7b
consider text containers as label-less when adjusting edges for dagre 2023-03-14 15:14:15 -07:00
Alexander Wang
05938bdef2
s-shape 2023-03-14 14:54:30 -07:00
Alexander Wang
73c35bb14b
implement s-shape 2023-03-14 14:11:51 -07:00
Alexander Wang
90a927131d
node edge spacing 2023-03-14 13:06:56 -07:00
Alexander Wang
330045f6a2
error handling 2023-03-14 12:49:56 -07:00
Gavin Nishizawa
8fe2eee56d
lint 2023-03-14 11:20:00 -07:00
Alexander Wang
a37c456dfc
fixed alignment 2023-03-14 11:08:29 -07:00
Alexander Wang
d6fee41e3b
make dagre inter-container connections better 2023-03-09 19:49:40 -08:00
Alexander Wang
412f53e229
ELK nodes grow to ensure port padding 2023-03-06 22:32:15 -08:00
Gavin Nishizawa
bacb22797c
fix 2023-03-03 22:31:09 -08:00
Gavin Nishizawa
13a3edc4ba
basic fix 2023-03-03 22:18:56 -08:00
Gavin Nishizawa
609b3e5eb3
move person labels to outside bottom 2023-03-02 14:57:13 -08:00
Gavin Nishizawa
d7ad0f39a9
shift whole edge down if horizontal between two non root nodes 2023-02-27 19:54:39 -08:00
Gavin Nishizawa
454196be9b
unless the dst is also on a container 2023-02-27 19:41:59 -08:00