Renommer les villages - numérotation

  • Auteur de la discussion Ichiro
  • Date de début

DeletedUser

Guest
J'ai une suggestion pour le script pour renommer les villages.

Celui-ci permet actuellement de renommer en fonction de la distance d'un village, mais cette fonction est surtout utile lorsque le nombre de villages est faible. Lorsque l'on a beaucoup de villages il est peu probable d'avoir un village privilégié pouvant servir de référence.

C'est pourquoi je propose de générer des indices en fonction de la position sur une Courbe de Hilbert (ou toute autre courbe de remplissage).
hilbert6g.gif


L'idée c'est de recouvrir le monde d'une telle courbe et de générer pour chaque village un numéro correspondant à la position sur la courbe.
Deux villages proches auront tendance à avoir des indices proches.

Voici le code javascript permettant de calculer l'indice selon les coordonnées:


Exemple:
CoordonnéeIndice
500,500174624
499,499174602
507,497174668
499,300154101
0,00
999,999698410
Cette methode permet de remarquer que 499|499 est plus proche de 500|500 que ne l'est 507|497 (un tri simple aurait seulement vu que 500|500 et 507|497 commencent tout deux par '50' et les auraient placé proche).

On voit aussi que 499|499 et 499|300 sont éloignés malgré la première coordonnée identique.


La méthode a évidemment ses limites:
CoordonnéeIndice
511,500174693
513,500873883
Ces deux points sont de part et d'autre de la ligne blanche verticale que l'on voit au centre de l'image de la courbe de Hilbert. Ils sont certes proches physiquement mais il y a un long chemin à suivre sur la courbe pour passer de l'un à l'autre.
 
Dernière édition par un modérateur:

DeletedUser15555

Guest
Bonjour,

J'ai retiré le code afin que personne ne l'utilise, puisque seuls les scripts de tw scripts sont autorisé IG.

Cependant, le code est toujours visible par les staffiens, donc dès qu'une suite pourra être donné à ta proposition tu seras prévenu.

Cordialement,
 

gridbal

Comte
Score de réaction
483
Ta suggestion semble un peu trop complexe et ça veut dire qu'il faut un changement dans le jeu pour que le script soit actif.
Je ne suis pas sûr qu'INNO veuille bien le faire pour un script.
Je suis donc contre ta suggestion.

La meilleur solution est d'améliorer l'ancien script afin qu'il classe les villages en fonction de la distance en faisant calculant les vecteurs entre un vivi A et B (ce n'est qu'une idée)
 

DeletedUser

Guest
Le script de franticfranz pourrait être amélioré avec cet algorithme; il ne servirait que à générer les numéro des villages.

Indice calculéAncien nomNouveau nom
162969003 Mulhouse (394|367) C33 001 Mulhouse (394|367) C33
163302005 Belfort (402|360) C34 002 Belfort (402|360) C34
163358004 Lyon (402|372) C34 003 Lyon (402|372) C34
163361006 Sparte (405|372) C34 004 Sparte (405|372) C34
163547002 Grenoble (404|377) C34 005 Grenoble (404|377) C34
163573001 Strasbourg (403|380) C34 006 Strasbourg (403|380) C34
L'indice ne sert ici que à déterminer l'ordre pour regrouper les vivi proches.
Ensuite on peut renuméroter de 001 à XXX (suivant nombre de vivi) afin d'avoir des chiffres plus petit.
 

Manfred

Marquis
Score de réaction
383
Il existe déjà une option pour renommer en fonction de la distance sur le script de renommage de village disponible sur TW-script.
 

DeletedUser

Guest
Script déjà existant à ma connaissance (comme a dit Manfred : renommage en fonction de la distance par rapport à 1 village précis)
 
Haut