Propagation

DescriptionPropagation est un PathFinder opérant sur une grille (la feuille de calcul) 2D ou 3D de points (les cellules de cette feuille) pondérés. Un PathFinder est un outil traitant du problème mathématique du plus court-chemin.
Propagation gère :
  • Les grilles 2D et 3D. Dans ce dernier cas des grilles 2D sont empilées verticalement dans la feuille de calcul avec un interligne d’une ligne.
  • Les modes de cheminement « adjacent » (4 carrés partageant une arête avec un carré central en 2D ; 6 cubes partageant une face avec un cube central en 3D) et « périphérique » (8 carrés autour du carré central ou 26 cubes entourant un cube central).
  • Les points de coût infini donc infranchissables (toute valeur inférieure à zéro est interprétée comme tel).
  • Les points gratuits (valeur = 0) et les points coûteux (valeurs > 0 de type Integer).

Rien de neuf donc par rapport aux version précédentes de Propagation, cependant :- Propagation v2.1 est beaucoup plus rapide que sa version précédente. Une grille 2D de 200x200 en mode périphérique (plus long à calculer que celui adjacent) est dorénavant solvée en à peine plus d’une seconde.

Les module de Pathfinding 2D et 3D (respectivement sfPathFinder2D et sfPathFinder3D) sont devenu d’un réemploi très simple, vous exportez un de ces modules dans votre projet et aurez à ajuster un nombre réduit de variables (toutes précédées de la séquence de commentaire : ‘#) et le tour est joué. Le module 2D comporte une procédure : Sub VotreCode() minimaliste utilisant les 3 fonctions nécessaires au pathfinding. (Swallow pour la lecture des données de la WorkSheet et leur incorporation dans des objets de type personnalisé Squares(x, y) (ou Cubes(x, y, z) en 3D). pfPath pour le calcul du plus court-chemin qui retourne une chaine de caractères correspondant aux cellules concernées. Et enfin pfRange pour le renvoi d’un objet Range contenant les cellules empruntées par le chemin (similaire à Range(« A1, B1, … ») mais sans la limitation de son argument à 255 caractères au maximum). Vous pourrez également vous inspirer de la procédure : « Propagation() » et des fonctions TracePath contenues dans d’autres modules.

Les points de départ et d’arrivée ne sont plus matérialisés par les lettres « S » et « A » mais pas leur couleur rouge vif et rouge foncé. Cela aussi facilitera le réemploi du code pour vos grilles que vous n’aurez plus à modifier en conséquence.

Le point d’arrivée est devenu optionnel dans ce cas la distance de tous les points de la grille par rapport au point de départ est calculée. C’est la cellule active qui est considérée comme point d’arrivée, vous pouvez la déplacer et avoir un aperçu quasi immédiat du chemin la reliant au point de départ.

Pour toute question, suggestion ou commentaire rendez-vous sur la page de cette application sur le forum.
VersionV2.1
TypeFreeware
AuteurStéphane Fillon
Post sur le forumAfficher
Ajouté le09.09.2020
Mis à jour le24.02.2024
Téléchargements390
Téléchargerpropagation-v2-1.xlsm
Aperçupropagation excel