我想知道是否有任何众所周知的算法,我应该知道如何在视觉上间隔对象。
例如,LINQ to SQL图表有许多表,但会自动将它们隔开以便于阅读。这是一个“随机放置的地方,如果太靠近/重叠那么移动”类型的算法还是有更多呢?
感谢您的任何建议!
答案 0 :(得分:3)
粗略地说,您可以对对象图进行“连通性”分析,以确定哪些是更重要的;即与其他物体具有更高程度的连通性。那些进入中心。找出您对对象的个别大小,确定剩余的空间量,将其除以要放置的项目数,并根据该数据放置它们。
答案 1 :(得分:1)
看看GraphViz。它可能是现成的,也可能是一个很好的起点。