Réflexions avec YB sur l'algo de génération de routes.
This commit is contained in:
parent
aaaa713889
commit
aac7fec8fa
6
roads.c
6
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();
|
||||
|
|
17
roads.md
17
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.
|
||||
|
|
Loading…
Reference in New Issue
Block a user