Le moteur de script possède de manière intrinséque un certain nombre de fonctions mathématiques:
Nom | Rôle | Particularités |
abs(X) | Valeur absolue de X | en maths |X| |
asin(X) | Arc Sinus de X | X [-1 ; 1] ... Résultat [Pi/2 ; Pi/2] en radians. |
acos(X) | Arc Cosinus de X | X [-1 ; 1] ... Résultat [0 ; Pi] en radians. |
atan(X) | Arc Tangente de X | Résultat [Pi/2 ; Pi/2] en radians. |
clamp(X) | Clamp de X | X = max(0,X) et X=min(1,X) |
cos(X) | Cosinus de X | X est fourni en radians. |
cosh(X) | Cosinus Hyperbolique de X | (exp(x)+exp(-x))/2 |
exp(X) | Exponentielle de X | exponentielle X |
int(X) | Partie Entière de X | |
ln(X) | Logarithme Népérien de X | logarithme à base e. N'existe que si X >0 |
log(X) | Logarithme Décimal de X | logarithme à base 10. N'existe que si X >0 |
max(X1,X2) | Maximum de X1 et X2 | |
min(X1,X2) | Minimum de X1 et X2 | |
pow(X,N) | X à la puissance N | |
rnd( ) | Nombre aléatoire | |
sin(X) | Sinus de X | X est fourni en radians. |
sinh(X) | Sinus Hyperbolique de X | (exp(x)-exp(-x))/2 |
sqrt(X) | Racine Carrée de X | |
srnd() | Init Aléatoire | |
tan(X) | Tangente de X | X est fourni en radians. |
tanh(X) | Tangente Hyperbolique de X | tanh(x)=cosh(x)/sinh(x) |
De plus pour les besoins spécifiques de Script Equation Grapher un certain nombre de fonctions ont été ajoutées:
Nom | Rôle | Particularités |
Derivate(Expr) | Dérivée d'une fonction | |
Integral(Expr) | Intégrale d'une fonction | |
Fill3d(Bool) | Remplissage en 3D | Est mémorisé. Doit être remis à 0. Utile seulement pour les courbes de niveau |
Lighting(Bool) | Eclairage en 3D | Est mémorisé. Doit être remis à 0. Utile seulement pour les courbes de niveau |
WireFrame(Bool) | WireFrame en 3D | Est mémorisé. Doit être remis à 1. Utile seulement pour les courbes de niveau |
Translate(X,Y,Z) | Translation de la scène | |
Rotate(Xr,Yr,Zr) | Rotation de la scène | Angles en radians. |
Redraw() | Force le retracé de l'écran | Peut-être utilisé en 2D comme en 3D. Très utile pour les animations. |
Clear(Bool) | Efface l'écran entre 2 frames | Peut-être utilisé en 2D comme en 3D. |
SetColor(R,G,B) | Fixe la couleur de tracé | R(ed) G(reen) et B(lue) valent entre 0 et 255. |
SetRGB(R,G,B) | Fixe la couleur de tracé | R(ed) G(reen) et B(lue) valent entre 0 et 255. comme SetColor |
SetRGBA(R,G,B,A) | Fixe la couleur de tracé et alpha | R(ed) G(reen) et B(lue) A(lpha) valent entre 0 et 255. Alpha est la transparence... |
SetHLS(H,L,S) | Fixe la couleur de tracé | H(ue) en ° . L(ight) et S(aturation) valent entre 0 et 1. |
SetHLSA(H,L,S,A) | Fixe la couleur de tracé et alpha | Comme SetHLS. Alpha est la transparence... |
Print(X) | Affiche X dans les logs | Affichage avec 4 chiffres significatifs |
SnapShot(Name,N) | Prend une image BMP de la scène | Le nom du fichier est NameN.BMP. N, numérique peut évoluer... |
SetTimer(X) | Fixe la valeur en ms du timer | Une fois les timers lancés, appelle la section timer à chaque frame, avant de relancer le tracé. |
KillTimer( ) | Arrète le timer | |
GetTime( ) | Renvoie un temps en ms | temps depuis l'allumage de la machine. A utiliser en relatif |
Modulus(R,I) | Module | R²+I² . Utilisable en complexe comme en arithmétique traditionnelle. A Proscrire en V2 |
ComplexSqr(&R,&I) | Carré complexe | R=R²-I² et I=2RI renvoie le module R²+I². A Proscrire en V2 |
SeminmaxX(Xmin,Xmax) | Bornes d'étude en X (V2.0.1.0) | fixe les limites du domaine d'étude en X. Identique à une action dans la zone de dialogue |
SeminmaxY(Ymin,Ymax) | Bornes d'étude en Y (V2.0.1.0) | fixe les limites du domaine d'étude en Y. Identique à une action dans la zone de dialogue |
SeminmaxZ(Zmin,Zmax) | Bornes d'étude en Z (V2.0.1.0) | fixe les limites du domaine d'étude en Z. Utile pour f(x,y,z)=0 seulement... |
PointsOnly(Bool) | Ne trace que des points | Est mémorisé. Doit être remis à 0. |
PlotXY(x,y) | Tarce un point | Trace un point aux coordonnées X,Y. |
FFT(x0, x1, Nb, Section) | Calcule une FFT | x0, x1 définissent à priori une période. Nb, nombre d'échantillons de la FFT doit être une puissance de 2 (32768 au maximum), et Section est le nom de la section qui décrit la fonction périodique de type y=f(x) sur la période. Ex: FFT(0, 1, 1024, "[Fct]") |
DrawFFT(x, n) | Calcul de la FFTI en x | renvoie la valeur de la transformée de Fourier inverse au point x, en utilisant les coefficients de la FFT jusqu'à l'ordre n. La fonction FFT doit avoir été appelée et la valeur de n doit être inférieur à Nb/2. |
ShowFFTCoefs(Nb) | Ouvre la boite de dialogue de réglage de la FFT. | Permet le réglage des Nb premiers termes de la FFT. |