Referenční informace o funkcích jazyka DIESEL

Funkce jazyka DIESEL se používají k zjištění, výpočtům a zobrazení hodnot.

Všechny funkce jsou omezeny maximálním počtem 10 parametrů.

Funkce Popis/Příklad
+ (součet)

Vrátí součet čísel hodnota1 , hodnota2 , …, hodnota9 .

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

Pokud je aktuální tloušťka 5, následující výraz vrátí 15.

$(+, $(getvar, thickness), 10)
- (rozdíl)

Vrátí rozdíl čísel hodnota2 hodnota9 od hodnota1 .

$(-, val1 [, val2 , …, val9])
* (součin)

Vrátí součin čísel hodnota1 , hodnota2 , …, hodnota9 .

$(*, val1 [, val2, …, val9])
/ (podíl)

Vrátí podíl čísel hodnota1 a hodnota2 , …, hodnota9 .

$(/, val1 [, val2, …, val9])
= (rovná se)

Pokud jsou hodnoty hodnota1 a hodnota2 stejné, vrátí řetězec číslo 1; jinak vrátí nulu.

$(=, val1, val2)
< (menší než)

Pokud je hodnota hodnota1 menší než hodnota2 , vrátí řetězec číslo 1; jinak vrátí nulu 0.

$(<, val1, val2)

Následující výraz získá aktuální hodnotu proměnné HPANG. Pokud je tato hodnota menší než hodnota uložená v systémové proměnné USERR1, vrátí číslo 1. Pokud je v proměnné USERR1 uložena hodnota 10,0 a aktuální nastavení HPANG je 15,5, následující řetězec vrátí nulu.

$(<, $(getvar, hpang), $(getvar, userr1))
> (větší než)

Pokud je hodnota hodnota1 větší než hodnota2 , vrátí řetězec číslo 1; jinak vrátí nulu.

$(>, val1, val2)
!= (není rovno)

Pokud nejsou hodnoty hodnota1 a hodnota2 stejné, vrátí řetězec číslo 1; jinak vrátí nulu.

$(!=, val1, val2)
<= (menší než nebo rovno)

Pokud je číslo hodnota1 menší nebo rovno číslu hodnota2 , vrátí řetězec hodnotu 1, v opačném případě hodnotu 0.

$(<=, val1, val2)
>= (větší nebo rovno)

Pokud je hodnota hodnota1 větší nebo rovna číslu hodnota2 , vrátí řetězec číslo 1; jinak vrátí nulu.

$(>=, val1, val2)
a

Vrátí pro všechny bity logické AND mezi celá čísla hodnota1 hodnota9 .

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

Vrátí velikost úhlu v zadaném formátu a se zadanou přesností.

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

Upraví danou hodnotu na úhel ve formátu určeném parametry režim a přesnost , jak je definováno pro analogickou funkci jazyka AutoLISP. Při vynechání parametrů režim a přesnost použije aktuální hodnoty vybrané příkazem JEDNOTKY.

Poznámka: Jazyk AutoLISP není k dispozici v aplikaci AutoCAD LT.
Lze použít následující hodnoty parametru režim:
  • 0, pro stupně
  • 1, pro stupně/minuty/sekundy
  • 2, pro grady
  • 3, pro radiány
  • 4, pro zeměměřičské jednotky
Edtime

Vrátí datum a čas v zadaném formátu podle vzoru.

$(edtime, time, picture)

Upravuje datum podle juliánského kalendáře dané údajem čas (získaným například z hodnoty $(getvar,datum) podle daného obrázku ). Vzor obsahuje formátovací řetězce, které jsou nahrazeny odpovídajícími hodnotami data a času. Znaky, které nelze interpretovat jako formátovací fráze, se kopírují přesně do výsledku $(edtime) . Formátovací znaky jsou uvedeny v následující tabulce.

Například za předpokladu, že datum a čas je sobota 5. září 1998 4:53:17,506, jsou příklady odpovídajících formátovacích znaků a výstupu pro konečný čas následující:
  • D - 5
  • DD - 05
  • DDD - Sob
  • DDDD – Sobota
  • M - 9
  • MM - 09
  • MMM - Zář
  • Měsíc – Září
  • RR - 98
  • RRRR - 1998
  • H - 4
  • HH - 04
  • MM - 53
  • SS - 17
  • MSEC - 506
  • Dop/Odp - Dop
  • dop/odp - dop
  • D/O – D
  • d/o – d

Zadejte celou frázi AM/PM, jak ukazuje předcházející tabulka; pokud použijete AM samostatně, bude A interpretováno doslova a M vrátí číslo aktuálního měsíce.

