boostorg / boostorg/graph

Pass port information to BGL

オープン
#419 コメント 2 件 リアクション 1 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
392
フォーク
239
平均マージ
1日 11分
マージ済み PR(30日)
20

説明

I read in section "Future Work" of [`boost::read_graphviz()`](https://www.boost.org/doc/libs/1_87_0/libs/graph/doc/read_graphviz.html):
> - Passing port information to BGL.
> [...]

I couldn't find any related ongoing work on Github:
- Is someone working on this already?
- Is this still something that BGL would want to implement?

I would be interested in the feature, and I would even be interested in implementing it myself if nothing's already being done. That being said, I have zero familiarity with boost's code base, so I'd be interested in getting some pointers as to how you would like to get it done.

With ports, I understand that edges now connect ports, and not nodes... Plus, ports are optional, so we'd need to have a default one. Without being familiar with the code base, I guess this change will require a not-so-small patch.

As for the use case, (IMO) it's especially useful to draw network layouts (with information like "which port of device X is connected to which port of device Y").

```dot
graph {
node [shape=record];

rankdir=LR

0 [label="switch 1|{eth1|eth2|eth3|eth4}"];
1 [label="switch 2|{eth1|eth2|eth3|eth4}"];
2 [label="switch 3|{eth1|eth2|eth3|eth4}"];

0:eth1 -- 1:eth1;
1:eth2 -- 2:eth1;
2:eth2 -- 0:eth2;
}
```

![Image](https://github.com/user-attachments/assets/ab0d488f-1bac-488a-8581-f0aadc5eba0b)

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。