diff options
Diffstat (limited to 'macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex')
-rw-r--r-- | macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex | 69 |
1 files changed, 61 insertions, 8 deletions
diff --git a/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex b/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex index fa35906ead..9745bb144c 100644 --- a/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex +++ b/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex @@ -2,8 +2,46 @@ % R\'eponses \`a relier %%% \setKVdefault[ClesRelie]{Solution=false,LargeurG=5cm,LargeurD=2cm,Stretch=1.5,Ecart=2cm,Couleur=black}% +\defKV[ClesRelie]{Graine=\PfCGraineAlea{#1}}% -\newcommand\Relie[2][]{% +\NewDocumentCommand\Relie{som}{% + \useKVdefault[ClesRelie]% + \setKV[ClesRelie]{#2}% + \colorlet{PfCRelieCouleurTrace}{\useKV[ClesRelie]{Couleur}}% + \setsepchar[*]{,*/}\reademptyitems% + \readlist*\ListeRelie{#3}% + \ignoreemptyitems% + \IfBooleanTF{#1}{% + \buildtabrelieauto% + %\par + \ifboolKV[ClesRelie]{Solution}{% + \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{% + \itemtomacro\PfCListeReponsesMelangees[##1]\PfCNumReponses% + \itemtomacro\ListeRelie[\PfCNumReponses,1]\untest% + % Le test est \untest\\ + \ifx\bla\untest\bla% + \else + \tikz[remember picture,overlay]{\draw[PfCRelieCouleurTrace] (RelieG-\PfCNumReponses) -- (RelieD-##1);}% + \fi + }% + }{% + }% + }{% + \buildtabrelie% + \ifboolKV[ClesRelie]{Solution}{% + \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 + }% + }{% + }% + }% +}% + +\newcommand\Relieold[2][]{% \useKVdefault[ClesRelie]% \setKV[ClesRelie]{#1}% \setsepchar[*]{,*/}\reademptyitems% @@ -44,17 +82,32 @@ \setcounter{NbRelie}{0}% }% -\def\buildtabrelieold{% +\def\buildtabrelieauto{% \setcounter{NbRelie}{0}% + \xdef\PfCFooListeNbQ{1}% + \xintFor* ##1 in{\xintSeq{2}{\ListeRelielen}}\do{% + \xdef\PfCFooListeNbQ{\PfCFooListeNbQ,##1}% + }% + \setsepchar{,}\ignoreemptyitems% + \MelangeListe{\PfCFooListeNbQ}{\ListeRelielen}% + \setsepchar{,}\ignoreemptyitems% + \readlist*\PfCListeReponsesMelangees{\faa}% \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}% + 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}\tikz[remember + picture,overlay]{\node[name=RelieG-\theNbRelie,inner + sep=0pt]{};} \else - \uppercase{&}\stepcounter{NbRelie}\tikz[remember picture,baseline]{\node[name=RelieG-\theNbRelie]{\Large\textbullet};} -\fi&&&\ListeRelie[##1,2]\\}% + \uppercase{&}\stepcounter{NbRelie}\tikz[remember + picture,overlay]{\node[name=RelieG-\theNbRelie,inner + sep=0pt]{};\fill[] + (RelieG-\theNbRelie) circle[radius=1.5pt];} + \fi&&&\itemtomacro\PfCListeReponsesMelangees[##1]\PfCNumReponses\ListeRelie[\PfCNumReponses,2]\\}% \end{tabular}% \setcounter{NbRelie}{0}% }%
\ No newline at end of file |