Funzioni DIESEL - Riferimenti

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à:
  • 0, per gradi
  • 1, per gradi/minuti/secondi
  • 2, per gradi centesimali
  • 3, per radianti
  • 4, per unità topografiche
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:
  • D - 5
  • DD - 05
  • DDD - Sab
  • DDDD - Sabato
  • M - 9
  • MO - 09
  • MON - Set
  • MONTH - Settembre
  • YY - 98
  • YYYY - 1998
  • H - 4
  • HH - 04
  • MM - 53
  • SS - 17
  • MSEC - 506
  • AM/PM - AM
  • am/pm - am
  • A/P - A
  • a/p - a

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])