14-02-2010, 10:24 PM
Peux-tu expliquer un peu la façon dont on utilise cette carte, savoir ce qu'on peut y faire, etc.
Poser ça sur le papier (sur le forum, en l'occurrence) te permettra d'y voir plus clair et nous permettra de t'aider.
À l'évidence, la carte est définie sur 2 dimensions. Le système est donc assez simple. On doit avoir une table planets avec les colonnes suivantes : id, name, owner_id, galaxy_id, x, y.
Pour générer une carte (en terme de stockage de données), il suffit de créer des planètes et de les associer à une galaxie.
Techniquement, tu crées un tableau à deux dimensions puis tu viens poser des galaxies dessus. Un exemple d'algorithme simple :
Après, visuellement, c'est que du HTML et du CSS. Tu génères un bloc pour ton univers, puis dedans tu génères un bloc pour chaque galaxie, puis dans ces blocs tu mets les planètes associées à chaque galaxie. Et tu places tout ça grâce à CSS et les coordonnées que tu as donnés. Tu auras la vue globale de ton univers.
Ensuite, pour faire une vue cible d'une petite zone, c'est une mise à l'échelle d'une petite zone. Une vue relative du type "sur mon rectangle de 500*500, je veux un carré de 40*40 dont le coin supérieur gauche correspond à la case de coordonnées (380; 230).
Après, que tu appelles ça des zones de galaxies, des galaxies, des univers, etc. C'est juste une affaire de nommage de conteneurs.
Sephi-Chan
Poser ça sur le papier (sur le forum, en l'occurrence) te permettra d'y voir plus clair et nous permettra de t'aider.
À l'évidence, la carte est définie sur 2 dimensions. Le système est donc assez simple. On doit avoir une table planets avec les colonnes suivantes : id, name, owner_id, galaxy_id, x, y.
Pour générer une carte (en terme de stockage de données), il suffit de créer des planètes et de les associer à une galaxie.
Techniquement, tu crées un tableau à deux dimensions puis tu viens poser des galaxies dessus. Un exemple d'algorithme simple :
- Tu prends une case de coordonnées aléatoires sur ce tableau ;
- Tu crée une entrée dans ta table de galaxies (appelons-la galaxies), tu lui donnes un nom et les coordonnées de son centre ;
- Tu choisis quelques autres cases aléatoires autour de ce point et pour chacun de ces points, tu crée une entrée dans ta table de planètes (appelons-la planets) en leur donnant l'identifiant de galaxie précédemment créée et les coordonnées de la case ;
Après, visuellement, c'est que du HTML et du CSS. Tu génères un bloc pour ton univers, puis dedans tu génères un bloc pour chaque galaxie, puis dans ces blocs tu mets les planètes associées à chaque galaxie. Et tu places tout ça grâce à CSS et les coordonnées que tu as donnés. Tu auras la vue globale de ton univers.
Ensuite, pour faire une vue cible d'une petite zone, c'est une mise à l'échelle d'une petite zone. Une vue relative du type "sur mon rectangle de 500*500, je veux un carré de 40*40 dont le coin supérieur gauche correspond à la case de coordonnées (380; 230).
Après, que tu appelles ça des zones de galaxies, des galaxies, des univers, etc. C'est juste une affaire de nommage de conteneurs.
Sephi-Chan