An error occurred while loading the file. Please try again.
-
Olivier Kaufmann authored880635c8
% Dessine une vanne
\usepackage{ifthen}
\usepackage{tikz}
% Environnement vanne 3 arguments :
% 1 - Largeur du dessin en centimètres
% 2 - Largeur de la vanne (en mètres)
% 3 - Hauteur de la vanne (en mètres)
\newenvironment{vanne}[3][\textwidth]{
% Commande pour ajouter une pelle à la vanne
% Paramètre 1 - ouverture de la vanne
\newcommand{\pelle}[1]{
\fill [white!50!black] (0,##1) rectangle (#2,#3);
\ifthenelse{\equal{##1}{0.0} \OR \equal{##1}{0}}{}{ \draw [black, thick, latex-latex] (0.05,0)--(0.05,##1) node [midway,right] {ouverture ##1 m}};
}
% Commande pour ajouter un niveau d'eau amont
% Paramètre 1 - Tirant d'eau
\newcommand{\tirantamont}[3][0]{
\draw [orange!50!black, line width=1pt,dashed] (-0.4*#2,0)--(1.2*#2,0) (-0.4*#2,0) node [black, below, text width = 3cm] {cote du fond~: ##3 m};
\pgfmathparse{##2+##3}\let\x\pgfmathresult
\pgfmathroundto{\x} \let\cde\pgfmathresult
\ifthenelse{\equal{##1}{0}} {\draw [blue, line width=2pt] (-0.4*#2,##2)--(1.2*#2,##2) node [black,midway,above,text width = 3cm] {cote de l'eau~: \cde m}} {\draw [blue, line width=2pt] (-0.4*#2,##2)--(1.3*#2,##2) node [black,midway,below,text width = 3cm] {cote de l'eau~: \cde m}};
\ifthenelse{\equal{##2}{0.0} \OR \equal{##2}{0}}{}{ \draw [black, thick, latex-latex] (-0.35*#2,0)--(-0.35*#2,##2) node [midway,left] {tirant d'eau\\amont ##2 m}};
}
% Commande pour ajouter un niveau d'eau aval
% Paramètre 1 - Tirant d'eau
\newcommand{\tirantaval}[3][0]{
\draw [orange!50!black, line width=1pt,dashed] (-0.2*#2,0)--(1.4*#2,0) node [black, below, text width = 3cm] {cote du fond~: ##3 m};
\pgfmathparse{(ceil((##2+##3)*100)/100)}\let\x\pgfmathresult
\pgfmathroundto{\x} \let\cde\pgfmathresult
\ifthenelse{\equal{##1}{0}} {\draw [blue, line width=2pt] (-0.2*#2,##2)--(1.4*#2,##2) node [black,midway,above,text width = 3cm] {cote de l'eau~: \cde m}} {\draw [blue, line width=2pt] (-0.2*#2,##2)--(1.4*#2,##2) node [black,midway,below,text width = 3cm] {cote de l'eau~: \cde m}};
\ifthenelse{\equal{##2}{0.0} \OR \equal{##2}{0}}{}{ \draw [black, thick, latex-latex] (1.35*#2,0)--(1.35*#2,##2) node [midway,right] {tirant d'eau\\aval ##2 m}};
}
% Commande pour ajouter un seuil
\newcommand{\seuil}[1]{
\fill [black!25!white] (0,0) rectangle (#2,##1);
\draw [orange!50!black, line width=1pt, dashed] (0,0)--(1.4*#2,0);
\draw [black, line width=1pt, dashed] (-0.4*#2,##1)--(1.4*#2,##1);
\draw [black, thick, latex-latex] (1.35*#2,0)--(1.35*#2,##1) node [midway, right, text width = 3cm] {Seuil de ##1~m};
}
% Commande pour mettre un message en travers du dessin
\newcommand{\acompleter}{
\node at (#2/2,#3/2) [rotate=45,opacity=0.8,red!50!black,font=\Huge] {A compléter};
}
\begin{tikzpicture}[scale=#1/(#2*3cm),every node/.style={align=center}]
% Mur gauche
\fill [orange!50!black] (-0.1*#2,0) rectangle (0,#3);
% Mur droit
\fill [orange!50!black] (#2,0) rectangle (1.1*#2,#3);
% fond du canal
\fill [orange!50!black] (-0.1*#2,-0.1*#2) rectangle (1.1*#2,0);
% Largeur de la vanne
\draw [black, thick, latex-latex] (0,1.1*#3)--(#2,1.1*#3) node [midway,above] at (#2/2,1.1*#3) {largeur #2 m};
}{
\end{tikzpicture}
}
\newenvironment{vanne_buse}[5][\textwidth]{
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
% Environnement vanne 5 arguments :
% 1 - Largeur du dessin en centimètres (optionel)
% 2 - Diamètre vanne (en mètres)
% 3 - Largeur du canal (en mètres)
% 4 - Bas de la buse par rapport au fond du canal (en mètres)
% 5 - Haut du canal par rapport au fond (en mètres)
\newcommand{\tirantamont}[3][0]{
\draw [orange!50!black, line width=1pt,dashed] (-0.8*#2,-0.5*#2-#4)--(0.8*#2,-0.5*#2-#4) (-0.8*#2,-0.5*#2-#4) node [black, left, below, text width = 3cm] {cote du fond~: ##3 m};
% Calcul de la cote de l'eau à partir du tirant d'eau et de la cote du fond. Arrondi à deux décimal
\pgfmathparse{(round((##2+##3)*100)/100)}\let\x\pgfmathresult
\pgfmathroundto{\x} \let\cde\pgfmathresult
\ifthenelse{\equal{##1}{0}}
{
\draw [blue, line width=2pt] (-0.8*#2,0.5*##2-0.25*#2)--(0.8*#2,0.5*##2-0.25*#2) node [black,midway,above,text width = 3cm] {cote de l'eau~: \cde m}
}
{
\draw [blue, line width=2pt] (-0.8*#2,0.5*##2-0.25*#2)--(0.8*#2,0.5*##2-0.25*#2) node [black,midway,below,text width = 3cm] {cote de l'eau~: \cde m}
};
\draw [black, thick, latex-latex] (-0.75*#2,-0.5*#2-#4)--(-0.75*#2,0.5*##2-0.25*#2) node [midway,left] {tirant d'eau\\amont ##2 m\\};
}
% Commande pour ajouter un niveau d'eau aval
% Paramètre 1 - Tirant d'eau
\newcommand{\tirantaval}[3][0]{
\draw [orange!50!black, line width=1pt,dashed] (-0.8*#2,0.5*#2-#4)--(0.8*#2,0.5*#2-#4) (0.8*#2,0.5*#2-#4) node [black,right, text width = 3cm] {cote du fond~: ##3 m};
\pgfmathparse{(ceil((##2+##3)*100)/100)}\let\x\pgfmathresult
\pgfmathroundto{\x} \let\cde\pgfmathresult
\ifthenelse{\equal{##1}{0}} {\draw [blue, line width=2pt] (-0.8*#2,0.5*##2-0.25*#2)--(0.8*#2,0.5*##2-0.25*#2) node [black,midway,above,text width = 3cm] {cote de l'eau~: \cde m}} {\draw [blue, line width=2pt] (-0.4*#2,##2)--(1.3*#2,##2) node [black,midway,below,text width = 3cm] {cote de l'eau~: \cde m}};
\draw [black, thick, latex-latex] (0.75*#2,0.5*#2-#4)--(0.75*#2,0.5*##2-0.25*#2) node [midway,right] {tirant d'eau\\aval ##2 m};
}
\begin{tikzpicture}[scale=#1/(#2*3cm),every node/.style={align=center}]
% Fond
\fill [white!50!black] (-0.5*#3,-0.5*#2-#4) rectangle(0.5*#3,-0.5*#2+#5-#4);
% Diametre extérieur
\fill[orange!50!black] (0,0) circle (0.5*#2*1.2);
%\fill[gray] (0,0) circle (1cm);
% Diametre interieur
\fill[white] (0,0) circle (#2*0.5);
\draw [black, thick, latex-latex] (-0.5*#2,0.7*#2)--(0.5*#2,0.7*#2) node [midway,above] at (#2,0.7*#2) {largeur #2 m};
\draw [black, thick, latex-latex] (0,-0.5*#2-#4)--(0,-#2*0.5) node [midway,right] at (#2,0.7*#2) {hauteur du radier #4 m};
}{
\end{tikzpicture}
}