【问题标题】:GoJS bendpoints to shifting pointsGoJS 弯曲点到移动点
【发布时间】:2016-06-17 12:59:10
【问题描述】:

我有一个简单的图表,我正在尝试实现连接线将具有“弯点”或“转移点”,但该图表忽略了我的绑定(“点”)。我在监督什么吗?

链接连接 JSON:

[{"id":"Id-4db7b23b","from":"Id-fd544004","to":"Id-a94b6967","label":"","strokewidth":1,"font":"8px Arial","fontcolor":"rgb(0,0,0)","fillcolor":"rgb(238,238,238)","style":"solid","arrowhead":"empty","bendpoints":[["335","363"],["550","234"]]}]

其中弯曲点是 X/Y 值。

源图:http://jsfiddle.net/rb7nyxfd/42/

【问题讨论】:

    标签: gojs


    【解决方案1】:

    两个问题:如果你使用的是Model.fromJson,链接数据属性需要命名为“points”,格式需要是数字的Array,而不是Array of Arrays字符串。所以...

    将链接的绑定更改为:new go.Binding("points", "points")

    将链接数据更改为:"points":[335,363,550,234]

    【讨论】:

    • 这只会改变连接线的方向,不会增加额外的点。见:i.imgur.com/0HeH4aY.png
    • Link.points 始终持有整个路线。如果您将绑定设置为双向绑定,则模型将始终具有完整的点列表,包括用户可能插入的任何点。
    • 但话又说回来,它仍然只会改变连接线的方向,而不是它自己的移位点。请参阅:jsfiddle.net/rb7nyxfd/43
    • 如果您将 Bi​​nding 更改为:new go.Binding("points", "points").makeTwoWay() 并且如果您在 Link 上设置了 { reshapable: true, resegmentable: true },那么用户将能够沿选定的链接路径添加、移动和删除中间点链接,data.points 属性将自动更新。然后,当您调用 Model.toJson 时,PointList 将被写为数字数组。
    • 谢谢。我已经开始工作了。是否有重新计算点的功能,以便起点和终点彼此最接近,而不是左上角?有关演示,请参阅 jsfiddle.net/rb7nyxfd/44
    猜你喜欢
    • 2015-01-10
    • 2010-12-23
    • 2019-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多