www

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

commit 471ccdb30fde38a65518505ca4542c25e85ab134
parent bc57c974f73661dc2d8c24bf67f809afc6e3627b
Author: Yoann <yoann.b87@voila.fr>
Date:   Thu, 29 Sep 2011 22:48:03 +0200

Début due code de génération d'un "bruit de Perlin".

Diffstat:
Mroam.c | 22++++++++++++++++++++--
Mroam.h | 4++++
2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/roam.c b/roam.c @@ -1,6 +1,5 @@ #include "roam.h" -#include <stdio.h> -#include <stdlib.h> + /* Implémentation de ROAM * http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.22.1811&rep=rep1&type=pdf * @@ -35,6 +34,25 @@ * */ +/* Permet de récupérer la taille de la base du triangle (hypoténuse).*/ +// TODO Optimisze la fonction pour éviter la racine carée. +int getFirstTriangleSize(Triangle* t) { + return sqrt(((t->vRight->x - t->vLeft->x)^2) + ((t->vRight->y - t->vLeft->y)^2)); +} + +short** PerlinNoise(Triangle* t) { + short **values; + int triangleSize = getFirstTriangleSize(t); + int i; + + values = (short**) malloc(sizeof(short*)*triangleSize); + for(i=0; i<triangleSize;i++) + values[i] = (short*) malloc(sizeof(short)*triangleSize); + + // TODO Yoann : tout le reste. + return values; +} + int get_z(int x, int y) { x = x; /* Unused */ y = y; /* Unused */ diff --git a/roam.h b/roam.h @@ -1,3 +1,7 @@ +#include <stdio.h> +#include <stdlib.h> +#include <math.h> + typedef struct Vertex { int x; int y;