La «proglet» grapheEtChemins.

Cliquer ici pour faire l'activité.
Cliquer ici pour lire le tutoriel.
Cette proglet permet de s’approprier les différents éléments caractéristiques d’un graphe, en vue de saisir les algorithmes qui en font usage, comme par exemple, l'algorithme du plus court chemin.
Un graphe est un ensemble de points, dont certaines paires sont directement reliées par un lien. Ces liens peuvent être orientés, d'un point vers un autre ou vice versa. Dans le cas contraire, les liens sont symétriques, et le graphe est non-orienté. Généralement, les points sont appelés les sommets ou les nœuds. Les liens sont appelés arêtes dans les graphes non-orienté et arcs dans un graphe orienté. (Wikipedia)
Pour construire et manipuler un graphe, il faut utiliser la construction javascool. Toutes ces fonctions sont accessibles par l'interface, ou par des fonctions programmable:

// Ajouter ou modifier un noeud existant au graphe:

addNode(String n, int x, int y)
où:

// Obtenir un noeud à partir d'une position:

String n =getClosestNode(int x, int y)
où:

// Détruire un noeud:

removeNode(String n)
où:

// Obtenir la liste de tous les noeuds:

String[] Listn_ = getAllNodes()
où:

// Obtenir la liste des noeuds en lien avec un noeud spécifique:

String[] Listn_ = getNodes(String n)
où:

// Ajouter ou modifier un lien existant entre deux noeuds:

addLink(String nA, String nB, double p)
où:

// Détruire un lien existant entre deux noeuds:

removeLink(String nA, String nB)
où:

// Questionner si deux noeuds sont liés:

boolean a = isLink(String nA, String nB)
où:

// Obtenir le poids d'un lien entre deux noeud:

double p = getLink(String nA, String nB)
où:
Un exemple d'utilisation se fait lors du lancement de la proglet avec une fenêtre d'interaction.
Un exemple de programme d'utilisation est disponible ici.
Cette «proglet» est un composant logiciel ouvert dont documentation et code-source sont disponibles ici