% ---------------------------------------------------------------------------- %
%% \file declinaison.tex
%% \author Sebastien Beaugrand
%% \sa http://beaugrand.chez.com/
%% \copyright CeCILL 2.1 Free Software license
% ---------------------------------------------------------------------------- %
\documentclass[a4paper]{article}
\usepackage{vmargin}
\setmarginsrb{10mm}{10mm}{10mm}{10mm}{0mm}{0mm}{0mm}{0mm}
\usepackage{tikz}
\pagestyle{empty}
\parindent0cm

\begin{document}
\usetikzlibrary{math}
\tikzmath{
  \marge = 1.0;
  \largeur = 21.0 - 2 * \marge;
  \hauteur = 29.7 - 2 * \marge;
  \traitCourt = 1.0;
  \traitMoyen = 2.0;
  \traitLong = 3.0;
  \ordonnee1 = \hauteur;
  \ordonnee2 = \hauteur - \traitCourt;
  \ordonnee3 = \hauteur - \traitMoyen;
  \ordonnee4 = \hauteur - \traitLong;
  \abscisse1 = \largeur;
  \abscisse2 = \largeur - \traitCourt;
  \abscisse3 = \largeur - \traitMoyen;
  \abscisse4 = \largeur - \traitLong;
}

\begin{tikzpicture}
  \draw (\largeur,0) -- (0,0) -- (0,\hauteur) -- (\largeur,\hauteur);
  \foreach \a in {0.5,1.5,...,34.5} {
    \draw[line width = 0.1mm] ({\ordonnee1*tan(\a)},\ordonnee1) --
                              ({\ordonnee2*tan(\a)},\ordonnee2);
  }
  \foreach \a in {1,2,...,34} {
    \draw[line width = 0.2mm] ({\ordonnee1*tan(\a)},\ordonnee1) --
                              ({\ordonnee3*tan(\a)},\ordonnee3);
  }
  \foreach \a in {5,10,...,30} {
    \pgfmathsetmacro\b{int(90-\a)}
    \draw[line width = 0.3mm] ({\ordonnee1*tan(\a)},\ordonnee1) --
                              ({\ordonnee4*tan(\a)},\ordonnee4)
                              node[right,rotate=180] {-\a}
                              node[left,rotate=90] {\b};
  }
  \foreach \a in {0.5,1.5,...,34.5} {
    \draw[line width = 0.1mm] ({\ordonnee1*tan(\a)},0) --
                              ({\ordonnee2*tan(\a)},\traitCourt);
  }
  \foreach \a in {1,2,...,34} {
    \draw[line width = 0.2mm] ({\ordonnee1*tan(\a)},0) --
                              ({\ordonnee3*tan(\a)},\traitMoyen);
  }
  \foreach \a in {5,10,...,30} {
    \pgfmathsetmacro\b{int(\a-90)}
    \draw[line width = 0.3mm] ({\ordonnee1*tan(\a)},0) --
                              ({\ordonnee4*tan(\a)},\traitLong)
                              node[left] {\a}
                              node[right,rotate=90] {\b};
  }
  \foreach \a in {45.5,46.5,...,55.5} {
    \draw[line width = 0.1mm] (\abscisse1,{\abscisse1*tan(\a)}) --
                              (\abscisse2,{\abscisse2*tan(\a)});
  }
  \foreach \a in {45,46,...,55} {
    \draw[line width = 0.2mm] (\abscisse1,{\abscisse1*tan(\a)}) --
                              (\abscisse3,{\abscisse3*tan(\a)});
  }
  \foreach \a in {45,50,...,55} {
    \pgfmathsetmacro\b{int(\a-90)}
    \draw[line width = 0.3mm] (\abscisse1,{\abscisse1*tan(\a)}) --
                              (\abscisse4,{\abscisse4*tan(\a)})
                              node[left,rotate=90] {\a}
                              node[right,rotate=180] {\b};
  }
  \foreach \a in {45.5,46.5,...,55.5} {
    \draw[line width = 0.1mm] (\abscisse1,{\hauteur-\abscisse1*tan(\a)}) --
                              (\abscisse2,{\hauteur-\abscisse2*tan(\a)});
  }
  \foreach \a in {45,46,...,55} {
    \draw[line width = 0.2mm] (\abscisse1,{\hauteur-\abscisse1*tan(\a)}) --
                              (\abscisse3,{\hauteur-\abscisse3*tan(\a)});
  }
  \foreach \a in {45,50,...,55} {
    \pgfmathsetmacro\b{int(90-\a)}
    \draw[line width = 0.3mm] (\abscisse1,{\hauteur-\abscisse1*tan(\a)}) --
                              (\abscisse4,{\hauteur-\abscisse4*tan(\a)})
                              node[right,rotate=90] {-\a}
                              node[left] {\b};
  }
\end{tikzpicture}
\end{document}