\usetikzlibrary{scopes,calc,shapes.symbols}

\tikzset{>=stealth, thick,
Mobile/.pic={
  \draw [rounded corners]
    (-0.5,-1) rectangle (0.5,1)
    (-0.4,-0.7) rectangle (0.4,0.9)
    ;
},
Funk/.pic={
  \filldraw
    (0,0) circle [radius=0.075]
    ;
  { []
    \path [clip] (0,0) -- (45:0.6) arc [radius=0.6,start angle=45,end angle=135] -- cycle;
    \filldraw [even odd rule]
        (0,0)
            circle [radius=0.150] circle [radius=0.225]
            circle [radius=0.300] circle [radius=0.375]
            circle [radius=0.450] circle [radius=0.525]
        ;
  }
},
Tablet/.pic={
  \draw [rounded corners=1pt] (-0.75,-1) rectangle (0.75,1);
  \draw [rounded corners=2pt] (-0.8,-1.05) rectangle (0.8,1.05);
},
Computer/.pic={
  \draw [rounded corners=1pt] (-1,-0.75) rectangle (1,0.75);
  \draw [rounded corners=2pt] (-1.05,-0.85) rectangle (1.05,0.8);
  \draw [rounded corners=1.5pt] (-1.05,-0.9) rectangle (1.05,-1.05);
  \path
    (0,0.8) coordinate (-north)
    (0,-1.05) coordinate (-south)
    ;
},
Accesspoint/.pic={
  \path (0,0) arc [radius=1.5,start angle=70,end angle=110] coordinate (shift) -- (0,0);
%   \draw (0,0) circle (2pt);
  { [shift={($-0.5*(shift)$)}]
    \draw (0,0) coordinate (t2) arc [radius=1.5,start angle=70,end angle=110] coordinate (t1) -- cycle;
  }
  \draw [very thick] (t2) -- ++(80:0.6) (t1) -- ++(100:0.6);
  \draw (0,0.5) pic [scale=0.75] {Funk};
  \path (0,0) coordinate (-center);
},
}

% \NewDocumentEnvironment{Img}{m m}{
% \begin{scope}[shift={#2},#1]
% }{
% \end{scope}
% }
%
% \NewDocumentCommand{\Mobile}{O{} m}{
% \begin{scope}[shift={#2},#1]
% \draw [rounded corners]
%     (-0.5,-1) rectangle (0.5,1)
%     (-0.4,-0.7) rectangle (0.4,0.9)
%     ;
% \end{scope}
% }
%
% \NewDocumentCommand{\Funk}{O{} m}{
% \begin{Img}{#1}{#2}
% \filldraw
%     (0,0) circle [radius=0.075]
%     ;
% { []
%     \path [clip] (0,0) -- (45:0.6) arc [radius=0.6,start angle=45,end angle=135] -- cycle;
%     \filldraw [even odd rule]
%         (0,0)
%             circle [radius=0.150] circle [radius=0.225]
%             circle [radius=0.300] circle [radius=0.375]
%             circle [radius=0.450] circle [radius=0.525]
%         ;
% }
% \end{Img}
% }
%
% \NewDocumentCommand{\Tablet}{O{} m}{
% \begin{Img}{scale=0.75,#1}{#2}
% \draw [rounded corners=1pt] (-0.75,-1) rectangle (0.75,1);
% \draw [rounded corners=2pt] (-0.8,-1.05) rectangle (0.8,1.05);
% \end{Img}
% }
%
% \NewDocumentCommand{\Computer}{O{} m}{
% \begin{Img}{#1}{#2}
% \draw [rounded corners=1pt] (-1,-0.75) rectangle (1,0.75);
% \draw [rounded corners=2pt] (-1.05,-0.85) rectangle (1.05,0.8);
% \draw [rounded corners=1.5pt] (-1.05,-0.9) rectangle (1.05,-1.05);
% \end{Img}
% }
%
% \NewDocumentCommand{\Accesspoint}{O{} m}{
% \begin{Img}{#1}{#2}
% \path (0,0) arc [radius=1.5,start angle=70,end angle=110] -- coordinate (tmp) (0,0);
% { [shift={($-1*(tmp)$)}]
%     \draw (0,0) arc [radius=1.5,start angle=70,end angle=110] -- (0,0);
% }
% \end{Img}
% }

\NewDocumentCommand{\MaskHole}{s d{<}{>} m m}{
\onslide*<#2>{
    \fill [fill=white,opacity=0.8,\IfBooleanT{#1}{draw}] (#3.south west) rectangle (#3.north east) #4;
    \IfBooleanT{#1}{
        \draw [very thin,color=black!20, opacity=0.5] (#3.south west) grid [step=1mm] (#3.north east);
        \draw [very thin,color=black!40] (#3.south west) grid [step=5mm] (#3.north east);
        \draw []
            (0,0) circle (2pt)
            (#3.south west) grid [step=10mm] (#3.north east)
            ;
    }
}}

