Dans un système I Avoir une liste de nœuds qui sont connectés comme dans un graphique normal. Nous connaissons tout le système et toutes leurs connexions et nous avons aussi un point de départ. Tous mes bords ont une direction.Dessiner un graphique à partir d'une liste de nœuds connectés
Maintenant, je veux dessiner tous ces nœuds et bords automatiquement. Le problème n'est pas le dessin réel, mais le calcul des coordonnées (x, y). Donc, fondamentalement, je voudrais dessiner tout ce graphique pour qu'il soit bien.
Mon serait quelque chose structure de données comme:
class node:
string text
List<edge> connections
Il doit y avoir des algorithmes bien connus pour ce problème? Je n'ai pas pu en trouver, mais je peux utiliser les mauvais mots-clés.
Mes pensées:
Une façon serait de positionner notre startnode à (0,0), et ont une constante qui est la "distance". Ensuite, pour chaque voisin, il ajouterait la distance à la position y, et pour chaque nœud qui est voisin, mettre x = distance * n.
Mais cela va vraiment donner beaucoup de problèmes - ce n'est définitivement pas le chemin à parcourir.