www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit aac7fec8fabd3a5fb84c7f77bddc6183ed633b30
parent aaaa71388914fd65446bd6501a17a632519d0062
Author: Yoann <yoann.b87@voila.fr>
Date:   Mon, 17 Oct 2011 16:08:55 +0200

Réflexions avec YB sur l'algo de génération de routes.

Diffstat:
Mroads.c | 6++++--
Mroads.md | 17+++++++++++------
2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/roads.c b/roads.c @@ -30,13 +30,15 @@ int main() { Vertex points[] = { { .x=10, .y=10 }, { .x=790, .y=10 }, + { .x=600, .y=300 }, { .x=790, .y=590 }, { .x=10, .y=590 }, }; + int n = 5; svg_start(800,600); int i; - for (i = 0; i < 4; i++) { - svg_line(&(points[i]), &(points[(i+1)%4])); + for (i = 0; i < n; i++) { + svg_line(&(points[i]), &(points[(i+1)%n])); } roads(points); svg_end(); diff --git a/roads.md b/roads.md @@ -58,11 +58,11 @@ Comme une grille, mais les angles ne sont pas vraiment à 90°, et il y a beaucoup de longues rues dans l'une ou l'autre des directions. .________________________. - | | | | | - |___|________|______|____| - | | |______| - |_________|_______| | - |______|__________|______| + | | | | | + |___|________|______|____| + | | |______| + |_________|_______| | + |______|__________|______| TODO : trouver un algo pour générer des « murs » @@ -86,7 +86,7 @@ monter ou descendre très légèrement pour rejoindre une autre ligne. * Partir d'un point, et choisir le point à X de distance qui minimise le dénivellé -* Condinuer à partir du point ainsi créé, en s'interdisant les retours +* Continuer à partir du point ainsi créé, en s'interdisant les retours en arrière trop brutaux * Arrêter la ligne quand le dénivellé devient trop important, ou quand on rejoint une autre ligne. @@ -128,3 +128,8 @@ Intérieur d'un polygone Pouvoir sélectionner aléatoirement des points à l'intérieur d'un polygone (pour pouvoir faire les centres des réseaux concentriques par exemple). + +Algo déformation de coordonées +============================== + +Partir d'une grille idéale carrée et appliquer des déformations de coordonnées dessus, plus une fonction de densité de points (taille des bâtiments). Dé-transformer la fonction de densité de points, l'utiliser pour générer la grille parfaite avec des densités différentes, puis transformer cette grille.