nabil6391 / graphview

Flutter GraphView is used to display data in graph structures. It can display Tree layout, Directed and Layered graph. Useful for Family Tree, Hierarchy View.
MIT License
415 stars 115 forks source link

Improve layout algorithm to resolve node overlaps for Sugiyama #104

Closed nabil6391 closed 1 year ago

nabil6391 commented 1 year ago

This PR introduces several optimizations and improvements to the layout algorithm, specifically focusing on resolving node overlaps within the graph. A new resolveOverlaps function has been implemented to ensure the nodes maintain the required separation. This function takes into account the position value inside nodeData to detect and resolve overlaps. Additional improvements have been made to the placeBlock function to enhance the overall performance of the layout algorithm. These changes result in a more efficient and visually appealing graph layout.