Présentation des fonctions DIESEL

Les opérations d'extraction, de calcul et d'affichage de l'état sont effectuées par des fonctions DIESEL.

Toutes les fonctions sont limitées à 10 paramètres, y compris le nom de fonction lui-même.

Fonction Description/Exemple
+ (addition)

Renvoie la somme des nombres val1 , val2 , …, val9 .

$(+, val1 [, val2, …, val9])

Si l'épaisseur active est réglée sur 5, la chaîne DIESEL suivante renvoie la valeur 15.

$(+, $(getvar, thickness), 10)
- (soustraction)

Renvoie le résultat de la soustraction des nombres val2 à val9 de la valeur val1 .

$(-, val1 [, val2 , …, val9])
* (multiplication)

Renvoie le produit des nombres val1 , val2 , …, val9 .

$(*, val1 [, val2, …, val9])
/ (division)

Renvoie le résultat de la division du nombre val1 par val2 , …, val9 .

$(/, val1 [, val2, …, val9])
= (est égal à)

Si les nombres val1 et val2 sont égaux, la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(=, val1, val2)
< (inférieur à)

Si le nombre val1 est inférieur à val2 , la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(<, val1, val2)

L'expression ci-dessous obtient la valeur courante de HPANG ; si cette valeur est inférieure à la valeur stockée dans la variable système USERR1, elle renvoie la valeur 1. Si la valeur 10.0 est stockée dans la variable USERR1 et que le paramètre courant de HPANG est 15.5, la chaîne ci-dessous renvoie la valeur 0.

$(<, $(getvar, hpang), $(getvar, userr1))
> (supérieur à)

Si le nombre val1 est supérieur à val2 , la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(>, val1, val2)
!= (différent de)

Si les nombres val1 et val2 sont différents, la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(!=, val1, val2)
<= (inférieur ou égal à)

Si le nombre val1 est inférieur ou égal au nombre val2 , la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(<=, val1, val2)
>= (supérieur ou égal à)

Si le nombre val1 est supérieur ou égal au nombre val2 , la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(>=, val1, val2)
and

Renvoie l'opérateur logique AND au niveau du bit des nombres entiers val1 à val9 .

$(and, val1 [, val2,…, val9])
angtos

Renvoie la valeur d'angle en utilisant le format et la précision indiqués.

$(angtos, value [, mode, precision])

Modifie la valeur spécifiée sous forme d'angle dans le format indiqué par le mode et la précision , tel que défini pour la fonction AutoLISP analogue. Si vous omettez les valeurs de mode et de précision , la chaîne utilise les valeurs courantes choisies par la commande UNITES.

Remarque : AutoLISP n'est pas disponible dans AutoCAD LT for Mac OS.
Les valeurs de mode suivantes peuvent être appliquées :
  • 0 (degrés)
  • 1 (degrés/minutes/secondes)
  • 2 (grades)
  • 3 (radians)
  • 4 (unités géodésiques)
Edtime

Renvoie la date et l'heure formatées selon une image donnée.

$(edtime, time, picture)

