Le funzioni DIESEL effettuano il richiamo, il calcolo e la visualizzazione dello stato.
Per tutte le funzioni è possibile utilizzare al massimo 10 parametri, incluso il nome della funzione stessa.
Funzione | Descrizione/Esempio |
---|---|
+ (addizione) |
Restituisce la somma dei numeri val1 , val2 , …, val9 . $(+, val1 [, val2, …, val9]) Se lo spessore corrente è impostato su 5, la stringa DIESEL riportata di seguito restituisce 15. $(+, $(getvar, thickness), 10) |
- (sottrazione) |
Restituisce il risultato della sottrazione da val1 dei numeri da val2 a val9 . $(-, val1 [, val2 , …, val9]) |
* (moltiplicazione) |
Restituisce il risultato della moltiplicazione dei numeri val1 , val2 , …, val9 . $(*, val1 [, val2, …, val9]) |
/ (divisione) |
Restituisce il risultato della divisione del numero val1 per val2 , …, val9 . $(/, val1 [, val2, …, val9]) |
= (uguale a) |
Se i numeri val1 e val2 sono uguali, la stringa restituisce 1, altrimenti restituisce 0. $(=, val1, val2) |
< (minore di) |
Se il numero val1 è minore di val2 , la stringa restituisce 1, altrimenti restituisce 0. $(<, val1, val2) L'espressione che segue ottiene il valore corrente di HPANG. Se tale valore è minore di quello memorizzato nella variabile di sistema USERR1, viene restituito 1. Se in USERR1 è memorizzato il valore 10.0 e l'impostazione corrente di HPANG è 15.5, la stringa che segue restituisce 0. $(<, $(getvar, hpang), $(getvar, userr1)) |
> (maggiore di) |
Se il numero val1 è maggiore di val2 , la stringa restituisce 1, altrimenti restituisce 0. $(>, val1, val2) |
!= (diverso da) |
Se i numeri val1 e val2 non sono uguali, la stringa restituisce 1, altrimenti restituisce 0. $(!=, val1, val2) |
<= (minore di o uguale a) |
Se il numero val1 è minore o uguale a val2 , la stringa restituisce 1, altrimenti restituisce 0. $(<=, val1, val2) |
>= (maggiore di o uguale a) |
Se il numero val1 è maggiore o uguale a val2 , la stringa restituisce 1, altrimenti restituisce 0. $(>=, val1, val2) |
and |
Restituisce l'AND logico a livello bit degli interi da val1 a val9 . $(and, val1 [, val2,…, val9]) |
angtos |
Restituisce il valore angolare nel formato e con la precisione specificati. $(angtos, value [, mode, precision]) Modifica il value dato come angolo nel formato specificato da mode e precision , come definito per l'analoga funzione AutoLISP. Se mode e precision vengono omessi, verranno utilizzati i valori correnti scelti dal comando UNITA. Nota: AutoLISP non è disponibile in AutoCAD LT for Mac OS.
È possibile applicare i seguenti valori di modalità:
|
Edtime |
Restituisce l'ora e la data formattate in base ad un determinato modello. $(edtime, time, picture) Modifica la data del calendario giuliano fornita da time , ottenuta ad esempio da $(getvar,date) secondo il picture fornito. picture è costituito da frasi di formato sostituite da rappresentazioni specifiche della data e dell'ora. I caratteri non interpretabili come frasi di formato vengono copiati senza modifiche nel risultato di $(edtime) . Le frasi di formato vengono definite come mostrato nella tabella riportata di seguito. Ad esempio, si supponga che la data e l'ora siano sabato 5 settembre 1998, 4:53:17.506. Di seguito sono riportati gli esempi di output e le frasi di formato per edtime corrispondenti alla data e all'ora indicate:
Digitare l'intera frase AM/PM come mostrato nella tabella precedente. Se AM viene usato da solo, la A verrà letta letteralmente e la M restituirà il mese corrente. Se nel modello compare una qualsiasi frase AM/PM, le frasi H e HH restituiranno l'ora nel formato a 12 ore (12:00:12 59:1:00) anziché nel formato a 24 ore (00:00-23:59). L'esempio riportato di seguito utilizza la data e l'ora della tabella precedente. Notare che la virgola deve essere specificata tra virgolette perché viene letta come separatore di argomenti. $(edtime, $(getvar,date), DDD"," DD MON YYYY - H:MMam/pm) Restituisce quanto riportato di seguito. Sab, 5 Set 1998 -4:53am Se time è 0, vengono utilizzate la data e l'ora in cui è stata eseguita la macro più esterna. Ciò evita chiamate multiple lunghe e che richiedono molto tempo a $(getvar,date) e garantisce che tutte le stringhe composte da macro $(edtime) multiple utilizzino la stessa ora. |
eq |
Se le stringhe val1 e val2 sono identiche, la stringa restituisce 1, altrimenti restituisce 0. $(eq, val1, val2) L'espressione che segue ottiene il nome del layer corrente. Se tale nome corrisponde al valore di stringa memorizzato nella variabile di sistema USERS1 (USERS1-5), viene restituito 1. Il presupposto è che in USERS1 sia memorizzata la stringa "PART12" e che il layer corrente sia identico. Nota: Le variabili di sistema USERS1-5 non sono disponibili in AutoCAD LT for Mac OS.
$(eq, $(getvar, users1), $(getvar, clayer)) Restituisce quanto riportato di seguito. 1 |
Eval |
Passa la stringa str al programma di valutazione DIESEL e restituisce il risultato della valutazione. $(eval, str) |
fix |
Tronca il numero reale value ad un intero eliminando eventuali parti frazionarie. $(fix, value) |
Getenv |
Restituisce il valore della variabile di ambiente varname . $(getenv, varname) Se non è definita alcuna variabile con quel nome, viene restituita la stringa nulla. |
Getvar |
Restituisce il valore della variabile di sistema con il varname specificato. $(getvar, varname) |
if |
Valuta le espressioni in base a determinate condizioni. $(if, expr, dotrue [, dofalse]) Se expr è diversa da zero, valuta e restituisce dotrue . Altrimenti, valuta e restituisce dofalse . Notare che la parte non scelta da expr non viene valutata. |
Index |
Restituisce la porzione specificata di una stringa delimitata da virgole. $(index, which, string) Si presume che l'argomento string contenga uno o più valori delimitati dal carattere di separazione degli argomenti delle macro, cioè la virgola. L'argomento which consente di selezionare quale di questi valori deve essere estratto, con 0 definito per il primo elemento. Questa è la funzione utilizzata più di frequente per estrarre i valori delle coordinate X, Y o Z dalle coordinate del punto restituite da $(getvar). Le applicazioni possono utilizzare questa funzione per richiamare valori memorizzati come stringhe delimitate da virgole dalle variabili di sistema USERS1-5. Nota: Le variabili di sistema USERS1-5 non sono disponibili in AutoCAD LT for Mac OS.
|
nth |
Valuta e restituisce l'argomento selezionato da which . $(nth, which, arg0 [, arg1,…, arg7]) Se which è 0, nth restituisce arg0 e così via.. Notare la differenza tra $(nth) e $(index) ; $(nth) restituisce alla funzione una di una serie di argomenti, mentre $(index) estrae un valore da una stringa delimitata da virgole trasmessa passata come singolo argomento. Gli argomenti non selezionati da which non vengono valutati. |
or |
Restituisce l'OR logico a livello bit degli interi da val1 a val9 . $(or, val1 [, val2,…, val9]) |
Rtos |
Restituisce il valore reale nel formato e con la precisione specificati. $(rtos, value [, mode, precision]) Modifica il value dato come numero reale nel formato specificato da mode e precision. Se mode e precision vengono omessi, verranno utilizzati i valori correnti selezionati con il comando UNITA. |
Strlen |
Restituisce la lunghezza in caratteri di string . $(strlen, string) |
Substr |
Restituisce la sottostringa di string , a partire dal carattere start e con il numero di caratteri specificato nell'argomento length . $(substr, string, start [, length]) I caratteri nella stringa vengono numerati a partire da 1. Se l'argomento length viene omesso, verrà restituita tutta la lunghezza rimanente della stringa. |
Upper |
Restituisce la string convertita in lettere maiuscole secondo le regole locali correnti. $(upper, string) |
xor |
Restituisce il XOR logico a livello bit degli interi da val1 a val9 . $(xor, val1 [, val2,…, val9]) |