summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex
blob: 1b425a7701d530d6b9820281479785da00d8730b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
%%%
% R\'eponses \`a relier
%%%
\setKVdefault[ClesRelie]{Solution=false,LargeurG=5cm,LargeurD=2cm,Stretch=1.5,Ecart=2cm,Couleur=black}

\newcommand\Relie[2][]{%
  \useKVdefault[ClesRelie]%
  \setKV[ClesRelie]{#1}%
  \setsepchar[*]{,*/}%
  \readlist*\ListeRelie{#2}%
  \buildtabrelie%
  \ifboolKV[ClesRelie]{Solution}{%
    \colorlet{PfCRelieCouleurTrace}{\useKV[ClesRelie]{Couleur}}%
    \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{%
      \itemtomacro\ListeRelie[##1,1]\untest
      \ifx\bla\untest\bla%
      \else
      \tikz[remember picture,overlay]{\draw[PfCRelieCouleurTrace] (RelieG-##1) -- (RelieD-\ListeRelie[##1,3]);}%
      \fi
    }%
  }{%
  }%
}

\newcounter{NbRelie}

\def\buildtabrelie{%
  \setcounter{NbRelie}{0}%
  \renewcommand{\arraystretch}{\useKV[ClesRelie]{Stretch}}%
  \begin{tabular}{p{\useKV[ClesRelie]{LargeurG}}cp{\useKV[ClesRelie]{Ecart}}>{\tikz[remember
    picture]{\node[name=RelieD-\theNbRelie,inner
    sep=0pt]{};\fill[] (RelieD-\theNbRelie) circle[radius=1.5pt]}}cp{\useKV[ClesRelie]{LargeurD}}}%
    \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{\ListeRelie[##1,1]\itemtomacro\ListeRelie[##1,1]\untest%
\ifx\bla\untest\bla%                                       
    \uppercase{&}\stepcounter{NbRelie}%
      \else
      \uppercase{&}\stepcounter{NbRelie}\tikz[remember
                   picture,overlay]{\node[name=RelieG-\theNbRelie,inner
                   sep=0pt]{};\fill[]
                   (RelieG-\theNbRelie) circle[radius=1.5pt];}
\fi&&&\ListeRelie[##1,2]\\}%
  \end{tabular}%
  \setcounter{NbRelie}{0}%
}%

\def\buildtabrelieold{%
  \setcounter{NbRelie}{0}%
  \renewcommand{\arraystretch}{\useKV[ClesRelie]{Stretch}}%
  \begin{tabular}{p{\useKV[ClesRelie]{LargeurG}}cp{\useKV[ClesRelie]{Ecart}}>{\tikz[remember
    picture,baseline]{\node[name=RelieD-\theNbRelie]{\Large\textbullet};}}cp{\useKV[ClesRelie]{LargeurD}}}%
    \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{\ListeRelie[##1,1]\itemtomacro\ListeRelie[##1,1]\untest%
\ifx\bla\untest\bla%                                       
    \uppercase{&}\stepcounter{NbRelie}%
      \else
      \uppercase{&}\stepcounter{NbRelie}\tikz[remember picture,baseline]{\node[name=RelieG-\theNbRelie]{\Large\textbullet};}
\fi&&&\ListeRelie[##1,2]\\}%
  \end{tabular}%
  \setcounter{NbRelie}{0}%
}%