如何让链接在1点保持与单元格或端口的连接?
如果端口是一个圆圈,当移动单元格时,连接到它的链接端移过该圆圈。
我希望能够让它保持在同一点 - 圆圈边缘的中心。
所需:
当我移动牢房时发生了什么:
谢谢。
答案 0 :(得分:1)
如果有人有兴趣,我用以下方法解决了这个问题:
使用2个形状。
portMarkup:
<g class="port port<%= id %>">
<path class="port-body port-magnet"/>
<path class="port-body port-shape"/>
<text class="port-label"/>
</g>
和属性:
'.outPorts .port-shape': {
d: circleFromPath(5)
},
'.outPorts .port-magnet': {
magnet: true
},
'.port-magnet': {
visibility: 'hidden',
d: circleFromPath(1),
transform: 'translate(4, 1)'
}
circleFromPath()
ID是一个自定义函数,它接受一个圆参数并返回一个由SVG
提供的圆的path
(CoffeeScript
:
circleFromPath = (r = 5) ->
d = r * 2
"""
M 0, 0
m #{-r}, 0
a #{r},#{r} 0 1,0 #{d},0
a #{r},#{r} 0 1,0 #{-d},0
"""