Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Graph optimize #2255

Merged
merged 11 commits into from
Jul 3, 2020
Merged

Graph optimize #2255

merged 11 commits into from
Jul 3, 2020

Conversation

karliss
Copy link
Member

@karliss karliss commented Jun 19, 2020

Your checklist for this pull request

Detailed description

Add optional placement optimization pass which tries to push everything together and ignores the grid after. See details in the code documentation. It gets applied to wide narrow and medium modes.

The gridAAA, gridAAB, gridABA, ... modes were added mostly for preparing the comparison shots and choosing which configurations to expose as narrrow, medium, wide. They are not shown in release mode.

Test plan (required)

  • Look at a bunch of different functions in graph view using .
  • Switch between horizontal and vertical layout 4 times, make sure arrow direction is correct
  • Open graph options, change each spacing to unique value, reopen settings make sure values are correctly restored

Here are some before and after comparison.

row_align
wide_column

Closing issues

@karliss
Copy link
Member Author

karliss commented Jun 19, 2020

Remaining work

  • increasesing horizontal block spacing causes edges to be moved to the side. Might be caused by mixup between block and edge spacing.
  • opening graph settings doesn't proprerly load saved graph spacing settings
  • choose which of the 8 modes to expose. Test code added.
  • update dimensions
  • arrow direction sometimes not switched when switching between horizontal and vertical direction

@karliss karliss marked this pull request as ready for review June 23, 2020 12:36
@karliss karliss merged commit 8c52627 into rizinorg:master Jul 3, 2020
NirmalManoj pushed a commit to NirmalManoj/cutter that referenced this pull request Jul 15, 2020
Add optional placement optimization pass which tries to push everything together and ignores the grid.
karliss referenced this pull request in karliss/cutter-docs Aug 15, 2020
Add optional placement optimization pass which tries to push everything together and ignores the grid.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants