Soit un court de tennis (que j'ai dessiné rapido, sans nodes ni quoi que ce soit — ça viendra) :

Ouvrir dans l'éditeur Overleaf
\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}

J'ai besoin de positionner ce court de tennis dans le trapèze suivant :

Ouvrir dans l'éditeur Overleaf
\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.

Posée 03 Nov, 20:32

Pathe's gravatar image

Pathe ♦♦
2.6k11173
Taux d'acceptation : 60%

Modifiée 04 Nov, 16:58

1

Voulez-vous faire comme ça :

\begin{tikzpicture}[x = 0.2 mm, y = 0.2 mm] \draw[thick, red] (0, 0) -- (375.36, 0) -- (-144.21, 872.54) -- (-320.79, 537.00) -- cycle ; \begin{scope}[rotate=31] \draw[thick, gray] (0, 0) rectangle (109.7, 237.8) ; .... \end{scope} \end{tikzpicture}

(03 Nov, 22:06) touhami touhami's gravatar image
1

Si oui, vous pouvez essayer avec \begin{scope}[rotate=31, xshift=20mm,yshift=40mm]

(03 Nov, 22:09) touhami touhami's gravatar image

@touhami : j'ai édité la question.

(03 Nov, 23:15) Pathe ♦♦ Pathe's gravatar image

Pouvez vous poster une image (dessin) de ce que vous voulez atteindre?

(04 Nov, 00:12) touhami touhami's gravatar image

@touhami : j'ai édité la question. Une fois le pépin résolu, je la remettrai en forme : les versions successives de code ne sont pas toutes utiles.

(04 Nov, 00:50) Pathe ♦♦ Pathe's gravatar image
1

OK. c'est le temps pour node :

\draw[thick, green, rotate = -31] (0, 0) -- (375.36, 0) -- (-144.21, 872.54) -- (-320.79, 537.00) -- cycle node (O) at (156.23, 321.15) {} ; ... \begin{scope}[shift = (O)] ...

(04 Nov, 11:36) touhami touhami's gravatar image

J'ai refondu la question.

Nota pour le lecteur surpris : le trapèze correspond à la réalité. Ses coordonnées, très précises, ont été obtenues à l'aide d'un théodolite ; il en va de même pour celles du point origine du court de tennis qui y est inclus. Mais je n'ai pas mesuré tout le court de tennis : je me suis référé à ses dimensions officielles.

(04 Nov, 16:57) Pathe ♦♦ Pathe's gravatar image
Affichage de 5 parmi 7 Afficher 2 commentaire(s) en plus

Grâce aux conseils de touhami, j'ai compris comment faire :

  • je trace le trapèze ;
  • je positionne, à l'endroit où le point origine du court doit se trouver, un nœud (node, en TikZ), que j'appelle C ;
  • je dessine le court de tennis à l'intérieur d'un environnement scope ;
  • j'applique le paramètre shift = (C) à l'environnement scope.

Et le tour est joué !

Ouvrir dans l'éditeur Overleaf
\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 node (C) at (156.23, 321.15) {} ;
    \begin{scope}[shift = (C)]
\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}
Lien permanent

Publiée 04 Nov, 16:45

Pathe's gravatar image

Pathe ♦♦
2.6k11173
Taux d'acceptation : 60%

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 ?

(04 Nov, 16:59) Pathe ♦♦ Pathe's gravatar image

Voulez vous poser une nouvelle question (un autre fil) ? il y a pleureuses façons.

(04 Nov, 20:30) touhami touhami's gravatar image

C'est fait.

(05 Nov, 16:10) Pathe ♦♦ Pathe's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.

Mots-clés de la question :

×34
×3
×1
×1
×1

Question posée : 03 Nov, 20:32

Question vue : 166 fois

Dernière mise à jour : 05 Nov, 16:10