[Résolu] Parcourir un tableau dans tikz

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu] Parcourir un tableau dans tikz

Messagepar XANA » Samedi 29 Février 2020, 16:36

Bonjour,
est-il possible de parcourir un tableau, dans tikz ?
Imaginons par exemple que je veuille tracer un carré rouge, un vert et un bleu aux positions (0,1), (2,3) et (1,1) respectivement. Je voudrais donc avoir un code de la sorte (j'ai pris ici la notation en C pour les tableaux) :
Code: Tout sélectionner
\documentclass[tikz]{standalone}
\begin{document}

couleurs = {red, green, blue}
posX = {0,2,1}
posY = {1,3,1}

\begin{tikzpicture}
\foreach \i in {0,1,2}
\draw[fill=couleurs[i]] (posX[i],posY[i]) -- (posX[i]+1, posY[i]) -- (posX[i]+1, posY[i]+1) -- (posX[i], posY[i]+1) -- cycle;
\end{tikzpicture}
\end{document}


Bien sûr, ce code ne fonctionne pas du tout, mais cela permettrait d'automatiser certains tracés et éviterait de recopier la ligne \draw 3 fois dans mon cas.

Merci
Dernière édition par XANA le Dimanche 01 Mars 2020, 09:57, édité 3 fois.
XANA
Déca-utilisateur
 
Messages: 34
Inscription: Lundi 04 Septembre 2017, 16:56
Statut actuel: Post-bac | CPGE

Publicité

Re: Parcourir un tableau dans tikz

Messagepar un bon petit » Samedi 29 Février 2020, 18:45

Je propose la synatxe suivante :
Code: Tout sélectionner
\documentclass{article}
\usepackage{tikz}
\def\drawlist#1{\begin{tikzpicture}\drawlisti#1(\drawlisti,,)\end{tikzpicture}}
\def\drawlisti(#1,#2,#3){%
   \ifx\drawlisti#1\else
      \draw[fill=#3,draw=none](#1,#2)rectangle(#1+1,#2+1);%
      \expandafter\drawlisti
   \fi
}
\begin{document}
\drawlist{(0,0,red)(2,3,green)(1,1,blue)(3,-1,pink)(5,-2,gray)}
\end{document}

Screenshot_20200229_184404.png
Screenshot_20200229_184404.png (821 Octets) Vu 377 fois
un bon petit
Giga-utilisateur
 
Messages: 762
Inscription: Vendredi 12 Juin 2009, 21:35
Localisation: Chambéry
Statut actuel: Actif et salarié | Enseignant

Re: Parcourir un tableau dans tikz

Messagepar rebouxo » Dimanche 01 Mars 2020, 08:15

Sinon, avec un \foreach (tant qu'à utiliser TiKz ;-)), mais avec une autre notation.

Code: Tout sélectionner
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
    \foreach \x/\y/\col in {0/0/red, 2/3/green, 1/1/blue, 3/-1/pink,
      5/2/gray}
    {
      \fill[\col] (\x,\y) rectangle ++(1,1) ;
      }
  \end{tikzpicture}
\end{document}

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6979
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Parcourir un tableau dans tikz

Messagepar XANA » Dimanche 01 Mars 2020, 09:53

Ça fonctionne bien !
Merci beaucoup !
XANA
Déca-utilisateur
 
Messages: 34
Inscription: Lundi 04 Septembre 2017, 16:56
Statut actuel: Post-bac | CPGE


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot] et 40 invités