summaryrefslogtreecommitdiff
path: root/graphics/pgf
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/pgf')
-rw-r--r--graphics/pgf/contrib/tikz-cookingsymbols/README.txt5
-rw-r--r--graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols-doc.pdfbin0 -> 77064 bytes
-rw-r--r--graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols.sty401
3 files changed, 406 insertions, 0 deletions
diff --git a/graphics/pgf/contrib/tikz-cookingsymbols/README.txt b/graphics/pgf/contrib/tikz-cookingsymbols/README.txt
new file mode 100644
index 0000000000..394f0655ec
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-cookingsymbols/README.txt
@@ -0,0 +1,5 @@
+This package provides some macros to draw cooking Symbols (like topbottomheat, circulating air, etc.) using tikz.
+-------------------------------------------------------------------------------------
+Author...: Fabian Matischok
+email....: f_matischok@t-online.de
+Licences.: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txt \ No newline at end of file
diff --git a/graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols-doc.pdf b/graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols-doc.pdf
new file mode 100644
index 0000000000..3ecd81da1d
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols-doc.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols.sty b/graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols.sty
new file mode 100644
index 0000000000..56b7a88f05
--- /dev/null
+++ b/graphics/pgf/contrib/tikz-cookingsymbols/tikz-cookingsymbols.sty
@@ -0,0 +1,401 @@
+% --------------------------------------------------------------------------
+% the tikz-cookingsymbols package
+%
+% drawn cooking symbols (like top/bottom-heat) with tikz
+%
+% --------------------------------------------------------------------------
+% Fabian Matischok
+% E-Mail: f_matischok@t-online.de
+% --------------------------------------------------------------------------
+% Copyright 2025 Fabian Matischok
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{tikz-cookingsymbols}[2025-02-04 1.0 Draw cookingsymbols with tikz]
+% required packages
+\RequirePackage{tikz}
+\usetikzlibrary{calc,topaths,knots}
+\RequirePackage{calc}
+
+% defining used lengths and commands
+\newlength{\AFHeight}
+\settoheight{\AFHeight}{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}
+\newlength{\AFDepth}
+\settodepth{\AFDepth}{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}
+\ProvideExpandableDocumentCommand{\AFSize}{}{\fpeval{\AFHeight}}
+\ProvideExpandableDocumentCommand{\AFRadius}{}{(1/\AFSize)*\AFHeight}
+\ProvideExpandableDocumentCommand{\GrillDistance}{}{((\AFSize-2)/\AFSize)}
+\ProvideExpandableDocumentCommand{\GrillLength}{}{0.125*\GrillDistance}
+\ProvideExpandableDocumentCommand{\BL}{}{(1/10)*\GrillDistance}
+
+% border of symbols
+\ProvideDocumentCommand{\CSBorder}{}{%
+\draw (${1/\AFSize}*(\AFHeight,0pt)$)to (${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)$) arc[radius=\AFRadius,start angle=270,end angle=360]%
+to($(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$) arc[radius=\AFRadius,start angle=0,end angle=90]%
+to(${1/\AFSize}*(\AFHeight,0pt)+(0pt,\AFHeight)$) arc[radius=\AFRadius,start angle=90,end angle=180]%
+to(${1/\AFSize}*(0pt,\AFHeight)$) arc[radius=\AFRadius,start angle=180,end angle=270];%
+}
+
+% fan for virculating air
+\ProvideDocumentCommand{\Fan}{}{%
+\filldraw[line join=bevel] (${0.5}*(\AFHeight,\AFHeight)$) to[in=0,out=75] (${0.5}*(\AFHeight,\AFHeight)+{(0.5*\AFSize-1)/\AFSize}*(90:\AFHeight)$) to[out=180,in=105]cycle;%
+\filldraw[line join=bevel] (${0.5}*(\AFHeight,\AFHeight)$) to[in=120,out=195] (${0.5}*(\AFHeight,\AFHeight)+{(0.5*\AFSize-1)/\AFSize}*(210:\AFHeight)$) to[out=300,in=225]cycle;%
+\filldraw[line join=bevel] (${0.5}*(\AFHeight,\AFHeight)$) to[in=240,out=315] (${0.5}*(\AFHeight,\AFHeight)+{(0.5*\AFSize-1)/\AFSize}*(330:\AFHeight)$) to[out=420,in=345]cycle;%
+}
+
+
+%%%% german commands
+% Ober/Unterhitze
+\ProvideDocumentCommand{\OberUnterHitze}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{%False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }%
+ }%
+}
+
+% Oberhitze
+\ProvideDocumentCommand{\OberHitze}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }%
+ }%
+}
+% Unterhitze
+\ProvideDocumentCommand{\UnterHitze}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ }%
+ }%
+}
+
+%Umluft
+\ProvideDocumentCommand{\Umluft}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \Fan%
+ \draw (${0.5}*(\AFHeight,\AFHeight)$) circle[radius={((\AFSize-1)/\AFSize)*0.5*\AFHeight}];%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \Fan%
+ \draw (${0.5}*(\AFHeight,\AFHeight)$) circle[radius={((\AFSize-1)/\AFSize)*0.5*\AFHeight}];%
+ }%
+ }%
+}
+%Umluft alternative
+\ProvideDocumentCommand{\UmluftAlt}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \begin{scope}[shift={(${1/\AFSize}*(0pt,-\AFHeight)$)}]%
+ \Fan%
+ \end{scope}%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \begin{scope}[shift={(${0.5/\AFSize}*(0pt,-\AFHeight)$)}]%
+ \Fan%
+ \end{scope}%
+ }%
+ }%
+}
+
+% Grill
+\ProvideDocumentCommand{\Grill}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)-- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)-- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$);%
+ }%
+ }%
+}
+
+
+
+% UmluftGrill
+\ProvideDocumentCommand{\UmluftGrill}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)-- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$);%
+ \begin{scope}[shift={(${1.5/\AFSize}*(0pt,-\AFHeight)+{0.5/\AFSize}*(\AFHeight,0pt)$)},scale={(\AFSize-1)/\AFSize}]%
+ \Fan%
+ \end{scope}%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)-- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$);%
+ \begin{scope}[shift={(${1/\AFSize}*(0pt,-\AFHeight)+{0.5/\AFSize}*(\AFHeight,0pt)$)},scale={(\AFSize-1)/\AFSize}]%
+ \Fan%
+ \end{scope}%
+ }%
+ }%
+}
+
+% AirFryer
+\ProvideDocumentCommand{\AirFryer}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \coordinate (C)at(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)+{2*\BL}*(-\AFHeight,0)+{1*\BL}*(0,-\AFHeight)$);%
+ \coordinate (D)at(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)+{1*\BL}*(0,-\AFHeight)$);%
+ \begin{knot}[flip crossing=2]%
+ \strand (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,-\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,\AFHeight)$) to[out=0,in=135]%
+ (C);%
+ \strand (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)+{2*\BL}*(0,-\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,-\AFHeight)$) to[out=0,in=225]%
+ (C);%
+ \end{knot}\draw(C)--(D);\draw ($(D)+\BL*(-\AFHeight,\AFHeight)$)--(D)--++($\BL*(-\AFHeight,-\AFHeight)$);%
+ \begin{scope}[shift={(${1.75/\AFSize}*(0pt,-\AFHeight)+{0.5/\AFSize}*(\AFHeight,0pt)$)},scale={(\AFSize-1)/\AFSize}]%
+ \Fan%
+ \end{scope}%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \coordinate (C)at(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)+{2*\BL}*(-\AFHeight,0)+{1*\BL}*(0,-\AFHeight)$);%
+ \coordinate (D)at(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)+{1*\BL}*(0,-\AFHeight)$);%
+ \begin{knot}[flip crossing=2]%
+ \strand (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,-\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,\AFHeight)$) to[out=0,in=135]%
+ (C);%
+ \strand (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)+{2*\BL}*(0,-\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,\AFHeight)$) to[out=0,in=180]%
+ ++(${3*\BL}*(\AFHeight,0pt)+{2*\BL}*(0pt,-\AFHeight)$) to[out=0,in=225]%
+ (C);%
+ \end{knot}\draw(C)--(D);\draw ($(D)+\BL*(-\AFHeight,\AFHeight)$)--(D)--++($\BL*(-\AFHeight,-\AFHeight)$);%
+ \begin{scope}[shift={(${1/\AFSize}*(0pt,-\AFHeight)+{0.5/\AFSize}*(\AFHeight,0pt)$)},scale={(\AFSize-1)/\AFSize}]%
+ \Fan%
+ \end{scope}%
+ }%
+ }%
+}
+
+% Pizza
+\ProvideDocumentCommand{\Pizza}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \coordinate (A)at(${1/\AFSize}*(\AFHeight,\AFHeight)$);%
+ \coordinate (C)at($(A)+{(\AFSize-2)/\AFSize}*(20:\AFHeight)$);%
+ \coordinate (B)at($(A)!0.91!(C)$);%
+ \draw[clip](A)to(C) arc[radius={((\AFSize-1)/\AFSize)*\AFHeight},start angle=20,delta angle=45]to cycle
+ (B)arc[radius={((\AFSize-1)/\AFSize)*0.9*\AFHeight},start angle=20,delta angle=45];%
+ \draw ($(A)+{0.54}*(50:\AFHeight)$) circle[radius={((1)/\AFSize)*0.7*\AFHeight}];%
+ \draw ($(A)+{0.3}*(65:\AFHeight)$) circle[radius={((1)/\AFSize)*0.7*\AFHeight}];%
+ \draw ($(A)+{0.44}*(20:\AFHeight)$) circle[radius={((1)/\AFSize)*0.7*\AFHeight}];%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \coordinate (A)at(${1/\AFSize}*(\AFHeight,\AFHeight)$);%
+ \coordinate (C)at($(A)+{(\AFSize-2)/\AFSize}*(20:\AFHeight)$);%
+ \coordinate (B)at($(A)!0.91!(C)$);%
+ \draw[clip](A)to(C) arc[radius={((\AFSize-1)/\AFSize)*\AFHeight},start angle=20,delta angle=45]to cycle
+ (B)arc[radius={((\AFSize-1)/\AFSize)*0.9*\AFHeight},start angle=20,delta angle=45];%
+ \draw ($(A)+{0.54}*(50:\AFHeight)$) circle[radius={((1)/\AFSize)*0.7*\AFHeight}];%
+ \draw ($(A)+{0.3}*(65:\AFHeight)$) circle[radius={((1)/\AFSize)*0.7*\AFHeight}];%
+ \draw ($(A)+{0.44}*(20:\AFHeight)$) circle[radius={((1)/\AFSize)*0.7*\AFHeight}];%
+ }%
+ }%
+}
+
+% Microwelle
+\ProvideDocumentCommand{\Microwelle}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ %\foreach \t in{1,...,8} \draw[lightgray] (${1/\AFSize}*(\AFHeight,0pt)+{\t/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{\t/\AFSize}*(0pt,\AFHeight)$)
+ %(${\t/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${\t/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);
+ \foreach \t in{0,2,4,6} \draw[shift={($\t*\GrillLength*(0pt,\AFHeight)$)}] (${1/\AFSize}*(\AFHeight,0pt)+{2/\AFSize}*(0pt,\AFHeight)$)to[in=180,out=337.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$)to[out=0,in=202.5]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=22.5,in=180]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=0,in=157.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \foreach \t in{0,2,4,6} \draw[shift={($\t*\GrillLength*(0pt,\AFHeight)$)}] (${1/\AFSize}*(\AFHeight,0pt)+{2/\AFSize}*(0pt,\AFHeight)$)to[in=180,out=337.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$)to[out=0,in=202.5]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=22.5,in=180]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=0,in=157.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$);
+ }%
+ }%
+}
+
+
+
+%%%% english commands
+% Top/BottomHeat
+\ProvideDocumentCommand{\TopBottomHeat}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{%False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }%
+ }%
+}
+
+% Top Heat
+\ProvideDocumentCommand{\TopHeat}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);%
+ }%
+ }%
+}
+% Bottom Heat
+\ProvideDocumentCommand{\BottomHeat}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$);%
+ }%
+ }%
+}
+
+%convection oven
+\ProvideDocumentCommand{\ConvectionOven}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \Fan%
+ \draw (${0.5}*(\AFHeight,\AFHeight)$) circle[radius={((\AFSize-1)/\AFSize)*0.5*\AFHeight}];%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \Fan%
+ \draw (${0.5}*(\AFHeight,\AFHeight)$) circle[radius={((\AFSize-1)/\AFSize)*0.5*\AFHeight}];%
+ }%
+ }%
+}
+%convection oven alternative
+\ProvideDocumentCommand{\ConvectionOvenAlt}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \begin{scope}[shift={(${1/\AFSize}*(0pt,-\AFHeight)$)}]%
+ \Fan%
+ \end{scope}%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \begin{scope}[shift={(${0.5/\AFSize}*(0pt,-\AFHeight)$)}]%
+ \Fan%
+ \end{scope}%
+ }%
+ }%
+}
+
+% ConvectionOvenGrill
+\ProvideDocumentCommand{\ConvectionOvenGrill}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)-- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$);%
+ \begin{scope}[shift={(${1.5/\AFSize}*(0pt,-\AFHeight)+{0.5/\AFSize}*(\AFHeight,0pt)$)},scale={(\AFSize-1)/\AFSize}]%
+ \Fan%
+ \end{scope}%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \draw (${1/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$)-- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$)%
+ -- ++($\GrillLength*(\AFHeight,-\AFHeight)$)-- ++($\GrillLength*(\AFHeight,\AFHeight)$);%
+ \begin{scope}[shift={(${1/\AFSize}*(0pt,-\AFHeight)+{0.5/\AFSize}*(\AFHeight,0pt)$)},scale={(\AFSize-1)/\AFSize}]%
+ \Fan%
+ \end{scope}%
+ }%
+ }%
+}
+
+% Microwave
+\ProvideDocumentCommand{\Microwave}{s O{}}{%
+ \IfBooleanTF{#1}{% True
+ \addtolength{\AFHeight}{\AFDepth}%
+ \tikz[baseline={(0pt,\AFDepth)},#2]{\CSBorder%
+ %\foreach \t in{1,...,8} \draw[lightgray] (${1/\AFSize}*(\AFHeight,0pt)+{\t/\AFSize}*(0pt,\AFHeight)$)to(${(\AFSize-1)/\AFSize}*(\AFHeight,0pt)+{\t/\AFSize}*(0pt,\AFHeight)$)
+ %(${\t/\AFSize}*(\AFHeight,0pt)+{1/\AFSize}*(0pt,\AFHeight)$)to(${\t/\AFSize}*(\AFHeight,0pt)+{(\AFSize-1)/\AFSize}*(0pt,\AFHeight)$);
+ \foreach \t in{0,2,4,6} \draw[shift={($\t*\GrillLength*(0pt,\AFHeight)$)}] (${1/\AFSize}*(\AFHeight,0pt)+{2/\AFSize}*(0pt,\AFHeight)$)to[in=180,out=337.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$)to[out=0,in=202.5]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=22.5,in=180]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=0,in=157.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$);%
+ }\addtolength{\AFHeight}{-\AFDepth}%
+ }{% False
+ \tikz[#2]{\CSBorder%
+ \foreach \t in{0,2,4,6} \draw[shift={($\t*\GrillLength*(0pt,\AFHeight)$)}] (${1/\AFSize}*(\AFHeight,0pt)+{2/\AFSize}*(0pt,\AFHeight)$)to[in=180,out=337.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$)to[out=0,in=202.5]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=22.5,in=180]
+ ++($\GrillLength*(2\AFHeight,0.5\AFHeight)$)to[out=0,in=157.5]
+ ++($\GrillLength*(2\AFHeight,-0.5\AFHeight)$);
+ }%
+ }%
+}
+
+\endinput \ No newline at end of file