Funzione che permette di eseguire una polinomiale del terzo ordine.
Sono impostabili due camme e tramite un opportuno parametro par è possibile passare da una camma all'altra.
Sintassi |
real mv_cam (real xCurr, i32 nSegm1, stru_matcam stru1 [, real par=0] [, i32 nSegm2=0] [, stru_matcam stru2=NULL] ) |
||||||||
---|---|---|---|---|---|---|---|---|---|
xCurr |
Valore corrente del master (ascissa). |
||||||||
nPoints1 |
Numero di punti di cui è composta la prima camma polinomiale. Deve corrispondere alla lunghezza dell'array di stru1. |
||||||||
stru1 |
Array di strutture di tipo stru_matcam contenente i valori della prima camma. NOTA: Deve essere inizializzato come array. |
||||||||
par |
Parametro miscelatore che permette di passare tra le due camme. (opzionale, default 0)
|
||||||||
nPoints2 |
Numero di punti di cui è composta la seconda camma polinomiale. (opzionale, default 0) Deve corrispondere alla lunghezza dell'array di stru2. |
||||||||
stru2 |
Array di strutture di tipo stru_matcam contenente i valori della seconda camma. (opzionale, default NULL) NOTA: Deve essere inizializzato come array. |
||||||||
Risultato |
Valore aggiornato del risultato, corrispondente alle coordinate y della camma. Il risultato viene calcolato come: dx1 = xCurr - xInitial1 dx2 = xCurr - xInitial2 risultato = (((a1*dx1^3) + (b1*dx1^2) + (c1*dx1) + d1) * (1-par)) + (((a2*dx2^3) + (b2*dx2^2) + (c2*dx2) + d2) * par) |
||||||||
Validità |
Rule. |
||||||||
Note |
I parametri a, b, c, d devono essere forniti in ingresso alla funzione. |
Esempio di utilizzo:
Per un esempio concreto vedi in ambiente RDE: Workspace -> Speciali -> Libreria degli esempi. |