Pokud se ve vzoru objeví znak AM/PM, znaky H a HH upraví čas na 12hodinový formát (12:00–12:59 1:00–11:59), nikoli na 24hodinový formát (00:00-23:59).

Následující příklad používá datum a čas podle předcházející tabulky. Všimněte si, že čárka musí být uzavřena v uvozovkách, protože jinak by byla vyhodnocena jako oddělovač argumentů.

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

Vrátí následující:

So, 5 Zář 1998 – 4:53am

Pokud bude hodnota čas nula, použije se čas a datum okamžiku, kdy bylo provedeno nejzazší makro. Tím se vyhneme dlouhým a časově náročným opakovaným voláním $(getvar,datum) a zajistíme, že řetězec tvořený více makry $(edtime) bude používat pro všechna stejný čas.

eq

Pokud jsou řetězce hodnota1 a hodnota2 totožné, vrátí řetězec číslo; jinak vrátí nulu.

$(eq, val1, val2)

Následující výraz získá název aktuální hladiny; pokud tento název odpovídá hodnotě řetězce uložené v systémové proměnné USERS1 (USERS1-5), vrátí číslo 1. Předpokládejme, že řetězec "PART12" je uložen v proměnné USERS1 a aktuální hladina je totožná.

Poznámka: Systémové proměnné USERS1-5 nejsou v aplikaci AutoCAD LT k dispozici.
$(eq, $(getvar, users1), $(getvar, clayer))

Vrátí následující:

1

Eval

Předá řetězec str hodnotícímu nástroji jazyka DIESEL a vrátí výsledek hodnocení.

$(eval, str)
fix

Zkrátí reálné číslo hodnota na celé číslo odstraněním části za desetinnou čárkou.

$(fix, value)
Getenv

Vrátí hodnotu proměnné prostředí názevproměnné .

$(getenv, varname)

Pokud proměnná neexistuje, vrátí prázdný řetězec.

Getvar

Vrátí hodnotu systémové proměnné s daným názvem názevprom .

$(getvar, varname)
if

Podle podmínek vyhodnotí výraz.

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

Pokud je hodnota výraz nenulová, vyhodnotí a vrátí kdyžpravda . Jinak vyhodnotí a vrátí kdyžnepravda . Všimněte si, že větev nevybraná hodnotou výraz není hodnocena.

Index

Vrátí zadaný prvek z řetězce odděleného čárkami.

$(index, which, string)

Předpokládá, že argument řetězec obsahuje jednu nebo více hodnot vymezených oddělovacím znakem argumentu makro, kterým je čárka. Argument který vybere jednu z těchto hodnot pro extrakci a první položku očísluje nulou. Tato funkce se nejčastěji používá pro extrakci hodnot souřadnic X, Y nebo Z ze souřadnic bodů vrácených proměnnou $(getvar).

Aplikace mohou tuto funkci používat pro získávání hodnot uložených v řetězcích čísel oddělených čárkou ze systémových proměnných USERS1-5.

Poznámka: Systémové proměnné USERS1-5 nejsou v aplikaci AutoCAD LT k dispozici.
nth

Vyhodnotí a vrátí argument vybraný argumentem který .

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

Pokud má argument který hodnotu 0, nth vrátí arg0 atd. Všimněte si rozdílu mezi příkazy $(nth) a $(index) ; příkaz $(nth) vrátí funkci jednu řadu argumentů, zatímco příkaz $(index) extrahuje hodnotu z čárkami odděleného řetězce předaného jako jednoduchý argument. Argumenty nevybrané který nejsou vyhodnoceny.

nebo

Vrátí pro všechny bity logické OR mezi celými čísly hodnota1 hodnota9 .

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

Vrátí reálné číslo v zadaném formátu a přesnosti.

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

Upraví danou hodnotu hodnota na reálné číslo ve formátu určeném parametry režim a přesnost. Při vynechání hodnot režim a přesnost použije aktuální hodnoty vybrané příkazem JEDNOTKY.

Strlen

Vrátí délku řetězce řetězec ve znacích.

$(strlen, string)
Substr

Vrátí podřetězec řetězce řetězec počínaje znakem start a pokračuje počtem znaků určeným hodnotou délka .

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

Znaky v řetězci jsou číslovány od 1. Pokud údaj délka vynecháme, vrátí celou zbývající délku řetězce.

Nahoře

Vrátí řetězec převedený na velká písmena podle místních pravidel.

$(upper, string)
xor

Vrátí pro všechny bity logické XOR mezi všechna celá čísla hodnota1 hodnota9 .

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