Bonjour
je me suis demandé s'il existait d'autres techniques plus performantes pour lisser des terrains ?
Alors il y a plein de facon de lisser, de réaliser des moyennes en fait.
Si j'ai bien compris (ou plutot deviné) pour ton calcul, tu prend 4 ou 8 points autour du point à lisser... tu peux essayer d'en prendre plus en les pondérant :
1 2 3 4
| A[i] = (1/5)*(A[i-2] + A[i-1] + A[i] + A[i+1] + A[i+2]); //sans pondération
A[i] = (1/8)*(A[i-2] + 2*A[i-1] + 2*A[i] + 2*A[i+1] + A[i+2]); //avec pondération
//Exemple donné dans une seule dimension, sinon ca prend trop de place à écrire |
Tu peux aussi -si toutes tes valeurs sont assez grande par rapport à zéro- réaliser une moyenne géométrique :
1 2 3
| A[i] = (1/3)*(A[i-1] + A[i] + A[i+1]); //arithmétique
A[i] = racinecubique(A[i-1] * A[i] * A[i+1]);//géométrique |
Apres quoi, on peut mixer les deux, par exemple :
A[i] = racinecarre(A[i-1]*A[i-1] + A[i]*A[i] + A[i+1]*A[i+1])
Mon conseil : implémenter plusieurs faconde faire et voir la plus rapide / jolie /pratique...
Bon courage
Partager