Modifie la date selon le calendrier julien renvoyée par heure (obtenue par exemple de $(getvar,date) suivant l' image donnée). L' image est constituée d'expressions de format remplacées par des représentations de date et d'heure. Les caractères qui ne peuvent pas être interprétés comme des expressions de format sont copiés de façon littérale dans le résultat de $(edtime) . Les expressions de format sont présentées dans le tableau ci-dessous.

Par exemple, supposons que la date et l'heure soient Saturday, 5 September 1998 4:53:17.506, les exemples de sortie et d'expressions de formatage correspondants pour edtime sont les suivants :
  • D - 5
  • DD - 05
  • DDD - Sat
  • DDDD - Saturday
  • M - 9
  • MO - 09
  • MON - Sep
  • MONTH - September
  • 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

Entrez intégralement l'expression AM/PM, telle qu'indiquée dans le tableau précédent. Si vous utilisez l'expression AM seule, le A est lu littéralement et le M retourne le mois en cours.

Si une expression AM/PM apparaît dans l'image, les expressions H et HH modifient l'heure suivant le format 12 heures (12:00-12:59 1:00-11:59) au lieu du format 24 heures (00:00-23:59).

L'exemple ci-dessous utilise la date et l'heure du tableau précédent. Notez que la virgule doit être entre guillemets car elle est lue comme délimiteur de sujet

$(edtime, $(getvar,date), DDD"," DD MON YYYY - H:MMam/pm)

Cette expression renvoie le résultat suivant :

Sam, 5 Sep 1998 - 4:53am

Si l'argument time est égal à 0, la date et l'heure qui s'appliquent sont celles de l'exécution de la macro la plus à droite. Cela évite d'effectuer plusieurs appels longs et fastidieux de la commande $(getvar,date) et garantit que les chaînes composées de plusieurs macros $(edtime) utilisent toutes la même date et la même heure.

eq

Si les chaînes val1 et val2 sont identiques, la chaîne renvoie la valeur 1 ; dans le cas contraire, elle renvoie la valeur 0.

$(eq, val1, val2)

L'expression suivante obtient le nom du calque courant ; si le nom correspond à la valeur de chaîne stockée dans la variable système USERS1 (USERS1-5), l'expression renvoie 1. Supposons que la chaîne "PART12" soit stockée dans USERS1 et que le calque courant soit le même.

Remarque : Les variables système USERS1-5 ne sont pas disponibles dans AutoCAD LT for Mac OS.
$(eq, $(getvar, users1), $(getvar, clayer))

Cette expression renvoie le résultat suivant :

1

Eval

Transmet la chaîne str à l'évaluateur DIESEL et renvoie le résultat de l'évaluation.

$(eval, str)
fix

Tronque la value du nombre réel pour former un nombre entier en supprimant la partie fractionnaire.

$(fix, value)
Getenv

Renvoie la valeur de la variable d'environnement varname .

$(getenv, varname)

Si aucune variable n'est définie sous ce nom, renvoie une chaîne vide.

Getvar

Renvoie la valeur de la variable système définie sous le nom varname .

$(getvar, varname)
if

Evalue les expressions avec condition.

$(if, expr, dotrue [, dofalse])

Si la valeur de expr est non nulle, évalue et renvoie dotrue . Dans le cas contraire, évalue et renvoie dofalse . Veuillez remarquer que le branchement non choisi par expr n'est pas évalué.

Index

Renvoie le membre indiqué dans une chaîne délimitée par une virgule.

$(index, which, string)

Suppose que l'argument chaîne contient une ou plusieurs valeurs délimitées par le caractère délimiteur d'argument de macro, la virgule. L'argument valeur choisit la valeur à extraire, le premier élément étant de rang 0. En général, cette fonction sert à extraire les coordonnées X, Y, ou Z à partir du point renvoyé par $(getvar).

Les applications peuvent utiliser cette fonction pour extraire des valeurs stockées sous forme de chaînes délimitées par des virgules dans les variables système USERS1-5.

Remarque : Les variables système USERS1-5 ne sont pas disponibles dans AutoCAD LT for Mac OS.
nth

Evalue et renvoie l'argument sélectionné par valeur .

$(nth, which, arg0 [, arg1,…, arg7])

Si valeur égale 0, nth renvoie l'argument arg0 , et ainsi de suite. Remarquez la différence entre $(nth) et $(index)  ; $(nth) renvoie un des arguments d'une série à la fonction, tandis que $(index) extrait une valeur d'une chaîne séparée par des virgules transmise comme un argument unique. Les arguments non sélectionnés par valeur ne sont pas interprétés.

or

Renvoie l'opérateur logique OR au niveau du bit des nombres entiers val1 à val9 .

$(or, val1 [, val2,…, val9])
Rtos

Renvoie la valeur réelle dans le format et la précision indiqués.

$(rtos, value [, mode, precision])

Modifie la valeur spécifiée sous forme de nombre réel dans le format indiqué par le mode et la précision. Si vous omettez les valeurs de mode et de précision , la chaîne utilise les valeurs courantes choisies par la commande UNITES.

Strlen

Renvoie la longueur de la chaîne exprimée en nombre de caractères.

$(strlen, string)
Substr

Renvoie la sous-chaîne de chaîne , en commençant au caractère de début ( start ) et en poursuivant selon la longueur indiquée, exprimée en nombre de caractères.

$(substr, string, start [, length])

Les caractères de la chaîne sont numérotés à partir de 1. Si la longueur n'est pas spécifiée, tout le reste de la chaîne est renvoyé.

Upper

Renvoie la chaîne convertie en majuscules selon les règles de la langue en cours.

$(upper, string)
xor

Renvoie l'opérateur logique XOR au niveau du bit des nombres entiers val1 à val9 .

$(xor, val1 [, val2,…, val9])