Déplacement de figures TikZ (court de tennis)
Soit un court de tennis (que j'ai dessiné rapido, sans *nodes* ni quoi que ce soit — ça viendra) :
\documentclass[10pt, BCOR=0pt, DIV=22, a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\begin{document}
\thispagestyle{empty}
\begin{center}
\begin{tikzpicture}[x = 1 mm, y = 1 mm]
\draw[thick, gray] (0, 0) rectangle (109.7, 237.8) ;
\draw[thick, gray] (0, 0) rectangle (13.7, 237.8) ;
\draw[thick, gray] (96, 0) rectangle (109.7, 237.8) ;
\draw[thick, gray] (0, 0) rectangle (109.7, 118.9) ;
\draw[thick, gray] (13.7, 0) rectangle (96, 54.9) ;
\draw[thick, gray] (13.7, 118.9) rectangle (96, 182.9) ;
\draw[thick, gray] (54.85, 54.9) rectangle (96, 182.9) ;
\draw[thick, gray] (54.85, 0) -- (54.85, 0.88) ;
\draw[thick, gray] (54.85, 237.8) -- (54.85, 236.92) ;
\end{tikzpicture}
\end{center}
\end{document}
Sur ce, je me demande comment dessiner le plus efficacement un court : définir un node pour chaque coin ? Définir ces nodes par rapport à un node référence ? Bref.
J'ai besoin de positionner ce court de tennis dans un le trapèze suivant :
\documentclass[10pt, BCOR=0pt, DIV=22, a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\begin{document}
\thispagestyle{empty}
\begin{center}
\begin{tikzpicture}[x = 0.2 mm, y = 0.2 mm]
\draw[thick, green, rotate = -31] (0, 0) -- (375.36, 0) -- (-144.21, 872.54) -- (-320.79, 537.00) -- cycle ;
\end{tikzpicture}
\end{center}
\end{document}
Mais voilà :
- la grande longueur du court doit être parallèle aux côtés parallèles du trapèze,
- et le point du court qui avait originellement pour coordonnées (0, 0) est désormais positionné en (156.23, 321.15).
Comment faire ? Ça a l'air tout bête, mais j'ai essayé avec des `xshift` sans y réussir.
\documentclass[10pt, BCOR=0pt, DIV=22, a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\begin{document}
\thispagestyle{empty}
\begin{center}
\begin{tikzpicture}[x = 0.2 mm, y = 0.2 mm, rotate = -31]
\draw[thick, red] (0, 0) -- (375.36, 0) -- (-144.21, 872.54) -- (-320.79, 537.00) -- cycle ;
\draw[thick, gray] (0, 0) rectangle (109.7, 237.8) ;
\draw[thick, gray] (0, 0) rectangle (13.7, 237.8) ;
\draw[thick, gray] (96, 0) rectangle (109.7, 237.8) ;
\draw[thick, gray] (0, 0) rectangle (109.7, 118.9) ;
\draw[thick, gray] (13.7, 0) rectangle (96, 54.9) ;
\draw[thick, gray] (13.7, 118.9) rectangle (96, 182.9) ;
\draw[thick, gray] (54.85, 54.9) rectangle (96, 182.9) ;
\draw[thick, gray] (54.85, 0) -- (54.85, 0.88) ;
\draw[thick, gray] (54.85, 237.8) -- (54.85, 236.92) ;
\end{tikzpicture}
\end{center}
\end{document}
**EDIT** suite aux conseils de [touhami](http://texnique.fr/osqa/users/117/touhami), j'utilise la fonction *scope*.
\documentclass[10pt, BCOR=0pt, DIV=22, a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\begin{document}
\thispagestyle{empty}
\begin{center}
\begin{tikzpicture}[x = 0.2 mm, y = 0.2 mm]
\draw[thick, green, rotate = -31] (0, 0) -- (375.36, 0) -- (-144.21, 872.54) -- (-320.79, 537.00) -- cycle ;
\draw[thick, red, rotate = -31] (57.78, 30) -- (344.22, 29.99) -- (-137.13, 821.57) -- (-267.31, 574.21) -- cycle ;
\begin{scope}[xshift = 156.23, yshift = 321.15]
\draw[thick, gray] (0, 0) rectangle (109.7, 237.8) ;
\draw[thick, gray] (0, 0) rectangle (13.7, 237.8) ;
\draw[thick, gray] (96, 0) rectangle (109.7, 237.8) ;
\draw[thick, gray] (0, 0) rectangle (109.7, 118.9) ;
\draw[thick, gray] (13.7, 0) rectangle (96, 54.9) ;
\draw[thick, gray] (13.7, 118.9) rectangle (96, 182.9) ;
\draw[thick, gray] (54.85, 54.9) rectangle (96, 182.9) ;
\draw[thick, gray] (54.85, 0) -- (54.85, 0.88) ;
\draw[thick, gray] (54.85, 237.8) -- (54.85, 236.92) ;
\end{scope}
\end{tikzpicture}
\end{center}
\end{document}
Malheureusement, le court de tennis se déplace à un endroit où il ne se trouve pas en réalité (mes coordonnées sont très précises, elles sont relevées au théodolite) : il devrait être grosso modo centré par rapport au milieu du grand côté du trapèze. Je ne comprends pas pourquoi. J'ai essayé avec de simples points, et ça ne colle pas : c'est, je pense, une histoire de rotation.
**EDIT** : je poste un dessin. Il correspond à la réalité : j'ai obtenu au théodolite les mesures du trapèze et des deux coins du court de tennis qui y sont inclus. Mais je n'ai pas mesuré tout le court de tennis : je me suis référé à ses dimensions officielles.
![alt text][1] ![alt text][2]
Oui, bon : c'est dessiné vite fait, sans règle... ni *nodes* ! Mais on voit bien que le dessin obtenu par le code place le court de tennis trop haut.
[1]: http://texnique.fr:80/osqa/upfiles/spidertrapeze2.jpg
[2]: http://texnique.fr:80/osqa/upfiles/spidertrapeze3.pngréussir.