【问题标题】:Single ended edge in jGraphjGraph中的单端边
【发布时间】:2013-11-19 01:58:54
【问题描述】:

我正在尝试使用 jGraph 和 Java 绘制有向图,但是我想要一个单端箭头来表示起始节点。

我能想到的唯一可能做到这一点的就是有一个没有用的节点,但可以链接到起始节点,然后使用

将其变为不可见
graph.getModel().setVisible(Node, false)

但是,这也会删除连接 2 个节点的边。

有没有办法绘制只连接到一个节点的边?

【问题讨论】:

    标签: java jgraphx


    【解决方案1】:

    我认为你在正确的轨道上。

    一种方法是将起始节点的不透明度设置为 0,如下例所示:

    public static mxGraph makeHelloWorldGraph() {
        mxGraph graph = new mxGraph();
        Object parent = graph.getDefaultParent();
    
        graph.getModel().beginUpdate();
        try {
            Object v1 = graph.insertVertex(parent, null, "", 20, 20, 80,
                    30,"opacity=0");
            Object v2 = graph.insertVertex(parent, null, "World!", 240, 150,
                    80, 30);
            graph.insertEdge(parent, null, "Edge", v1, v2);
        } finally {
            graph.getModel().endUpdate();
        }
        return graph;
    }
    

    希望对您有所帮助,我自己一直在为这个库而苦苦挣扎。

    【讨论】:

    • 非常感谢,是否有所有这些标签的列表?比如形状和颜色?
    • @Matt 我唯一能找到参考的地方是 mxConstants 的 api 文档。样式键都是 STYLE_[KEYNAME] 的形式,就像在 STYLE_OPACITY 中一样。所以形状是 STYLE_SHAPE,颜色是 STYLE_FILLCOLOR,分别转换为字符串“shape”和“fillColor”。这是一种很难理解的方法,但它确实有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多