% \iffalse
% --------------------------------------------------------------------
%<*natoapp6c>
% \fi
% \subsubsection{`Friendly' node shapes}
%
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly air}
%
%   Macro for friendly air shape
%
%    \begin{macrocode}
\def\n@to@friendly@@ir{%
  \southeast \wg@tmpa=\pgf@x\wg@tmpb=\pgf@y%
  \pgfpathmoveto{\pgfqpoint{-\wg@tmpa}{\wg@tmpb}}%
  \cntrl \wg@tmpb=\pgf@y%
  \pgfpatharc{180}{0}{\wg@tmpa and \wg@tmpb}}
%    \end{macrocode}
% 
% The friendly air command.
%
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly air}{%
  \inheritsavedanchors[from=natoapp6c base]
  \savedanchor\southeast{%
    \pgf@x=1.1\n@to@pp@r%
    \pgf@y=-\n@to@pp@r}
  \savedanchor\cntrl{\pgf@x=0cm\pgf@y=2.6\n@to@pp@r}
  \savedanchor\north{\pgf@x=0cm\pgf@y=1.6\n@to@pp@r}
  \anchor{south east}{\southeast}
  \anchor{south west}{\southeast\pgf@x=-\pgf@x}
  \anchor{north east}{\southeast\wg@tmpa=\pgf@x\north\pgf@x=\wg@tmpa}
  \anchor{north west}{\southeast\wg@tmpa=\pgf@x\north\pgf@x=-\wg@tmpa}
  \anchor{north}{\north}
  \anchor{east}{%
    \north\wg@tmpb\pgf@y%
    \southeast\wg@tmpc=\pgf@y\wg@tmpa=\pgf@x%
    \advance\wg@tmpb-\wg@tmpc
    \divide\wg@tmpb2%
    \advance\wg@tmpb\wg@tmpc%
    \pgf@x=\wg@tmpa%
    \pgf@y=\wg@tmpb}    
  \anchor{west}{%
    \north\wg@tmpb\pgf@y%
    \southeast\wg@tmpc=\pgf@y\wg@tmpa=\pgf@x%
    \advance\wg@tmpb-\wg@tmpc
    \divide\wg@tmpb2%
    \advance\wg@tmpb\wg@tmpc%
    \pgf@x=-\wg@tmpa%
    \pgf@y=\wg@tmpb}
  \anchor{south}{\southeast\pgf@x=0cm}
  \inheritanchor[from=natoapp6c base]{upper}
  \inheritanchor[from=natoapp6c base]{lower}
  \inheritanchor[from=natoapp6c base]{left}
  \inheritanchor[from=natoapp6c base]{right}
  \inheritanchor[from=natoapp6c base]{center}
  \backgroundpath{%
    \n@to@friendly@@ir%
  }
  \behindforegroundpath{%
    \n@to@friendly@@ir%
    \pgfusepath{stroke}%
  }
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly land}
%
%   Macro for friendly land command
%
%    \begin{macrocode}
\def\n@to@friendly@l@nd{%
  \northeast \wg@tmpa=\pgf@x\wg@tmpb=\pgf@y%
  \pgfpathmoveto{\pgfqpoint{ \wg@tmpa}{ \wg@tmpb}}%
  \pgfpathlineto{\pgfqpoint{-\wg@tmpa}{ \wg@tmpb}}%
  \pgfpathlineto{\pgfqpoint{-\wg@tmpa}{-\wg@tmpb}}%
  \pgfpathlineto{\pgfqpoint{ \wg@tmpa}{-\wg@tmpb}}%
  \pgfclosepath}
%    \end{macrocode}
%
%   The friendly land command. The most used command frame.
%   
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly land}{%
  \inheritsavedanchors[from=natoapp6c base]
  \savedanchor\northeast{%
    \pgf@x=1.5\n@to@pp@r%
    \pgf@y=\n@to@pp@r}
  \anchor{north east}{\northeast}
  \anchor{north west}{\northeast\pgf@x=-\pgf@x}
  \anchor{south east}{\northeast\pgf@y=-\pgf@y}
  \anchor{south west}{\northeast\pgf@x=-\pgf@x\pgf@y=-\pgf@y}
  \anchor{north}{\northeast\pgf@x=0cm}
  \anchor{south}{\northeast\pgf@x=0cm\pgf@y=-\pgf@y}
  \anchor{east}{\northeast\pgf@y=0cm}
  \anchor{west}{\northeast\pgf@x=-\pgf@x\pgf@y=0cm}
  \inheritanchor[from=natoapp6c base]{upper}
  \inheritanchor[from=natoapp6c base]{lower}
  \inheritanchor[from=natoapp6c base]{left}
  \inheritanchor[from=natoapp6c base]{right}
  \inheritanchor[from=natoapp6c base]{center}
  \backgroundpath{%
    \n@to@friendly@l@nd%
  }
  \behindforegroundpath{%
    \n@to@friendly@l@nd%
    \pgfusepath{stroke}%
  }
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly activity}
%
%   The friendly activity command.  Similar to land command, but with
%   boxes in the corners. 
%   
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly activity}{%
  \inheritsavedanchors[from=natoapp6c friendly land]
  \inheritanchor[from=natoapp6c friendly land]{center}
  \inheritanchor[from=natoapp6c friendly land]{inner north east}
  \inheritanchor[from=natoapp6c friendly land]{inner north west}
  \inheritanchor[from=natoapp6c friendly land]{inner south west}
  \inheritanchor[from=natoapp6c friendly land]{inner south east}
  \inheritanchor[from=natoapp6c friendly land]{north east}
  \inheritanchor[from=natoapp6c friendly land]{north west}
  \inheritanchor[from=natoapp6c friendly land]{south east}
  \inheritanchor[from=natoapp6c friendly land]{south west}
  \inheritanchor[from=natoapp6c friendly land]{north}
  \inheritanchor[from=natoapp6c friendly land]{west}
  \inheritanchor[from=natoapp6c friendly land]{east}
  \inheritanchor[from=natoapp6c friendly land]{south}
  \inheritanchor[from=natoapp6c friendly land]{upper}
  \inheritanchor[from=natoapp6c friendly land]{lower}
  \inheritanchor[from=natoapp6c friendly land]{left}
  \inheritanchor[from=natoapp6c friendly land]{right}
  \inheritanchor[from=natoapp6c friendly land]{center}
  \inheritbackgroundpath[from=natoapp6c friendly land]
  \behindforegroundpath{
    \begin{n@to@pp@stroketofill}
      \n@to@friendly@l@nd%
      \pgfusepath{stroke}
      %
      \northeast \wg@tmpa=\pgf@x\wg@tmpb\pgf@y%
      \wg@tmpc=\wg@tmpa\advance\wg@tmpc-\n@to@pp@act@w
      \wg@tmpd=\wg@tmpb\advance\wg@tmpd-\n@to@pp@act@w
      %
      \pgfpathmoveto{\pgfqpoint{\wg@tmpa}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{\wg@tmpc}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{\wg@tmpc}{\wg@tmpd}}%
      \pgfpathlineto{\pgfqpoint{\wg@tmpa}{\wg@tmpd}}%
      \pgfclosepath
      %
      \pgfusepath{fill}%
      \pgfpathmoveto{\pgfqpoint{\wg@tmpa}{-\wg@tmpd}}%
      \pgfpathlineto{\pgfqpoint{\wg@tmpc}{-\wg@tmpd}}%
      \pgfpathlineto{\pgfqpoint{\wg@tmpc}{-\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{\wg@tmpa}{-\wg@tmpb}}%
      \pgfclosepath      
      \pgfusepath{fill}%
      %
      \pgfpathmoveto{\pgfqpoint{-\wg@tmpc}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{-\wg@tmpa}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{-\wg@tmpa}{\wg@tmpd}}%
      \pgfpathlineto{\pgfqpoint{-\wg@tmpc}{\wg@tmpd}}%
      \pgfclosepath
      \pgfusepath{fill}%
      %
      \pgfpathmoveto{\pgfqpoint{-\wg@tmpc}{-\wg@tmpd}}%
      \pgfpathlineto{\pgfqpoint{-\wg@tmpa}{-\wg@tmpd}}%
      \pgfpathlineto{\pgfqpoint{-\wg@tmpa}{-\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{-\wg@tmpc}{-\wg@tmpb}}%
      \pgfclosepath
      \pgfusepath{fill}%
    \end{n@to@pp@stroketofill}
  }
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly equipment}
%
%   The friendly equipment command.  A circle.
%   
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly equipment}{%
  \inheritsavedanchors[from=natoapp6c base]
  \savedanchor\northeast{%
    \pgf@x=\n@to@pp@r%
    \pgf@y=\n@to@pp@r}
  \anchor{north east}{\northeast}
  \anchor{north west}{\northeast\pgf@x=-\pgf@x}
  \anchor{south east}{\northeast\pgf@y=-\pgf@y}
  \anchor{south west}{\northeast\pgf@x=-\pgf@x\pgf@y=-\pgf@y}
  \anchor{north}{\northeast\pgf@x=0cm}
  \anchor{south}{\northeast\pgf@x=0cm\pgf@y=-\pgf@y}
  \anchor{east}{\northeast\pgf@y=0cm}
  \anchor{west}{\northeast\pgf@x=-\pgf@x\pgf@y=0cm}
  \inheritanchor[from=natoapp6c base]{upper}
  \inheritanchor[from=natoapp6c base]{lower}
  \inheritanchor[from=natoapp6c base]{left}
  \inheritanchor[from=natoapp6c base]{right}
  \inheritanchor[from=natoapp6c base]{center}
  \backgroundpath{%
    \northeast\wg@tmpa\pgf@x%
    \pgfpathcircle{\pgfqpoint{0cm}{0cm}}{\wg@tmpa}
  }
  \behindforegroundpath{%
    \northeast\wg@tmpa\pgf@x%
    \pgfpathcircle{\pgfqpoint{0cm}{0cm}}{\wg@tmpa}
    \pgfusepath{stroke}%
  }
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly installation}
%
% The friendly installation command. Similar to the land command, but
% with a `hat' on top.
% 
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly installation}{%
  \inheritsavedanchors[from=natoapp6c friendly land]
  \inheritanchor[from=natoapp6c friendly land]{center}
  \inheritanchor[from=natoapp6c friendly land]{inner north east}
  \inheritanchor[from=natoapp6c friendly land]{inner north west}
  \inheritanchor[from=natoapp6c friendly land]{inner south west}
  \inheritanchor[from=natoapp6c friendly land]{inner south east}
  \inheritanchor[from=natoapp6c friendly land]{north east}
  \inheritanchor[from=natoapp6c friendly land]{north west}
  \inheritanchor[from=natoapp6c friendly land]{south east}
  \inheritanchor[from=natoapp6c friendly land]{south west}
  \inheritanchor[from=natoapp6c friendly land]{north}
  \inheritanchor[from=natoapp6c friendly land]{west}
  \inheritanchor[from=natoapp6c friendly land]{east}
  \inheritanchor[from=natoapp6c friendly land]{south}
  \inheritanchor[from=natoapp6c friendly land]{upper}
  \inheritanchor[from=natoapp6c friendly land]{lower}
  \inheritanchor[from=natoapp6c friendly land]{left}
  \inheritanchor[from=natoapp6c friendly land]{right}
  \inheritanchor[from=natoapp6c friendly land]{center}
  \inheritbackgroundpath[from=natoapp6c friendly land]
  \behindforegroundpath{
    \begin{n@to@pp@stroketofill}
      \n@to@friendly@l@nd%
      \pgfusepath{stroke}
      %
      \northeast \wg@tmpa=\pgf@y%
      \wg@tmpb=\wg@tmpa\advance\wg@tmpb\n@to@pp@inst@h%
      %
      \pgfpathmoveto{\pgfqpoint{ \n@to@pp@inst@x}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{-\n@to@pp@inst@x}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{-\n@to@pp@inst@x}{\wg@tmpa}}%
      \pgfpathlineto{\pgfqpoint{ \n@to@pp@inst@x}{\wg@tmpa}}%
      \pgfclosepath
      \pgfusepath{fill}%
    \end{n@to@pp@stroketofill}
  }
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly sea surface}
%
%   The friendly sea surface command. Same as equipment command.
%   
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly sea surface}{%
  \inheritsavedanchors[from=natoapp6c friendly equipment]
  \inheritanchor[from=natoapp6c friendly equipment]{inner north east}
  \inheritanchor[from=natoapp6c friendly equipment]{inner north west}
  \inheritanchor[from=natoapp6c friendly equipment]{inner south west}
  \inheritanchor[from=natoapp6c friendly equipment]{inner south east}
  \inheritanchor[from=natoapp6c friendly equipment]{north east}
  \inheritanchor[from=natoapp6c friendly equipment]{north west}
  \inheritanchor[from=natoapp6c friendly equipment]{south east}
  \inheritanchor[from=natoapp6c friendly equipment]{south west}
  \inheritanchor[from=natoapp6c friendly equipment]{north}
  \inheritanchor[from=natoapp6c friendly equipment]{west}
  \inheritanchor[from=natoapp6c friendly equipment]{east}
  \inheritanchor[from=natoapp6c friendly equipment]{south}
  \inheritanchor[from=natoapp6c friendly equipment]{upper}
  \inheritanchor[from=natoapp6c friendly equipment]{lower}
  \inheritanchor[from=natoapp6c friendly equipment]{left}
  \inheritanchor[from=natoapp6c friendly equipment]{right}
  \inheritanchor[from=natoapp6c friendly equipment]{center}
  \inheritbackgroundpath[from=natoapp6c friendly equipment]
  \inheritbehindforegroundpath[from=natoapp6c friendly equipment]
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly space}
%
%   The friendly space command.  Similar to air command, but with a
%   bar on top. 
%   
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly space}{%
  \inheritsavedanchors[from=natoapp6c friendly air]
  \inheritanchor[from=natoapp6c friendly air]{north east}
  \inheritanchor[from=natoapp6c friendly air]{north west}
  \inheritanchor[from=natoapp6c friendly air]{south east}
  \inheritanchor[from=natoapp6c friendly air]{south west}
  \inheritanchor[from=natoapp6c friendly air]{north}
  \inheritanchor[from=natoapp6c friendly air]{west}
  \inheritanchor[from=natoapp6c friendly air]{east}
  \inheritanchor[from=natoapp6c friendly air]{south}
  \inheritanchor[from=natoapp6c friendly air]{upper}
  \inheritanchor[from=natoapp6c friendly air]{lower}
  \inheritanchor[from=natoapp6c friendly air]{left}
  \inheritanchor[from=natoapp6c friendly air]{right}
  \inheritanchor[from=natoapp6c friendly air]{center}
  \inheritbackgroundpath[from=natoapp6c friendly air]
  \behindforegroundpath{%
    \begin{n@to@pp@stroketofill}
      \n@to@friendly@@ir%
      \pgfusepath{stroke,clip}%
      %
      \cntrl\wg@tmpa=\pgf@y%
      \north\wg@tmpb=\pgf@y
      \advance\wg@tmpb-\n@to@pp@space@h
      %
      \pgfpathmoveto{\pgfqpoint{ \n@to@pp@r}{\wg@tmpa}}%
      \pgfpathlineto{\pgfqpoint{-\n@to@pp@r}{\wg@tmpa}}%
      \pgfpathlineto{\pgfqpoint{-\n@to@pp@r}{\wg@tmpb}}%
      \pgfpathlineto{\pgfqpoint{ \n@to@pp@r}{\wg@tmpb}}%
      \pgfclosepath%
      \pgfusepath{fill}%
    \end{n@to@pp@stroketofill}
  }
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
% ....................................................................
% \fi
% \begin{NatoAppFrame}{natoapp6c friendly sub surface}
%
%   Macro for friendly sub surface command
%
%    \begin{macrocode}
\def\n@to@friendly@sub{%
  \northeast \wg@tmpa=\pgf@x\wg@tmpb=\pgf@y%
  \pgfpathmoveto{\pgfqpoint{-\wg@tmpa}{\wg@tmpb}}%
  \cntrl \wg@tmpb=\pgf@y%
  \pgfpatharc{180}{0}{\wg@tmpa and \wg@tmpb}}
%    \end{macrocode}
% 
%  The friendly sub surface command.
%
%
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly sub surface}{%
  \inheritsavedanchors[from=natoapp6c base]
  \savedanchor\northeast{%
    \pgf@x=1.1\n@to@pp@r%
    \pgf@y=\n@to@pp@r}
  \savedanchor\cntrl{\pgf@x=0cm\pgf@y=-2.6\n@to@pp@r}
  \savedanchor\south{\pgf@x=0cm\pgf@y=-1.6\n@to@pp@r}
  \anchor{north east}{\northeast}
  \anchor{north west}{\northeast\pgf@x=-\pgf@x}
  \anchor{south east}{\northeast\wg@tmpa=\pgf@x\south\pgf@x=\wg@tmpa}
  \anchor{south west}{\northeast\wg@tmpa=\pgf@x\south\pgf@x=-\wg@tmpa}
  \anchor{south}{\south}
  \anchor{east}{
    \northeast\wg@tmpb=\pgf@y\wg@tmpa=\pgf@x%
    \south\wg@tmpc\pgf@y%
    \advance\wg@tmpb-\wg@tmpc
    \divide\wg@tmpb2%
    \advance\wg@tmpb\wg@tmpc%
    \pgf@x=\wg@tmpa%
    \pgf@y=\wg@tmpb}
  \anchor{west}{
    \northeast\wg@tmpb=\pgf@y\wg@tmpa=\pgf@x%
    \south\wg@tmpc\pgf@y%
    \advance\wg@tmpb-\wg@tmpc
    \divide\wg@tmpb2%
    \advance\wg@tmpb\wg@tmpc%
    \pgf@x=-\wg@tmpa%
    \pgf@y=\wg@tmpb}
  \anchor{north}{\northeast\pgf@x=0cm}
  \inheritanchor[from=natoapp6c base]{upper}
  \inheritanchor[from=natoapp6c base]{lower}
  \inheritanchor[from=natoapp6c base]{left}
  \inheritanchor[from=natoapp6c base]{right}
  \inheritanchor[from=natoapp6c base]{center}
  \backgroundpath{%
    \n@to@friendly@sub%
  }
  \behindforegroundpath{%
    \n@to@friendly@sub%
    \pgfusepath{stroke}%
  }
}
%    \end{macrocode}
%
%    \begin{macrocode}
\pgfdeclareshape{natoapp6c friendly none}{%
  \inheritsavedanchors[from=natoapp6c base]
  \savedanchor\northeast{%
    \pgf@x=1.5\n@to@pp@r%
    \pgf@y=\n@to@pp@r}
  \anchor{north east}{\northeast}
  \anchor{north west}{\northeast\pgf@x=-\pgf@x}
  \anchor{south east}{\northeast\pgf@y=-\pgf@y}
  \anchor{south west}{\northeast\pgf@x=-\pgf@x\pgf@y=-\pgf@y}
  \anchor{north}{\northeast\pgf@x=0cm}
  \anchor{south}{\northeast\pgf@x=0cm\pgf@y=-\pgf@y}
  \anchor{east}{\northeast\pgf@y=0cm}
  \anchor{west}{\northeast\pgf@x=-\pgf@x\pgf@y=0cm}
  \inheritanchor[from=natoapp6c base]{upper}
  \inheritanchor[from=natoapp6c base]{lower}
  \inheritanchor[from=natoapp6c base]{left}
  \inheritanchor[from=natoapp6c base]{right}
  \inheritanchor[from=natoapp6c base]{center}
  \backgroundpath{}
  \behindforegroundpath{}
}
%    \end{macrocode}
% \end{NatoAppFrame}
% 
% \iffalse
%</natoapp6c>
% --------------------------------------------------------------------
% \fi
