Relevantní pro
Macra umožňují vytvářet podmínky a vyhodnocovat matematické rovnice v sekcích vlastního G-codu.
nebo
Uvnitř každého konstruktu mohou být konfigurační proměnné PrusaSliceru dostupné prostřednictvím jejich jmen
a elementy vektorových proměnných mohou být zpřístupněny použitím hranatých závorek
odkazuje na teplotu prvního extruderu.
Multidimenzionální vektory mohou být přístupné pouze jako jednoduché vektorové proměnné odkazující na řetězec (např. když extruder_variable[1] ukazující na hodnotu řetězce [n,0] -- může být odeslán v G-code ale nemůže být použit v aritmetických operacích).
Řetězce jsou identifikované dvojitými uvozovkami a pravidelné výrazy lomítky Řetězce nejsou parsované rekurzívně tj. na výstupu se objeví složené i hranaté závorky uvnitř řetězců. To umožňuje konstrukty jako
Povoleny jsou následující operátory:
Minimum
Maximum
Zaokrouhlení na celé číslo
Zaokrouhlení / doplnění mezerami: zaokrouhlí zlomkovou část na num_decimals číslice (v případě potřeby přidá na konec nuly) a poté doplní mezerami tak, aby číslo mělo stejný počet znaků num_digits (včetně desetinné tečky, pokud je přítomna). Poslední příkaz lze vynechat, výchozí hodnota je nula.
Zaokrouhlení / doplnění nulami: stejné jako výše, pouze ponechané vyplněné nulami.
Můžete použít proměnné uvnitř skriptů a v šabloně názvu výstupního souboru.
Zkontrolujte Seznam všech zástupných symbolů PrusaSlicer, sdružené do skupin podle jejich zaměření
Tyto hodnoty jsou skalární a může být na ně přímý odkaz.
Některé proměnné jsou definovány složitými vzorci. Například perimeter_extrusion_width, pokud je ponechán na nule, nabývá hodnoty extrusion_width, pokud není nulová, jinak se pro aktuální perimeter_extrusion_width vypočítá výchozí layer_height. Tyto záměny se provádějí pouze pro výrazy nové syntaxe (uzavřené ve složených závorkách {}), zatímco výrazy zapsané pomocí staré syntaxe zástupných znaků (uzavřené v hranatých závorkách []) se interpretují doslovně.
Tyto proměnné jsou polemi a musí být přístupné jako (např. temperature[0]).
Tyto proměnné mohou být přístupné pouze jako jednoduché vektory a nemohou být použité v aritmetických výrazech.
Příklady
"Před změnou vrstvy" můžete použít uživatelský G-code k pomalému snižování teploty trysky. Jako první lze použít výraz if/elseif/else:
Stejného výsledku lze dosáhnout kratším výrazem if/else/endif spolu s lineární interpolací:
Nebo lze také použít ternární operátor:
Pokud máte podložku, které trvá velmi dlouho, než se zahřeje na požadovanou teplotu, můžete si čekání trochu zkrátit tím, že pomocí "Start G-codu" zahřejete podložku na cílovou teplotu minus 5 stupňů a pak začnete zahřívat hot end, zatímco podložka pokračuje v zahřívání na cílovou hodnotu: