Java JgraphX如何使一条边将一个顶点连接到另一条边(而不是另一个顶点)?
我希望能够使用一条边连接一个顶点和另一条边,这条边连接两个其他顶点。我想相应地更改代码,以便能够从用户界面进行此连接,就像您对两个顶点所做的那样 为了说明我的目的:我想让箭头顶端的绿色正方形变成蓝色,就像它底部的正方形一样,这表明已经建立了连接 我已经检查了与创建连接和有效终端相关的文档和代码,但我无法实现我需要的行为,即将边缘设置为连接中的有效终端/有效目标的能力。任何帮助都将不胜感激 我不确定在尝试使边缘成为有效的目标/源时,是否应该在这里查看mxGraph.java类Java JgraphX如何使一条边将一个顶点连接到另一条边(而不是另一个顶点)?,java,swing,jgraphx,Java,Swing,Jgraphx,我希望能够使用一条边连接一个顶点和另一条边,这条边连接两个其他顶点。我想相应地更改代码,以便能够从用户界面进行此连接,就像您对两个顶点所做的那样 为了说明我的目的:我想让箭头顶端的绿色正方形变成蓝色,就像它底部的正方形一样,这表明已经建立了连接 我已经检查了与创建连接和有效终端相关的文档和代码,但我无法实现我需要的行为,即将边缘设置为连接中的有效终端/有效目标的能力。任何帮助都将不胜感激 我不确定在尝试使边缘成为有效的目标/源时,是否应该在这里查看mxGraph.java类 public boo
public boolean isValidSource(Object cell)
{
return (cell == null && allowDanglingEdges)
|| (cell != null
&& (!model.isEdge(cell) || isConnectableEdges()) && isCellConnectable(cell));
}
更新:我能够在代码中连接两条边,使用图形的insertEdge方法。然而,我仍在努力在用户界面中实现这种行为。我怀疑要解决您的问题,要么需要我们打破图论和jgraphx的基本规则,要么需要您调整您的目标。如果你能解释一下你需要这种行为的理由,以及你是否能接受任何替代方案,这会有所帮助 在数学中,一条边只能将两个顶点连接在一起或将一个顶点连接到自身。不能使用边将边连接到顶点,jgraphx似乎遵循此设计 如果您更关心图形的流而不是其数学表示,则可以在边相交的所需位置添加新顶点,然后将相应的边连接到相应的顶点。我怀疑这就是你想要的,或者至少是你最好的选择 如果您绝对需要您描述的行为,那么如果您重新定义您的术语并应用一些严肃的抽象和大量的编码,这是可能的。您可能需要在jgraphx中手动实现一个新对象,该对象可以同时作为顶点和边,并定义所有这些组件之间的关系,等等。我不鼓励这样做,jgraphx似乎没有提供替代方案
如果你能帮助它,不要改变图论来处理你的设计。将您的设计更改为使用图论。祝你好运。你可以试试解决办法: 假设你有顶点u,v和t,还有一条连接u,v的边 删除边u、v 添加不可见顶点x 添加边u->x 添加边x->v 添加边t->x
考虑到,你必须从边缘u,x,也许t上移除装饰器,x、 我之所以需要这种行为,是因为我想实现一个扩展的论证框架,该框架由参数-顶点和攻击-边组成,这些边可以很容易地以图形形式表示和使用,从而允许参数顶点攻击另一种攻击。我希望可以更改一些条件,以允许边连接到其他边。花了数小时阅读文档和代码,试图找到这个。更新:我能够使用图中的insertEdge方法连接代码中的顶点和边。这让我希望也许不需要一个全新的班级。然而,我仍然不知道如何在用户界面中引入这种行为。