Une petite macro qui permet de calculer une valeur précise entre une valeur min et une valeur max sans passer par un tableau de valeurs. J'en ai eu besoin dans le calcul des points de passage d'une courbe en 3D (un paramètre t allant de -Pi à Pi). Bien sur, il y a plein d'autre possibilité d'utilisation.
A+
Guimauve
Code : Tout sélectionner
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
; Nom du projet : LinearlySpacedValue
; Nom du fichier : LinearlySpacedValue.pb
; Version du fichier : 1.0.0
; Programmation : OK
; Programmé par : Guimauve
; Date : 12-09-2010
; Mise à jour : 12-09-2010
; Code PureBasic : 4.51
; Plateforme : Windows, Linux, MacOS X
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Macro LinearlySpacedValue(IncrementID, IncrementMax, MinValue, MaxValue)
(MinValue + (MaxValue - MinValue) * (IncrementID / IncrementMax))
EndMacro
IncrementMax = 15
a.d = 4.0 ; +/- le rayon
b.d = 6.0 ; +/- l'étirement
Decimal.b = 6
Debug "; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"
Debug "; Approximation de la courbe Horoptère"
Debug ""
Debug "[x, y, z]"
For Index = 0 To IncrementMax
t.d = LinearlySpacedValue(Index, IncrementMax, -#PI, #PI)
Debug "[" + StrD((2*a)/(1+t*t), 6) + ", " + StrD(b*t, 6) + ", " + StrD((2*a*t)/(1+t*t), 6) + "]"
Next
; <<<<<<<<<<<<<<<<<<<<<<<<<<
; <<<<< FIN DU FICHIER <<<<<
; <<<<<<<<<<<<<<<<<<<<<<<<<<