我特别要解决的不仅仅是图形的布局,而且当用户选择图形节点并开始在屏幕区域周围拖动它时,必须不断重新绘制线条以反映它的外观if用户要释放该节点。我想这是布局算法的一部分?
另外,有些应用程序有点花哨,不仅以漂亮的曲线方式绘制线条,而且还以几乎直角的方式围绕方形节点弯曲线条。请参阅附图并记住,当拖动节点时,线条将被绘制为行进的蚂蚁,并很好地重新排列,同时保留其弯曲样式。
替代文本 http://img260.imageshack.us/img260/5458/nodesr.png http://img260.imageshack.us/img260/5458/nodesr.png
如果你的图表不是非常完整,那么你不需要为此使用额外的奇特算法,而只需使用一些常识即可。
用矩形网格覆盖表面,然后找到一种方法,沿着网格线以最少角度连接到带有直线的盒子:如果盒子不在同一网格线上,并且您不关心连接的位置,则需要如果中间没有其他节点,则为一个角度。如果有例如您至少需要多一个角度的节点。
作为更完整图表的第二步,添加代码不仅可以优化最少的边数,还可以优化最小的线长度。如果您的图表不是非常完整,那么就应用程序响应而言,这应该很难被注意到。
为了获得额外的视觉效果,请考虑双腿的长度并检查与表面上其他物体的交叉点。我会使用 90° 圆饼并调整圆的半径(显然不是上面所做的)——对于较长的腿,半径应该更大。也许您正在使用的工具包可以在这里帮助您。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)