Plan de métro interactif

brigitte666 Messages postés 9 Date d'inscription jeudi 15 mars 2012 Statut Membre Dernière intervention 7 juin 2012 - 15 mars 2012 à 17:13
ehjoe Messages postés 728 Date d'inscription samedi 4 avril 2009 Statut Membre Dernière intervention 30 mars 2014 - 16 mars 2012 à 01:08
Bonjour,

J'aimerais réaliser le plan interactif d'un métro. L'utilisateur clique sur une station de départ (un Button) puis sur une station d'arrivée, et le programme affiche l'itinéraire le plus court, avec changements éventuels.

Pour cela, je voudrais attribuer à chaque bouton la(les) ligne(s) à laquelle il appartient, mais je ne sais pas comment faire.

Quelqu'un aurait-il une idée?

Merci d'avance
A voir également:

4 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 220
15 mars 2012 à 17:23
Bonjour,
Une suggestion (mais me parait très gourmande) : une collection par bouton.
Une autre (moins lourde) : mettre les stations dans une chaîne de caractères dans la propriété Tag (genre : toto, tata, titi) à ensuite transformer (au click) en Array par split.

En appelant ton attention sur le fait que je ne fais là que répondre à :
Pour cela, je voudrais attribuer à chaque bouton la(les) ligne(s) à laquelle il appartient


Ce qui ne veut absolument pas dire que je trouve ta méthode adaptée !

Il est vraisemblable qu'il serait préférable de penser à d'autres méthodes (utilisation de vecteurs).



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
cs_ShayW Messages postés 3258 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 56
15 mars 2012 à 18:13
Salut
pas facile
ce ne sont pas seulement les boutons et les cliques mais le code derriere
le plus important est la structure de donnée
comment representer le réseau
peut etre par un graph
ici

j'ai vu le meme challenge
ici

Bon courage
0
ehjoe Messages postés 728 Date d'inscription samedi 4 avril 2009 Statut Membre Dernière intervention 30 mars 2014 6
16 mars 2012 à 00:34
Bonjour brigitte n°666,

J'ai déjà fait ça mais en électronique du temps du wraping...

Alors le principe est par exemple de naviguer sur la ligne de départ afin de trouver si l'arrivé y est, idem pour la ligne d'arrivée, sinon au pire tu peux aller jusqu'à deux changements. Pour le reste il faut que tu organises ça de telle façon que tu puisses aussi mémoriser et retrouver les correspondances pour chaque ligne, ainsi, si l'arrivé et le départ ne se trouvent pas sur la même ligne, ensuite tu vas chercher les lignes qui correspondent avec les deux de base, etc...

Ayant fait une carrière de conducteur de train, ben on ne calcule pas au plus court, mais selon l'heure, s'il y a beaucoup de trains il faut privilégier les changements, et s'il y a peu de trains, provolégier le contraire, quand c'est possible (interstation moyenne 1,5 mn ; correspondance moyenne 5 mn).

Mais, et notamment si c'est pour Paris, tu as des plans qui font ça sur le Net, alors tu irais plus vite avec un WebBrowser en te bnranchant sur le site... ou même directement par adresse http...

Cordialement, Joe.
0
ehjoe Messages postés 728 Date d'inscription samedi 4 avril 2009 Statut Membre Dernière intervention 30 mars 2014 6
16 mars 2012 à 01:08
Exemple pratique sur le métro de Paris :

source = Lamark 12
cible = Wagram 3

ligne 12
(Pte Chapelle)? Marcadet(12/4)? Lamark 12? Pigalle 12/2? (Mie d'Issy)
- Tu remontes vers pte Chapelle = pas de cible
- Tu descends vers Issy = pas de cible
- Tu remontes vers Chapelle = à Marcadet 12/4 tu vois qu'elle relie la 3, donc ok.
- Tu descends vers Issy = à Pigalle 12/2 tu vois qu'elle coupe la 3, donc ok.

- Depuis Marcadet 4 tu remonte vers clignancourt = pas de ligne 3
- Depuis Marcadet 4 tu descends vers Orléans ligne 3 ok (Réaumur) 7 stations
- Depuis Réaumur tu va vers Champéret = pas de cible
- Depuis Réaumur tu va vers Levallois = cible Wagram à 10 stations

Trajet UN 17 station + 1 correspondance (cible vers Chapelle, change Lamark 4, dir Orléans, change Réaumur, dir Levallois, stop Wagram, temps 10 * 1,5 + 5 20 minutes.

Trajet DEUX (cible vers Issy, change Pigalle 2, dir Dauphine, change Villiers, dir Levallois, cible Wagram ok. Soit 8 station 1,5 * 8 12 + 2 change = 10 total 22 minutes.
Le temps UN sera appliqué aux heures creuses, et le temps DEUX aux heures d'affluence (changement qui n'est plus de 5 mais de 2 env)? 16 minutes au total.

?

Cordialement, Joe.
0
Rejoignez-nous