1

我正在尝试绘制具有特定边缘样式的边缘,而不是默认样式。问题是我在一个单元格和一个点之间绘制一条边,这样边看起来就好像从一个单元格到图中的空间一样。

edge = graph.insertEdge(parentCell, null, label, myCell,null);

我得到例外:

"java.lang.ClassCastException: com.mxgraph.util.mxPoint cannot be cast to com.mxgraph.model.mxICell"

当我使用此代码时:

mxGeometry geoCell = myCell.getGeometry();
mxPoint termPoint = new mxPoint(geoCell.getX() - (120 - (offset)), geoCell.getY() + 100);
graph.insertEdge(parentCell, null, "", myCell, termPoint, "edgeStyle=elbowEdgeStyle;elbow=horizontal;orthogonal=0;");

我正在使用 JGraphX 1.10。有什么东西我可以用不会出错的点来代替这个点,并给出连接空间的边缘的外观吗?

4

1 回答 1

2

尝试在边缘的几何形状上设置终点,您不能将该点用作源终端,因为它应该是一个单元格(见例外):

edge.geometry.setTerminalPoint(termPoint, true);

如果您试图在终端和边缘之间实现一个空间,您还可以将STYLE_PERIMETER_SPACING用于顶点或STYLE_SOURCE/TARGET_PERIMETER_SPACING用于边缘之一。

于 2013-12-05T08:22:00.797 回答