From 982d5e88b736a798b356bf5cabe5e6c9b115f182 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Thu, 18 Aug 2022 03:00:59 +0000 Subject: CTAN sync 202208180300 --- macros/latex/contrib/exam/exam.md5 | 4 +- macros/latex/contrib/exam/examdoc.pdf | Bin 482795 -> 493628 bytes macros/latex/contrib/exam/examdoc.tex | 38 +- macros/latex/contrib/fithesis/LICENSE.tex | 2 +- macros/latex/contrib/fithesis/VERSION.tex | 2 +- macros/latex/contrib/fithesis/fithesis.dtx | 2 +- macros/latex/contrib/fithesis/fithesis.pdf | Bin 766216 -> 767427 bytes .../fithesis/logo/mu/fithesis-base-color.pdf | Bin 15062 -> 15062 bytes .../fithesis/logo/mu/fithesis-base-czech-color.pdf | Bin 3841 -> 3841 bytes .../fithesis/logo/mu/fithesis-base-czech.pdf | Bin 3837 -> 3837 bytes .../logo/mu/fithesis-base-english-color.pdf | Bin 3771 -> 3771 bytes .../fithesis/logo/mu/fithesis-base-english.pdf | Bin 3767 -> 3767 bytes .../contrib/fithesis/logo/mu/fithesis-base.pdf | Bin 15892 -> 15892 bytes .../fithesis/logo/mu/fithesis-econ-color.pdf | Bin 12305 -> 12305 bytes .../fithesis/logo/mu/fithesis-econ-czech-color.pdf | Bin 4605 -> 4605 bytes .../fithesis/logo/mu/fithesis-econ-czech.pdf | Bin 4600 -> 4600 bytes .../logo/mu/fithesis-econ-english-color.pdf | 16 +- .../fithesis/logo/mu/fithesis-econ-english.pdf | 16 +- .../contrib/fithesis/logo/mu/fithesis-econ.pdf | Bin 12838 -> 12838 bytes .../contrib/fithesis/logo/mu/fithesis-fi-color.pdf | Bin 11709 -> 11709 bytes .../fithesis/logo/mu/fithesis-fi-czech-color.pdf | Bin 3702 -> 3702 bytes .../contrib/fithesis/logo/mu/fithesis-fi-czech.pdf | Bin 3697 -> 3697 bytes .../fithesis/logo/mu/fithesis-fi-english-color.pdf | 16 +- .../fithesis/logo/mu/fithesis-fi-english.pdf | Bin 2721 -> 2727 bytes .../latex/contrib/fithesis/logo/mu/fithesis-fi.pdf | Bin 11529 -> 11529 bytes .../fithesis/logo/mu/fithesis-fsps-color.pdf | Bin 11199 -> 11199 bytes .../fithesis/logo/mu/fithesis-fsps-czech-color.pdf | Bin 4657 -> 4657 bytes .../fithesis/logo/mu/fithesis-fsps-czech.pdf | Bin 4652 -> 4652 bytes .../logo/mu/fithesis-fsps-english-color.pdf | Bin 3307 -> 3307 bytes .../fithesis/logo/mu/fithesis-fsps-english.pdf | Bin 3303 -> 3303 bytes .../contrib/fithesis/logo/mu/fithesis-fsps.pdf | Bin 11634 -> 11634 bytes .../fithesis/logo/mu/fithesis-fss-color.pdf | Bin 10758 -> 10758 bytes .../fithesis/logo/mu/fithesis-fss-czech-color.pdf | Bin 4507 -> 4507 bytes .../fithesis/logo/mu/fithesis-fss-czech.pdf | Bin 4502 -> 4502 bytes .../logo/mu/fithesis-fss-english-color.pdf | Bin 3097 -> 3097 bytes .../fithesis/logo/mu/fithesis-fss-english.pdf | Bin 3091 -> 3091 bytes .../contrib/fithesis/logo/mu/fithesis-fss.pdf | Bin 11492 -> 11492 bytes .../fithesis/logo/mu/fithesis-law-color.pdf | Bin 17579 -> 17579 bytes .../fithesis/logo/mu/fithesis-law-czech-color.pdf | Bin 3786 -> 3786 bytes .../fithesis/logo/mu/fithesis-law-czech.pdf | Bin 3780 -> 3780 bytes .../logo/mu/fithesis-law-english-color.pdf | 16 +- .../fithesis/logo/mu/fithesis-law-english.pdf | 16 +- .../contrib/fithesis/logo/mu/fithesis-law.pdf | Bin 18339 -> 18339 bytes .../fithesis/logo/mu/fithesis-med-color.pdf | Bin 9955 -> 9955 bytes .../fithesis/logo/mu/fithesis-med-czech-color.pdf | Bin 3782 -> 3782 bytes .../fithesis/logo/mu/fithesis-med-czech.pdf | Bin 3776 -> 3776 bytes .../logo/mu/fithesis-med-english-color.pdf | Bin 2852 -> 2852 bytes .../fithesis/logo/mu/fithesis-med-english.pdf | Bin 2849 -> 2849 bytes .../contrib/fithesis/logo/mu/fithesis-med.pdf | Bin 10494 -> 10494 bytes .../fithesis/logo/mu/fithesis-ped-color.pdf | Bin 9901 -> 9901 bytes .../fithesis/logo/mu/fithesis-ped-czech-color.pdf | Bin 4119 -> 4119 bytes .../fithesis/logo/mu/fithesis-ped-czech.pdf | Bin 4113 -> 4113 bytes .../logo/mu/fithesis-ped-english-color.pdf | 16 +- .../fithesis/logo/mu/fithesis-ped-english.pdf | Bin 2894 -> 2894 bytes .../contrib/fithesis/logo/mu/fithesis-ped.pdf | Bin 10396 -> 10396 bytes .../fithesis/logo/mu/fithesis-pharm-color.pdf | Bin 41114 -> 41114 bytes .../logo/mu/fithesis-pharm-czech-color.pdf | Bin 4008 -> 4008 bytes .../fithesis/logo/mu/fithesis-pharm-czech.pdf | Bin 4002 -> 4002 bytes .../logo/mu/fithesis-pharm-english-color.pdf | Bin 3073 -> 3073 bytes .../fithesis/logo/mu/fithesis-pharm-english.pdf | Bin 3069 -> 3069 bytes .../contrib/fithesis/logo/mu/fithesis-pharm.pdf | Bin 41093 -> 41093 bytes .../fithesis/logo/mu/fithesis-phil-color.pdf | Bin 11596 -> 11596 bytes .../fithesis/logo/mu/fithesis-phil-czech-color.pdf | Bin 3802 -> 3802 bytes .../fithesis/logo/mu/fithesis-phil-czech.pdf | Bin 3797 -> 3797 bytes .../logo/mu/fithesis-phil-english-color.pdf | Bin 3128 -> 3128 bytes .../fithesis/logo/mu/fithesis-phil-english.pdf | 16 +- .../contrib/fithesis/logo/mu/fithesis-phil.pdf | Bin 12083 -> 12083 bytes .../fithesis/logo/mu/fithesis-sci-color.pdf | Bin 24328 -> 24328 bytes .../fithesis/logo/mu/fithesis-sci-czech-color.pdf | Bin 4398 -> 4398 bytes .../fithesis/logo/mu/fithesis-sci-czech.pdf | Bin 4393 -> 4393 bytes .../logo/mu/fithesis-sci-english-color.pdf | Bin 3068 -> 3068 bytes .../fithesis/logo/mu/fithesis-sci-english.pdf | Bin 3063 -> 3063 bytes .../contrib/fithesis/logo/mu/fithesis-sci.pdf | Bin 25396 -> 25396 bytes macros/latex/contrib/fithesis/style/mu/base.dtx | 110 +- macros/latex/contrib/fithesis/style/mu/econ.dtx | 24 +- .../contrib/profcollege/doc/ProfCollege-doc.pdf | Bin 8684452 -> 8817716 bytes .../contrib/profcollege/latex/ProfCollege.sty | 1521 +++++++++++++++----- .../profcollege/metapost/PfC-Calculatriceold.mp | 195 --- .../profcollege/metapost/PfCArithmetiquePDF.mp | 237 +++ .../latex/contrib/profcollege/metapost/PfCLaTeX.mp | 21 +- 80 files changed, 1588 insertions(+), 680 deletions(-) delete mode 100644 macros/latex/contrib/profcollege/metapost/PfC-Calculatriceold.mp create mode 100644 macros/latex/contrib/profcollege/metapost/PfCArithmetiquePDF.mp (limited to 'macros/latex') diff --git a/macros/latex/contrib/exam/exam.md5 b/macros/latex/contrib/exam/exam.md5 index 6dbd2d391e..c7a6e049d9 100644 --- a/macros/latex/contrib/exam/exam.md5 +++ b/macros/latex/contrib/exam/exam.md5 @@ -1,3 +1,3 @@ b210b790c86d89aeccb508074bd001ae exam.cls -c9c5a6648a0a34ff32595455124eec6c examdoc.tex -6de4faf2e619d56b8516369800d8a04a examdoc.pdf +08261e0c96d341f948483d8fbf78a118 examdoc.pdf +b44eb4ab2c875e46f5239d5c27c37d64 examdoc.tex diff --git a/macros/latex/contrib/exam/examdoc.pdf b/macros/latex/contrib/exam/examdoc.pdf index fcf3b7f84b..dcd7c71f3d 100644 Binary files a/macros/latex/contrib/exam/examdoc.pdf and b/macros/latex/contrib/exam/examdoc.pdf differ diff --git a/macros/latex/contrib/exam/examdoc.tex b/macros/latex/contrib/exam/examdoc.tex index 579d551ae6..dfca897c85 100644 --- a/macros/latex/contrib/exam/examdoc.tex +++ b/macros/latex/contrib/exam/examdoc.tex @@ -53,7 +53,7 @@ \newcommand{\bs}{\texorpdfstring{\char`\\}{}} \newcommand{\docversion}{2.7} -\newcommand{\docdate}{February 26, 2021} +\newcommand{\docdate}{August 14, 2022} %\newcommand{\docdate}{Draft: \today} %-------------------------------------------------------------------- @@ -595,7 +595,8 @@ on all pages after the first, give the commands Sections~\ref{sec:beginexamples} through \ref{sec:endexamples} contain many other examples of headers and footers, and the full explanation -of the commands for headers and footers is in +of the commands for headers and footers (including header and footer +commands other than the ones we've just mentioned) is in sections~\ref{sec:pagestyle}--\ref{sec:QuesSpan}. \index{header|)} @@ -7568,7 +7569,7 @@ on all other pages, you would give the commands \begin{verbatim} \lhead{Math 115} \chead[Second Exam]{} -\rhead[July 4, 1776]{Second Exam Continued)} +\rhead[July 4, 1776]{Second Exam (Continued)} \end{verbatim} Any of the three parts of the header can have multiple lines. To @@ -7591,6 +7592,32 @@ appear on every page, you would give the commands \index{header!three parts|)} +%-------------------------------------------------------------------- +\subsubsection{Commands with optional arguments} +\label{sec:OptArg} +\index{optional arguments} + +\LaTeX{} has the property that if a command takes an optional +argument, and if that optional argument contains a command that also +has an optional argument, then \emph{that inner command must be + enclosed within curly braces}. For example, if you want the right +justified part of the first page header to be +\samplehead{}{}{Name:\enspace\makebox[2in]{\hrulefill}}{} but you want +the right justified part of the header on pages after the first to be +empty, then you should give the command +\begin{verbatim} +\rhead[{Name:\enspace\makebox[2in]{\hrulefill}}]{} +\end{verbatim} +Note that the optional argument to the \verb"\rhead" command is +\begin{verbatim} +{Name:\enspace\makebox[2in]{\hrulefill}} +\end{verbatim} +and not +\begin{verbatim} +Name:\enspace\makebox[2in]{\hrulefill} +\end{verbatim} +This is due to the way that \LaTeX{} delimits optional arguments, and +is nothing special about the \verb"exam" document class. %--------------------------------------------------------------------- \subsubsection*{Leaving extra room for multiple line headers} @@ -8334,11 +8361,14 @@ incomplete. \pagestyle{headandfoot} \lhead{\large\bfseries Mathematics 115\\ First Exam, July 4, 1776} \chead{} -\rhead[\large\bfseries Name:\enspace\makebox[2in]{\hrulefill}]{} +\rhead[{\large\bfseries Name:\enspace\makebox[2in]{\hrulefill}}]{} \lfoot{} \cfoot[]{Page \thepage} \rfoot{} \end{verbatim} + (For an explanation of why there seems to be an extra pair of curly + braces in the optional argument to the \verb"\rhead" command, see + section~\ref{sec:OptArg}.) \end{example} %-------------------------------------------------------------------- diff --git a/macros/latex/contrib/fithesis/LICENSE.tex b/macros/latex/contrib/fithesis/LICENSE.tex index a29d47f5a4..43ab5443ee 100644 --- a/macros/latex/contrib/fithesis/LICENSE.tex +++ b/macros/latex/contrib/fithesis/LICENSE.tex @@ -1,7 +1,7 @@ \input docstrip.tex \preamble -Copyright 1998--2021 Daniel Marek (DM), Jan Pavlovič (JP), +Copyright 1998--2022 Daniel Marek (DM), Jan Pavlovič (JP), Vít Novotný (VN), Tereza Vrabcová (TV), Petr Sojka (PS) http://www.fi.muni.cz/tech/unix/tex/fithesis.xhtml diff --git a/macros/latex/contrib/fithesis/VERSION.tex b/macros/latex/contrib/fithesis/VERSION.tex index 0dfaee2621..5ecb9fe309 100644 --- a/macros/latex/contrib/fithesis/VERSION.tex +++ b/macros/latex/contrib/fithesis/VERSION.tex @@ -1 +1 @@ -2021/10/17 v1.0.2 fithesis4 MU thesis class +2022/08/17 v1.1.0 fithesis4 MU thesis class diff --git a/macros/latex/contrib/fithesis/fithesis.dtx b/macros/latex/contrib/fithesis/fithesis.dtx index 53632b0a04..4c7577def5 100644 --- a/macros/latex/contrib/fithesis/fithesis.dtx +++ b/macros/latex/contrib/fithesis/fithesis.dtx @@ -57,7 +57,7 @@ \gdef\thesis@version@number{#1} \gdef\thesis@version@date{#2} \gdef\thesis@version{#2 #1 fithesis4 MU thesis class}} -\thesis@versiondef{v1.0.2}{2021/10/17}} +\thesis@versiondef{v1.1.0}{2022/08/17}} % {\newwrite\f\openout\f=VERSION\write\f{\thesis@version}\closeout\f} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/macros/latex/contrib/fithesis/fithesis.pdf b/macros/latex/contrib/fithesis/fithesis.pdf index e176e1d46e..c72c0af797 100644 Binary files a/macros/latex/contrib/fithesis/fithesis.pdf and b/macros/latex/contrib/fithesis/fithesis.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-color.pdf index 257f197708..43135ead46 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech-color.pdf index db17792996..bc5823d0e8 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech.pdf index 735d952686..83cec1ce23 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english-color.pdf index 09691f37d8..4d5385285b 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english.pdf index 0509a96a9c..3061e57bfc 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-base-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-base.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-base.pdf index fd398ee22f..ea01c3b512 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-base.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-base.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-color.pdf index d9edafa223..8617af782c 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech-color.pdf index f80ea85a60..39256d3c5b 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech.pdf index a641af60b9..9d8020156d 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english-color.pdf index e55fa24662..fa524253d2 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english-color.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english-color.pdf @@ -36,11 +36,11 @@ endobj - -2021-10-17T20:47:16Z -2021-10-17T20:47:16Z + +2022-08-17T15:05:58Z +2022-08-17T15:05:58Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -50,9 +50,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -66,7 +66,7 @@ xref 0000001274 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<40DA1DA992658F4FF4BFC98AEAF5041F><40DA1DA992658F4FF4BFC98AEAF5041F>] +/ID [<660B38A5A05ADA673B06E3355040D3D5><660B38A5A05ADA673B06E3355040D3D5>] >> startxref 2722 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english.pdf index 381a5fae09..a953347882 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ-english.pdf @@ -38,11 +38,11 @@ endobj - -2021-10-17T20:47:21Z -2021-10-17T20:47:21Z + +2022-08-17T15:06:04Z +2022-08-17T15:06:04Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -52,9 +52,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -68,7 +68,7 @@ xref 0000001268 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<561CF86F93CEDC183EB3DEB7DCEDC00A><561CF86F93CEDC183EB3DEB7DCEDC00A>] +/ID [] >> startxref 2716 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ.pdf index d62468248d..f1deab1806 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-econ.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-econ.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-color.pdf index 9b6e0f0c0f..af71e19dea 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech-color.pdf index 8584123929..7003ff247d 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech.pdf index 482cc07f7b..fa2fe2d9f7 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english-color.pdf index daaa98c007..947dc85730 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english-color.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english-color.pdf @@ -39,11 +39,11 @@ endobj - -2021-10-17T20:47:17Z -2021-10-17T20:47:17Z + +2022-08-17T15:05:58Z +2022-08-17T15:05:58Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -53,9 +53,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -69,7 +69,7 @@ xref 0000000973 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<31196CD0E4DB25BDCE8DAC5BF33AA38D><31196CD0E4DB25BDCE8DAC5BF33AA38D>] +/ID [] >> startxref 2421 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english.pdf index 23be564898..8c0d1dc516 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi.pdf index af68121d87..03fa6d1d9a 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fi.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fi.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-color.pdf index d0a3949eab..e3d3c03c67 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech-color.pdf index dedb28198e..fa22e7fce9 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech.pdf index c86c207e3d..b326e87f3f 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english-color.pdf index c8673b5246..0731b92362 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english.pdf index 739be37c73..e85675eafa 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps.pdf index 720f54e9de..6b5bf20b31 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fsps.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-color.pdf index f89cba1709..e769534337 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech-color.pdf index 007775a16b..0ca4cb825c 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech.pdf index 564a3b8b64..379493a7b1 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english-color.pdf index 5d7fc27007..cbca657876 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english.pdf index c38a7b9032..cd14ec64de 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss.pdf index 88123ca498..0e63613601 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-fss.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-fss.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-color.pdf index e0c41d60ca..28ecf2c00f 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech-color.pdf index 5d322deffa..cfb4d8cab3 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech.pdf index 8644f89765..0dd6948142 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english-color.pdf index 851f77bf59..daa79ae614 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english-color.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english-color.pdf @@ -38,11 +38,11 @@ endobj - -2021-10-17T20:47:18Z -2021-10-17T20:47:18Z + +2022-08-17T15:06:00Z +2022-08-17T15:06:00Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -52,9 +52,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -68,7 +68,7 @@ xref 0000001049 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<55332FD948AF9B42F387E093B1930D59><55332FD948AF9B42F387E093B1930D59>] +/ID [<0B1DB7955D964F8AEC39ECBF7B4D9022><0B1DB7955D964F8AEC39ECBF7B4D9022>] >> startxref 2497 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english.pdf index c21da08678..ce2e36457b 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-law-english.pdf @@ -42,11 +42,11 @@ endobj - -2021-10-17T20:47:23Z -2021-10-17T20:47:23Z + +2022-08-17T15:06:06Z +2022-08-17T15:06:06Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -56,9 +56,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -72,7 +72,7 @@ xref 0000001045 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<21FD358098839F82AC496F160C142ED4><21FD358098839F82AC496F160C142ED4>] +/ID [<04AB7B86740730EB31A6A5F3388E4916><04AB7B86740730EB31A6A5F3388E4916>] >> startxref 2493 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-law.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-law.pdf index d8b514082f..6dacbe3383 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-law.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-law.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-color.pdf index 9bd2d504af..a3102a7f15 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech-color.pdf index cfafe11228..2c761c990f 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech.pdf index 76785f033f..b368fc55d9 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english-color.pdf index 319583eebb..2026c78e18 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english.pdf index cc5ae85028..4dbb67d7c3 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-med-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-med.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-med.pdf index 272e62aa36..d5698a8402 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-med.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-med.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-color.pdf index df3714c2e8..dca9d8a142 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech-color.pdf index 928e399668..dbbdd7d542 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech.pdf index 608f3ed3e3..6a796a0950 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english-color.pdf index 6b0a967117..fb5795833d 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english-color.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english-color.pdf @@ -37,11 +37,11 @@ endobj - -2021-10-17T20:47:19Z -2021-10-17T20:47:19Z + +2022-08-17T15:06:01Z +2022-08-17T15:06:01Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -51,9 +51,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -67,7 +67,7 @@ xref 0000001143 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<3D23766A4C9CE113BE0885DB676F8FD4><3D23766A4C9CE113BE0885DB676F8FD4>] +/ID [] >> startxref 2591 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english.pdf index e21f13c40d..17c9dae174 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped.pdf index fb9a5ecfc6..3d06753a53 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-ped.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-ped.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-color.pdf index 6283436cc2..4c0fd43fe8 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech-color.pdf index 53cc5e2ec7..c1edf583b1 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech.pdf index 4fe8f626ed..cde89d49ca 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english-color.pdf index d390a724e1..06908796cf 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english.pdf index ae0341515c..54421c014f 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm.pdf index fde9998208..8bc4582e3c 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-pharm.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-color.pdf index 3df1faa654..5f5ddcdff8 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech-color.pdf index 33d878816b..efbd0ec8b1 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech.pdf index f6b15e0a0c..d572ab8f88 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english-color.pdf index 0d62d0db44..2546fd8495 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english.pdf index f2df1f8b07..daab3c116c 100644 --- a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english.pdf +++ b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil-english.pdf @@ -38,11 +38,11 @@ endobj - -2021-10-17T20:47:25Z -2021-10-17T20:47:25Z + +2022-08-17T15:06:08Z +2022-08-17T15:06:08Z cairo 1.16.0 (https://cairographics.org) - + Untitled @@ -52,9 +52,9 @@ endobj endstream endobj 2 0 obj -<>endobj xref 0 8 @@ -68,7 +68,7 @@ xref 0000001364 00000 n trailer << /Size 8 /Root 1 0 R /Info 2 0 R -/ID [<80B8898B86BD65AA05E219B06B1C67C8><80B8898B86BD65AA05E219B06B1C67C8>] +/ID [<2507C723F062AB2F461DA5C72F251773><2507C723F062AB2F461DA5C72F251773>] >> startxref 2812 diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil.pdf index c3364b3249..65c096d7a8 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-phil.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-phil.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-color.pdf index b021508c51..6d5e66175e 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech-color.pdf index cf28aaa69c..9e7b9ee7af 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech.pdf index 44efaf8bb7..178514d1d2 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-czech.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english-color.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english-color.pdf index 7e919ea306..e7ca4deb51 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english-color.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english-color.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english.pdf index 9115eba1c4..6bfafe6b7f 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci-english.pdf differ diff --git a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci.pdf b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci.pdf index 81801bfc2c..bf5685d5d3 100644 Binary files a/macros/latex/contrib/fithesis/logo/mu/fithesis-sci.pdf and b/macros/latex/contrib/fithesis/logo/mu/fithesis-sci.pdf differ diff --git a/macros/latex/contrib/fithesis/style/mu/base.dtx b/macros/latex/contrib/fithesis/style/mu/base.dtx index a6c43b158d..32a93f115b 100644 --- a/macros/latex/contrib/fithesis/style/mu/base.dtx +++ b/macros/latex/contrib/fithesis/style/mu/base.dtx @@ -9,7 +9,7 @@ % after \texttt{style/fithesis-base.sty}, regardless of the value % of the |\thesis@style| macro. % \begin{macrocode} -\ProvidesPackage{fithesis/style/mu/fithesis-mu-base}[2021/05/23] +\ProvidesPackage{fithesis/style/mu/fithesis-mu-base}[2022/08/15] \NeedsTeXFormat{LaTeX2e} % \end{macrocode} % The file recognizes the following options: \begin{itemize} @@ -65,6 +65,22 @@ \DeclareOption{palatino}{\thesis@palatino@true} \DeclareOption{nopalatino}{\thesis@palatino@false} % \end{macrocode} +% \item\texttt{neuehaas}, \texttt{noneuehaas} -- The sans serif +% text font family is going to be either set to Neue Haas +% (TeX Gyre Heros) or left untouched, respectively. The +% \DescribeMacro{\ifthesis@neuehaas@}|\ifthesis@|^^A +% \discretionary{}{}{}|neuehaas@| conditional is set to either +% \texttt{true} or \texttt{false}, respectively. The Neue Haas +% font is a sans serif font chosen to represent the Masaryk +% University in Brno as per its Graphic manual. +% \changes{v1.1.0}{2022/08/15}{^^A +% Added the \texttt{neuehas} and \texttt{noneuehaas} package options +% for the Masaryk University in Brno. [TV]} +% \begin{macrocode} +\newif\ifthesis@neuehaas@ +\DeclareOption{neuehaas}{\thesis@neuehaas@true} +\DeclareOption{noneuehaas}{\thesis@neuehaas@false} +% \end{macrocode} % \item\texttt{color}, \texttt{monochrome} -- Certain % typographical elements either are or aren't going to be % typeset in color, respectively. The @@ -76,6 +92,18 @@ \DeclareOption{monochrome}{\thesis@color@false} \DeclareOption{color}{\thesis@color@true} % \end{macrocode} +% \item\texttt{colorbold}, \texttt{nocolorbold} -- The bold text either +% is or isn't colored (black is used instead). The +% \DescribeMacro{\ifthesis@colorbold}|\ifthesis@colorbold@| conditional +% is set to either \texttt{true} or \texttt{false}, respectively. +% \changes{v1.1.0}{2022/08/15}{^^A +% Added the \texttt{colorbold} and \texttt{nocolorbold} package +% options for the Masaryk University in Brno. [TV]} +% \begin{macrocode} +\newif\ifthesis@colorbold@ +\DeclareOption{colorbold}{\thesis@colorbold@true} +\DeclareOption{nocolorbold}{\thesis@colorbold@false} +% \end{macrocode} % \item\texttt{microtype}, \texttt{nomicrotype} -- The % microtypographic extension of modern \TeX\ engines -- such as % \hologo{pdfTeX}, \Hologo{XeTeX}, or \Hologo{LuaTeX} -- is or isn't @@ -88,6 +116,19 @@ \DeclareOption{microtype}{\thesis@microtype@true} \DeclareOption{nomicrotype}{\thesis@microtype@false} % \end{macrocode} +% \item\texttt{sansbold}, \texttt{nosansbold} -- The \cs{bfseries} +% command for switching to the bold typeface is or isn't going to use +% the sans-serif type face, respectively. The +% \DescribeMacro{\ifthesis@sansbold@}|\ifthesis@sansbold@| conditional +% is set to either \texttt{true} or \texttt{false}, respectively. +% \changes{v1.1.0}{2022/08/02}{^^A +% Added the \texttt{sansbold} and \texttt{nosansbold} package options +% for the Masaryk University in Brno. [VN]} +% \begin{macrocode} +\newif\ifthesis@sansbold@ +\DeclareOption{sansbold}{\thesis@sansbold@true} +\DeclareOption{nosansbold}{\thesis@sansbold@false} +% \end{macrocode} % \item\texttt{table}, \texttt{oldtable} -- If the % |\ifthesis@color@| conditional is \texttt{true}, then the % definitions of the \texttt{tabular}, \texttt{tabularx}, and @@ -156,20 +197,26 @@ % \DescribeMacro{\ifthesis@digital@}|\ifthesis@digital@| % conditional is set to \texttt{true} or \texttt{false}, % respectively. +% \changes{v1.1.0}{2022/08/15}{^^A +% Added the \texttt{colorbold} and \texttt{nocolorbold} package +% options for the Masaryk University in Brno. [TV]} % \begin{macrocode} \newif\ifthesis@digital@ \DeclareOption{digital}{% - \ExecuteOptions{color,cover}% + \ExecuteOptions{color,cover,colorbold}% \thesis@digital@true} \DeclareOption{printed}{% - \ExecuteOptions{monochrome,nocover}% + \ExecuteOptions{monochrome,nocover,nocolorbold}% \thesis@digital@false} % \end{macrocode} % \end{itemize} % These are the default options: +% \changes{v1.1.0}{2022/08/02}{^^A +% Added the \texttt{sansbold} and \texttt{nosansbold} package options +% for the Masaryk University in Brno. [VN]} % \begin{macrocode} \ExecuteOptions{% - printed,12pt,twoside,final,microtype,palatino,oldtable,lot,lof} + printed,12pt,twoside,final,microtype,sansbold,palatino,neuehaas,oldtable,lot,lof} \ProcessOptions* % \end{macrocode} % The file uses English locale strings within the macros. @@ -260,19 +307,26 @@ % \changes{v1.0.0}{2018/11/18}{^^A % The \TeX{} Gyre Heros is used as the main sans serif font % instead of Latin Modern. [VN]} +% \changes{v1.1.0}{2022/08/15}{^^A +% Added the \texttt{neuehas} and \texttt{noneuehaas} package options +% for the Masaryk University in Brno. [TV]} % \begin{macrocode} \ifthesis@xeluatex \ifthesis@palatino@ \thesis@require{fontspec} \thesis@require{unicode-math} \setmainfont[Ligatures=TeX]{TeX Gyre Pagella} - \setsansfont[Ligatures=TeX,Scale=MatchLowercase]{TeX Gyre Heros} \setmathfont[math-style=ISO,bold-style=ISO]{texgyrepagella-math.otf} \fi + \ifthesis@neuehaas@ + \thesis@require{fontspec} + \setsansfont[Ligatures=TeX,Scale=MatchLowercase]{TeX Gyre Heros} + \fi % \end{macrocode} % The following packages get only loaded, when the document is not -% being typeset using the \Hologo{XeTeX} or \Hologo{LuaTeX} engine -% and the |\ifthesis@palatino@| conditional is \texttt{true}: +% being typeset using the \Hologo{XeTeX} or \Hologo{LuaTeX} engine, +% the |\ifthesis@palatino@| conditional is \texttt{true}, and the +% |\ifthesis@neuehaas@| conditional is \texttt{true}: % \begin{itemize} % \item\textsf{cmap} -- Places an explicit \texttt{ToUnicode} % map in the resulting PDF file, allowing for the extraction of @@ -298,6 +352,9 @@ \thesis@require{lmodern} \thesis@require{mathpazo} \thesis@require{tgpagella} + \RequirePackage[T1]{fontenc} + \fi + \ifthesis@neuehaas@ \thesis@require[scale=0.863]{tgheros} \RequirePackage[T1]{fontenc} \fi @@ -572,14 +629,21 @@ % and to the secondary color in the style files of the Masaryk % University in Brno, Czech Republic. [VN]} % The |\bfseries| macro is redefined to switch to the sans serif -% type face in the secondary color. The original definition of -% |\bfseries| is stored in the +% type face (conditional on \cs{ifthesis@sansbold@}) in the secondary color. +% The original definition of |\bfseries| is stored in the % \DescribeMacro{\thesis@bfseries@old}|\thesis@bfseries@old| % macro. +% \changes{v1.1.0}{2022/08/02}{^^A +% Added the \texttt{sansbold} and \texttt{nosansbold} package options +% for the Masaryk University in Brno. [VN]} +% \changes{v1.1.0}{2022/08/15}{^^A +% Added the \texttt{colorbold} and \texttt{nocolorbold} package +% options for the Masaryk University in Brno. [TV]} % \begin{macrocode} \let\thesis@bfseries@old\bfseries \def\bfseries{% - \sffamily\color{thesis@color@secondary}\thesis@bfseries@old} + \ifthesis@sansbold@\sffamily\fi + \ifthesis@colorbold@\color{thesis@color@secondary}\fi\thesis@bfseries@old} % \end{macrocode} % The file defines several blocks to be used in the redefinitions % of the |\thesis@blocks@preamble| and |\thesis@blocks@postamble| @@ -773,7 +837,14 @@ \vspace{0.75cm}% {\sf\thesis@titlePage@large\thesis@@upper{facultyName}\par}% \vfill - {\bf\thesis@titlePage@Huge\thesis@TeXtitle\par}% +% \end{macrocode} +% \changes{v1.1.0}{2022/08/17}{^^A +% Typeset thesis title on cover and title pages in sans serif typeface. [VN]} +% \begin{macrocode} + \begingroup + \thesis@colorbold@true + {\sffamily\bfseries\thesis@titlePage@Huge\thesis@TeXtitle\par}% + \endgroup \vspace{1.5cm}% {\sf\thesis@titlePage@Large\thesis@@{typeName}\par}% \vspace{1.5cm}% @@ -871,10 +942,17 @@ \par\vspace{0.75cm}% {\sf\thesis@titlePage@large\thesis@@upper{facultyName}\par}% \vfill - {\bf\thesis@titlePage@Huge\thesis@TeXtitle\par}% + \begingroup + \thesis@colorbold@true + {\sffamily\bfseries\thesis@titlePage@Huge\thesis@TeXtitle\par}% + \endgroup \vspace{1.5cm}% {\sf\thesis@titlePage@Large\thesis@@{typeName}\par}% \vspace{1.5cm}% +% \end{macrocode} +% \changes{v1.1.0}{2022/08/17}{^^A +% Typeset thesis title on cover and title pages in sans serif typeface. [VN]} +% \begin{macrocode} {\sf\thesis@titlePage@LARGE\thesis@upper{author}\par}% \vfill\vfill {\sf\thesis@titlePage@large\thesis@@{advisorTitle}: \thesis@advisor\par}% @@ -1618,12 +1696,14 @@ \if@twoside \oddsidemargin 0.75in \evensidemargin 0.4in - \marginparwidth 0pt \else \oddsidemargin 0.75in \evensidemargin 0.75in - \marginparwidth 0pt \fi +% \end{macrocode} +% \changes{v1.1.0}{2022/04/19}{Add space for margin notes. [VN]} +% \begin{macrocode} +\marginparwidth 2.75cm \marginparsep 10pt \topmargin 0.4in @@ -1781,7 +1861,7 @@ \reset@font\normalsize\bfseries}} \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{% -3.25ex plus-1ex minus-.2ex}{1.5ex plus.2ex}{% - \reset@font\normalsize}} + \reset@font\normalsize\bfseries}} \def\paragraph{\@startsection{paragraph}{4}{\z@}{% 3.25ex plus1ex minus.2ex}{-1em}{% \reset@font\normalsize\bfseries}} diff --git a/macros/latex/contrib/fithesis/style/mu/econ.dtx b/macros/latex/contrib/fithesis/style/mu/econ.dtx index a05cacf39c..fc210098b3 100644 --- a/macros/latex/contrib/fithesis/style/mu/econ.dtx +++ b/macros/latex/contrib/fithesis/style/mu/econ.dtx @@ -10,13 +10,19 @@ % \changes{v1.0.0}{2021/03/19}{Updated urls to show the most recent % requirements and recommendations used in preparation of the % template. [TV]} +% \changes{v1.1.0}{2022/04/19}{Updated urls to show the most recent +% requirements and recommendations used in preparation of the +% template. [VN]} % published at the website of the faculty\footnote{See \url{https:^^A % //is.muni.cz/auth/do/econ/uredni_deska/predpisy_ESF/smernice/sme^^A -% rnice_dekana/94383996/} and \url{https://is.muni.cz/auth/do/econ^^A -% /uredni_deska/predpisy_ESF/smernice/smernice_dekana/104768134/}}. +% rnice/smernice_dekana/prehled/2019/smernice_c_9_2019_o_tvorbe_od^^A +% evzdavani_zverejnovani_a_hodnoceni_bc_zaverecnych_a/SmerniceDeka^^A +% na2019_c.9__2_FINALk_vydani.pdf} and \url{https://is.muni.cz/aut^^A +% h/do/econ/uredni_deska/predpisy_ESF/smernice/smernice_dekana/104^^A +% 768134/}}. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{fithesis/style/mu/fithesis-mu-econ}[2021/04/24] +\ProvidesPackage{fithesis/style/mu/fithesis-mu-econ}[2022/08/17] % \end{macrocode} % The file defines the color scheme of the respective faculty. Note % the the color definitions are in RGB, which makes the resulting @@ -85,10 +91,15 @@ % to the definition within the \texttt{style/mu/base.sty} file, this % macro does not include the title of the thesis, and typesets the % name of the author at the bottom of the page. +% \changes{v1.1.0}{2022/08/17}{^^A +% Typeset thesis title on cover and title pages in sans serif typeface. [VN]} % \begin{macrocode} \thesis@xpatch\thesis@blocks@cover{% \vfill - {\bf\thesis@titlePage@Huge\thesis@TeXtitle\par}% + \begingroup + \thesis@colorbold@true + {\sffamily\bfseries\thesis@titlePage@Huge\thesis@TeXtitle\par}% + \endgroup \vspace{1.5cm}% {\sf\thesis@titlePage@Large\thesis@@{typeName}\par}% \vspace{1.5cm}% @@ -280,9 +291,9 @@ \thesis@blocks@bibEntryEn \thesis@blocks@abstractEn \thesis@blocks@declaration + \thesis@blocks@assignment \thesis@blocks@thanks - \thesis@blocks@toc - \thesis@blocks@tables} + \thesis@blocks@toc} % \end{macrocode} % All blocks within the autolayout postamble that are not defined % within this file are defined in the \texttt{style/mu/base.sty} @@ -293,5 +304,6 @@ \def\thesis@blocks@postamble{% \ifx\thesis@doctoral\thesis@type\thesis@blocks@summary\else\fi \thesis@blocks@bibliography + \thesis@blocks@tables } % \end{macrocode} diff --git a/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf b/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf index c78ed2b3b4..c58be2a099 100644 Binary files a/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf and b/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf differ diff --git a/macros/latex/contrib/profcollege/latex/ProfCollege.sty b/macros/latex/contrib/profcollege/latex/ProfCollege.sty index f027170b16..3cdb5e4ccf 100644 --- a/macros/latex/contrib/profcollege/latex/ProfCollege.sty +++ b/macros/latex/contrib/profcollege/latex/ProfCollege.sty @@ -2,9 +2,9 @@ % licence : Released under the LaTeX Project Public License v1.3c % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e}% -\def\filedate{2022/08/01}% +\def\filedate{2022/08/17}% \let\PfCfiledate\filedate% -\def\fileversion{0.99-t}% +\def\fileversion{0.99-v}% \let\PfCfileversion\fileversion% \ProvidesPackage{ProfCollege}[\filedate\space v\fileversion\space Aide pour utiliser LaTeX au college] @@ -59,7 +59,7 @@ \RequirePackage[shellescape,latex]{gmp}%inclusion de figures metapost "à la volée"% \gmpoptions{everymp={prologues:=3; input PfCLaTeX; input PfCSvgnames; input PfCConstantes; input PfCGeometrie; input PfCAfficheur;}} \usempxclass{article} -\usempxpackage{ProfCollege} +\usempxpackage[locale=FR,mode = match, propagate-math-font = true,reset-math-version = false, reset-text-family = false,reset-text-series = false, reset-text-shape = false,text-family-to-math = true, text-series-to-math = true, output-decimal-marker={,},group-minimum-digits=4]{siunitx} \usempxpackage[utf8]{inputenc} \usempxpackage[T1]{fontenc} \usempxpackage{fourier} @@ -69,7 +69,7 @@ \RequirePackage[latex]{gmp}%inclusion de figures metapost "à la volée"% \gmpoptions{everymp={prologues:=3; input PfCLaTeX; input PfCSvgnames; input PfCConstantes; input PfCGeometrie; input PfCAfficheur;}} \usempxclass{article} -\usempxpackage{ProfCollege} +\usempxpackage[locale=FR,mode = match, propagate-math-font = true,reset-math-version = false, reset-text-family = false,reset-text-series = false, reset-text-shape = false,text-family-to-math = true, text-series-to-math = true, output-decimal-marker={,},group-minimum-digits=4]{siunitx} \usempxpackage[utf8]{inputenc} \usempxpackage[T1]{fontenc} \usempxpackage{fourier} @@ -105,6 +105,7 @@ \RequirePackage{fontawesome5}%Pour l'environnement Twitter \RequirePackage{pifont}%Pour la commande \Autonomie \RequirePackage{nicematrix}% +\NiceMatrixOptions{allow-duplicate-names} \let\myoldmulticolumn\multicolumn \AtBeginEnvironment{tabular}{\let\multicolumn\myoldmulticolumn} @@ -345,6 +346,548 @@ \day=\the\PfCrappeljour\relax% } +%%% +% PixelArt +%%% +\newtoks\toklistePANombre% +\def\UpdatetoksPANombre#1\nil{\addtotok\toklistePANombre{"#1",}}% + +\setKVdefault[ClesPixelArt]{Largeur=29,Hauteur=29,Solution=false,Lettres=ABCDEFGHIJK,Nombres=false,ListeCouleurs={Orange,Red,LightGray,Maroon,Purple,black,black,Plum,Orange,White,White},Unite=5mm} +\defKV[ClesPixelArt]{ListeNombres=\setKV[ClesPixelArt]{Nombres}} + +\NewDocumentCommand\PixelArt{o m}{% + \toklistePANombre{}% + \useKVdefault[ClesPixelArt]% + \setKV[ClesPixelArt]{#1}% + \xdef\ListeAvantCouleurs{\useKV[ClesPixelArt]{ListeCouleurs}}% + \xdef\ListeAvantNombres{\useKV[ClesPixelArt]{ListeNombres}}% + \readlist*\ListePANombre{\ListeAvantNombres}% + \foreachitem\compteur\in\ListePANombre{\expandafter\UpdatetoksPANombre\compteur\nil}% + \BuildPixelArt{#2}{\useKV[ClesPixelArt]{Lettres}}{\ListeAvantCouleurs}{\the\toklistePANombre}% +}% + +\NewDocumentCommand\BuildPixelArt{m m m m}{% + \ifluatex + \mplibforcehmode + \begin{mplibcode} + largeur:=\useKV[ClesPixelArt]{Largeur}; + hauteur:=\useKV[ClesPixelArt]{Hauteur}; + Unite:=\useKV[ClesPixelArt]{Unite}; + boolean Solution,Nombres; + Solution:=\useKV[ClesPixelArt]{Solution}; + Nombres:=\useKV[ClesPixelArt]{Nombres}; + string BaseLettres; + BaseLettres=str #2; + + color ColorEntier[],ColFond; + n:=0; + for p_=#3: + n:=n+1; + ColorEntier[n]:=p_; + endfor; + + string RetiensNombres[]; + if Nombres: + n:=0; + for p_=#4: + n:=n+1; + RetiensNombres[n]=p_; + endfor; + fi; + + vardef Lecturecsv(expr nomfichier)= + for h=hauteur downto 1: + string p_; + p_=readfrom nomfichier; + l:=0; + for p=0 step 2 until 2*largeur-2: + l:=l+1; + if (substring(p,p+1) of p_)="-": + else: + if Nombres: + for m=0 upto (length BaseLettres-1): + if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres: + label(TEX(RetiensNombres[m+1]),((l-1)*Unite,(h-1)*Unite)); + fi; + endfor; + else: + label(TEX(substring(p,p+1) of p_),((l-1)*Unite,(h-1)*Unite)); + fi; + if Solution: + for m=0 upto (length BaseLettres-1): + if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres: + ColFond:=ColorEntier[m+1]; + fi; + endfor; + if unknown ColFond: else: fill (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite) withcolor ColFond fi; + fi; + trace (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite); + fi; + endfor; + endfor; + closefrom nomfichier; + enddef; + + Lecturecsv("#1"); + \end{mplibcode} + \else + \begin{mpost}[mpsettings={largeur:=\useKV[ClesPixelArt]{Largeur}; hauteur:=\useKV[ClesPixelArt]{Hauteur}; Unite:=\useKV[ClesPixelArt]{Unite}; boolean Solution,Nombres; Solution:=\useKV[ClesPixelArt]{Solution}; Nombres:=\useKV[ClesPixelArt]{Nombres};}] + string BaseLettres; + BaseLettres=str #2; + + color ColorEntier[],ColFond; + n:=0; + for p_=#3: + n:=n+1; + ColorEntier[n]:=p_; + endfor; + + string RetiensNombres[]; + if Nombres: + n:=0; + for p_=#4: + n:=n+1; + RetiensNombres[n]=p_; + endfor; + fi; + + vardef Lecturecsv(expr nomfichier)= + for h=hauteur downto 1: + string p_; + p_=readfrom nomfichier; + l:=0; + for p=0 step 2 until 2*largeur-2: + l:=l+1; + if (substring(p,p+1) of p_)="-": + else: + if Nombres: + for m=0 upto (length BaseLettres-1): + if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres: + label(LATEX(RetiensNombres[m+1]),((l-1)*Unite,(h-1)*Unite)); + fi; + endfor; + else: + label(LATEX(substring(p,p+1) of p_),((l-1)*Unite,(h-1)*Unite)); + fi; + if Solution: + for m=0 upto (length BaseLettres-1): + if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres: + ColFond:=ColorEntier[m+1]; + fi; + endfor; + if unknown ColFond: else: fill (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite) withcolor ColFond fi; + fi; + trace (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite); + fi; + endfor; + endfor; + closefrom nomfichier; + enddef; + + Lecturecsv("#1"); + \end{mpost} + \fi +} + +%%% +% Yohaku +%%% +\setKVdefault[Yohaku]{Taille=2,Largeur=1cm,Hauteur=1cm,Addition,Multiplication=false,Perso=false,Limite=50,Pair=false,Impair=false,Premier=false,Solution=false,Visible=false,Bordure=false,CouleurResultat=gray!15,Ligne=0,Colonne=0,PasL=0,PasC=0,CouleurZone=gray!25}% +\defKV[Yohaku]{Case=\setKV[Yohaku]{Visible}}% + +\newlength\PfCYohaku% + +\xdef\PfCYHKpremier{2,3,5,7,11,13,17,19,23,29,31,37,41,43,47}% + +\NewDocumentCommand\Yohaku{o m}{% + \useKVdefault[Yohaku]% + \setKV[Yohaku]{#1}% + \xdef\PfCYHKlast{\fpeval{\useKV[Yohaku]{Taille}+1}}% + \xdef\PfCYHKnombre{1}% + \xdef\PfCYHKpair{2}% + \xdef\PfCYHKimpair{1}% + \xintFor* ##1 in{\xintSeq{2}{\fpeval{\useKV[Yohaku]{Limite}}}}\do{% + \xdef\PfCYHKnombre{\PfCYHKnombre,##1}% + }% + \xintFor* ##1 in{\xintSeq{2}{\fpeval{\useKV[Yohaku]{Limite}}}}\do{% + \xdef\PfCYHKpair{\PfCYHKpair,\fpeval{##1*2}}% + }% + \xintFor* ##1 in{\xintSeq{1}{\fpeval{\useKV[Yohaku]{Limite}}}}\do{% + \xdef\PfCYHKimpair{\PfCYHKimpair,\fpeval{##1*2+1}}% + }% + % + \ifboolKV[Yohaku]{Perso}{% + \setsepchar[*]{,*/}% + \readlist*\PfCYHKListe{#2}% + \setsepchar{,}% + \xdef\PfCYHKListeFoo{}% + \foreachitem\compteur\in\PfCYHKListe[1]{ + \xdef\PfCYHKListeFoo{\PfCYHKListeFoo \PfCYHKListe[1,\compteurcnt],}% + }% + \ignoreemptyitems\readlist*\PfCYHKListeNA{\PfCYHKListeFoo}% + \xdef\PfCYHKListeFoo{}% + \foreachitem\compteur\in\PfCYHKListe[2]{ + \xdef\PfCYHKListeFoo{\PfCYHKListeFoo \PfCYHKListe[2,\compteurcnt],}% + }% + \ignoreemptyitems\readlist*\PfCYHKListeP{\PfCYHKListeFoo}% + }{% + \ifboolKV[Yohaku]{Premier}{% + \xdef\PfCYHKListe{\PfCYHKpremier}% + }{% + \ifboolKV[Yohaku]{Impair}{% + \xdef\PfCYHKListe{\PfCYHKimpair}% + }{% + \ifboolKV[Yohaku]{Pair}{% + \xdef\PfCYHKListe{\PfCYHKpair}% + }{% + \xdef\PfCYHKListe{\PfCYHKnombre}% + }% + }% + }% + % \xintifboolexpr{\useKV[Yohaku]{Taille}==2}{\MelangeListe{\PfCYHKListe}{4}}{\MelangeListe{\PfCYHKListe}{9}}% + \MelangeListe{\PfCYHKListe}{\fpeval{\useKV[Yohaku]{Taille}**2}}% + \readlist*\PfCYHKListeNA{\faa}% + %Sommes/Produits + \xdef\PfCYHKListeProduit{} + %verticaux + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \ifboolKV[Yohaku]{Multiplication}{% + \xdef\PfCYHKTampon{1}% + \xintFor* ##1 in {\xintSeq{0}{\fpeval{\useKV[Yohaku]{Taille}-1}}}\do{% + \xdef\PfCYHKTampon{\fpeval{\PfCYHKTampon*\PfCYHKListeNA[\fpeval{##2+##1*\useKV[Yohaku]{Taille}}]}} + }% + }{% + \xdef\PfCYHKTampon{0}% + \xintFor* ##1 in {\xintSeq{0}{\fpeval{\useKV[Yohaku]{Taille}-1}}}\do{% + \xdef\PfCYHKTampon{\fpeval{\PfCYHKTampon+\PfCYHKListeNA[\fpeval{##2+##1*\useKV[Yohaku]{Taille}}]}} + }% + } + \xdef\PfCYHKListeProduit{\PfCYHKListeProduit,\PfCYHKTampon}% + }% + % horizontaux + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \ifboolKV[Yohaku]{Multiplication}{% + \xdef\PfCYHKTampon{1}% + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \xdef\PfCYHKTampon{\fpeval{\PfCYHKTampon*\PfCYHKListeNA[\fpeval{(\useKV[Yohaku]{Taille}-##2)*\useKV[Yohaku]{Taille}+##1}]}} + }% + }{% + \xdef\PfCYHKTampon{0}% + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \xdef\PfCYHKTampon{\fpeval{\PfCYHKTampon+\PfCYHKListeNA[\fpeval{(\useKV[Yohaku]{Taille}-##2)*\useKV[Yohaku]{Taille}+##1}]}} + }% + }% + \xdef\PfCYHKListeProduit{\PfCYHKListeProduit,\PfCYHKTampon}% + }% + \readlist*\PfCYHKListeP{\PfCYHKListeProduit} + }% + \setlength{\PfCYohaku}{\useKV[Yohaku]{Largeur}-\tabcolsep}% + \colorlet{PfCFondYohaku}{\useKV[Yohaku]{CouleurResultat}} + \colorlet{PfCZoneYohaku}{\useKV[Yohaku]{CouleurZone}} + \begin{NiceTabular}{*{\fpeval{\useKV[Yohaku]{Taille}+1}}{m{\PfCYohaku}}}[hvlines-except-borders] + \CodeBefore + \xintifboolexpr{\useKV[Yohaku]{Ligne}==0 || \useKV[Yohaku]{Colonne}==0}{}{% + \tikz\draw[fill=PfCZoneYohaku](row-\fpeval{\useKV[Yohaku]{Ligne}}-|col-\fpeval{\useKV[Yohaku]{Colonne}}) rectangle (row-\fpeval{\useKV[Yohaku]{Ligne}+\useKV[Yohaku]{PasL}}-|col-\fpeval{\useKV[Yohaku]{Colonne}+\useKV[Yohaku]{PasC}});% + }% + \ifboolKV[Yohaku]{Bordure}{% + \tikz\fill[PfCFondYohaku] (last-|1)--(last-|last)--(1-|last)--(1-|\fpeval{\useKV[Yohaku]{Taille}+1})--(\fpeval{\useKV[Yohaku]{Taille}+1}-|\fpeval{\useKV[Yohaku]{Taille}+1})--(\fpeval{\useKV[Yohaku]{Taille}+1}-|1)--cycle; + }{} + \Body + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}+1}}}\do{% + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}+1}}}\do{% + \xintifForFirst{\rule{0pt}{\useKV[Yohaku]{Hauteur}}}{&} + }\\% + }% + \CodeAfter + \ifboolKV[Yohaku]{Bordure}{% + \tikz\draw (last-|1)--(last-|last)--(1-|last); + }{}% + \tikz\draw (1-|1)--(1-|last); + \tikz\draw (1-|1)--(last-|1); + \tikz\draw[line width=2pt] (1-|1)--(\fpeval{\useKV[Yohaku]{Taille}+1}-|1)--(\fpeval{\useKV[Yohaku]{Taille}+1}-|\fpeval{\useKV[Yohaku]{Taille}+1})--(1-|\fpeval{\useKV[Yohaku]{Taille}+1})--cycle; + \tikz\node at (\fpeval{\PfCYHKlast+0.5}-|\fpeval{\PfCYHKlast+0.5}) {\Huge\ifboolKV[Yohaku]{Multiplication}{$\times$}{$+$}}; + % Affichage des termes/facteurs + \ifboolKV[Yohaku]{Solution}{% + \ifboolKV[Yohaku]{Perso}{% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \tikz\node at (\fpeval{##2+0.5}-|\fpeval{##1+0.5}) {\PfCYHKListeNA[\fpeval{(##2-1)*\useKV[Yohaku]{Taille}+##1}]}; + }% + }% + }{% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{ + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{ + \tikz\node at (\fpeval{##2+0.5}-|\fpeval{##1+0.5}) {\num{\PfCYHKListeNA[\fpeval{(##2-1)*\useKV[Yohaku]{Taille}+##1}]}}; + }% + }% + }% + }{}% + % Affichage d'un terme/facteur + \ifboolKV[Yohaku]{Visible}{% + \xdef\PfCYohakuCaseAFL{\fpeval{floor((\useKV[Yohaku]{Case}-1)/\useKV[Yohaku]{Taille})}}% + \xdef\PfCYohakuCaseAFC{\fpeval{\useKV[Yohaku]{Case}-\useKV[Yohaku]{Taille}*\PfCYohakuCaseAFL}}% + \ifboolKV[Yohaku]{Perso}{% + \tikz\node at (\fpeval{\PfCYohakuCaseAFL+1+0.5}-|\fpeval{\PfCYohakuCaseAFC+0.5}) {\PfCYHKListeNA[\fpeval{\useKV[Yohaku]{Case}}]}; + }{% + \tikz\node at (\fpeval{\PfCYohakuCaseAFL+1+0.5}-|\fpeval{\PfCYohakuCaseAFC+0.5}) {\num{\PfCYHKListeNA[\fpeval{\useKV[Yohaku]{Case}}]}}; + }% + }{}% + %% Affichage des sommes/produits horizontalement + \ifboolKV[Yohaku]{Perso}{% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \tikz\node at (\fpeval{\PfCYHKlast+0.5}-|\fpeval{##2+0.5}) {\PfCYHKListeP[##2]}; + }% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \tikz\node at (\fpeval{\useKV[Yohaku]{Taille}+1-##2+0.5}-|\fpeval{\PfCYHKlast+0.5}) {\PfCYHKListeP[\fpeval{\useKV[Yohaku]{Taille}+##2}]}; + }% + }{% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \tikz\node at (\fpeval{\PfCYHKlast+0.5}-|\fpeval{##2+0.5}) {\num{\PfCYHKListeP[##2]}}; + }% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Yohaku]{Taille}}}}\do{% + \tikz\node at (\fpeval{\useKV[Yohaku]{Taille}+1-##2+0.5}-|\fpeval{\PfCYHKlast+0.5}) {\num{\PfCYHKListeP[\fpeval{\useKV[Yohaku]{Taille}+##2}]}}; + }% + }% + \end{NiceTabular} +}% + +%%% +% Rose +%%% +\setKVdefault[ClesRose]{Vide=false,Couleur=white,Produits=false,Solution=false,Rayon=2cm,Petales=7,Aide=false,FacteurMin=2,FacteurMax=10,ProduitVide=false,CaseVide=false,Polygone=false}% + +\NewDocumentCommand\RoseMul{o}{% + \useKVdefault[ClesRose]% + \setKV[ClesRose]{#1}% + \DessineRoseMul% +}% + +\newcommand\DessineRoseMul{% + \ifluatex% + \mplibforcehmode% + \begin{mplibcode} + vardef ExtraireListe(expr nbmin,nbmax,nbfacteurs)= + numeric ElementE[],ElementS[]; + %% éléments d'entrée + nbe=1; + for k=nbmin upto nbmax: + ElementE[nbe]=k; + nbe:=nbe+1; + endfor; + totalE=(nbmax-nbmin)+1; + numeric rec; + for k=1 upto nbfacteurs: + rec:=ceiling(uniformdeviate(totalE+1-k)); + ElementS[k]=ElementE[rec]; + numeric ElementI[]; + p:=0; + for l=1 upto totalE+1-k: + if l<>rec: + p:=p+1; + ElementI[p]=ElementE[l]; + fi; + endfor; + numeric ElementE[]; + for l=1 upto p: + ElementE[l]=ElementI[l]; + endfor; + endfor; + enddef; + pair A[],B[],O; + Rayon:=\useKV[ClesRose]{Rayon}; + boolean Aide,Produits,Solution,Vide,ProduitVide,CaseVide,Polygone; + Aide:=\useKV[ClesRose]{Aide}; + Vide:=\useKV[ClesRose]{Vide}; + Solution:=\useKV[ClesRose]{Solution}; + Produits:=\useKV[ClesRose]{Produits}; + ProduitVide:=\useKV[ClesRose]{ProduitVide}; + CaseVide:=\useKV[ClesRose]{CaseVide}; + if ProduitVide:Solution:=true fi; + if CaseVide:Solution:=true fi; + Polygone:=\useKV[ClesRose]{Polygone}; + Petales:=\useKV[ClesRose]{Petales}; + FacteurMin:=\useKV[ClesRose]{FacteurMin}; + FacteurMax:=\useKV[ClesRose]{FacteurMax}; + color Fond; + Fond:=\useKV[ClesRose]{Couleur}; + O=(0,0); + ExtraireListe(FacteurMin,FacteurMax,Petales); + path cc; + cc=cercles(O,Rayon); + for k=0 upto Petales: + A[k]=pointarc(cc,(360/Petales)*k); + endfor; + for k=0 upto Petales-1: + B[k]=iso(A[k],A[k+1]); + endfor; + path BoiteRec; + if Polygone: + BoiteRec=(pointarc(fullcircle,0) for k=1 upto Petales:--pointarc(fullcircle,k*(360/Petales)) endfor --cycle) scaled 1u; + else: + BoiteRec=((-0.4,-0.5)--(0.4,-0.5){dir0}..{dir90}(0.5,-0.4)--(0.5,0.4){dir90}..{dir180}(0.4,0.5)--(-0.4,0.5){dir180}..{dir-90}(-0.5,0.4)--(-0.5,-0.4){dir-90}..cycle) scaled 1u; + fi; + %On détermine les facteurs et produits + for k=0 upto Petales-1: + Facteur[k]=ElementS[k+1]; + endfor; + Facteur[Petales]=Facteur[0]; + for k=0 upto Petales-1: + Produit[k]=Facteur[k]*Facteur[k+1]; + endfor; + %on labelise + if Vide=false: + if Produits: + else: + for k=0 upto Petales-1: + label(TEX("\num{"&decimal(Facteur[k])&"}"),(0.5[O,A[k]]-center BoiteRec)); + endfor; + fi; + if Produits or Solution: + for k=0 upto Petales-1: + label(TEX("\num{"&decimal(Produit[k])&"}"),(B[k]+0.5*Rayon*unitvector(B[k]))); + endfor; + fi; + fi; + % On trace et on affiche...éventuellement :) + if Aide: + for k=0 upto Petales-1: + drawarrow (0.5[O,A[k]]--1.75[O,B[k]]) cutbefore segment(A[k],A[k+1]) cutafter BoiteRec shifted (B[k]+0.5*Rayon*unitvector(B[k])) dashed evenly scaled 0.5; + drawarrow (0.5[O,A[k+1]]--1.75[O,B[k]]) cutbefore segment(A[k],A[k+1]) cutafter BoiteRec shifted (B[k]+0.5*Rayon*unitvector(B[k])) dashed evenly scaled 0.5; + endfor; + fi; + if ProduitVide: + choix=floor(uniformdeviate(Petales-1)); + fill (BoiteRec shifted (1.75[O,B[choix]]-center BoiteRec)) withcolor Fond; + fill rotation(polygone(O,B0,A1,B1),O,(choix-1)*(360/Petales)) withcolor Fond; + fill rotation(polygone(O,B0,A1,B1),O,choix*(360/Petales)) withcolor Fond; + fi; + if CaseVide: + choix:=floor(uniformdeviate(Petales-1)); + for k=0 upto Petales-1: + if k<>choix: + fill rotation(polygone(O,B0,A1,B1),O,k*(360/Petales)) withcolor Fond; + fi; + endfor; + fi; + trace A0 for k=1 upto Petales:--A[k] endfor --cycle; + for k=0 upto Petales-1: + trace segment(O,B[k]) dashed withdots scaled 0.25; + draw BoiteRec shifted (B[k]+0.5*Rayon*unitvector(B[k])) dashed evenly scaled 0.5; + endfor; + \end{mplibcode} + \else + \begin{mpost}[mpsettings={Rayon:=\useKV[ClesRose]{Rayon}; + boolean Aide,Produits,Solution,Vide,ProduitVide,CaseVide,Polygone; + Aide:=\useKV[ClesRose]{Aide}; + Vide:=\useKV[ClesRose]{Vide}; + Solution:=\useKV[ClesRose]{Solution}; + Produits:=\useKV[ClesRose]{Produits}; + ProduitVide:=\useKV[ClesRose]{ProduitVide}; + CaseVide:=\useKV[ClesRose]{CaseVide}; + if ProduitVide:Solution:=true fi; + if CaseVide:Solution:=true fi; + Polygone:=\useKV[ClesRose]{Polygone}; + Petales:=\useKV[ClesRose]{Petales}; + FacteurMin:=\useKV[ClesRose]{FacteurMin}; + FacteurMax:=\useKV[ClesRose]{FacteurMax}; + color Fond; + Fond:=\useKV[ClesRose]{Couleur};}] + vardef ExtraireListe(expr nbmin,nbmax,nbfacteurs)= + numeric ElementE[],ElementS[]; + %% éléments d'entrée + nbe=1; + for k=nbmin upto nbmax: + ElementE[nbe]=k; + nbe:=nbe+1; + endfor; + totalE=(nbmax-nbmin)+1; + numeric rec; + for k=1 upto nbfacteurs: + rec:=ceiling(uniformdeviate(totalE+1-k)); + ElementS[k]=ElementE[rec]; + numeric ElementI[]; + p:=0; + for l=1 upto totalE+1-k: + if l<>rec: + p:=p+1; + ElementI[p]=ElementE[l]; + fi; + endfor; + numeric ElementE[]; + for l=1 upto p: + ElementE[l]=ElementI[l]; + endfor; + endfor; + enddef; + pair A[],B[],O; + O=(0,0); + ExtraireListe(FacteurMin,FacteurMax,Petales); + path cc; + cc=cercles(O,Rayon); + for k=0 upto Petales: + A[k]=pointarc(cc,(360/Petales)*k); + endfor; + for k=0 upto Petales-1: + B[k]=iso(A[k],A[k+1]); + endfor; + path BoiteRec; + if Polygone: + BoiteRec=(pointarc(fullcircle,0) for k=1 upto Petales:--pointarc(fullcircle,k*(360/Petales)) endfor --cycle) scaled 1u; + else: + BoiteRec=((-0.4,-0.5)--(0.4,-0.5){dir0}..{dir90}(0.5,-0.4)--(0.5,0.4){dir90}..{dir180}(0.4,0.5)--(-0.4,0.5){dir180}..{dir-90}(-0.5,0.4)--(-0.5,-0.4){dir-90}..cycle) scaled 1u; + fi; + %On détermine les facteurs et produits + for k=0 upto Petales-1: + Facteur[k]=ElementS[k+1]; + endfor; + Facteur[Petales]=Facteur[0]; + for k=0 upto Petales-1: + Produit[k]=Facteur[k]*Facteur[k+1]; + endfor; + %on labelise + if Vide=false: + if Produits: + else: + for k=0 upto Petales-1: + label(TEX("\num{"&decimal(Facteur[k])&"}"),(0.5[O,A[k]]-center BoiteRec)); + endfor; + fi; + if Produits or Solution: + for k=0 upto Petales-1: + label(TEX("\num{"&decimal(Produit[k])&"}"),(B[k]+0.5*Rayon*unitvector(B[k]))); + endfor; + fi; + fi; + % On trace et on affiche...éventuellement :) + if Aide: + for k=0 upto Petales-1: + drawarrow (0.5[O,A[k]]--1.75[O,B[k]]) cutbefore segment(A[k],A[k+1]) cutafter BoiteRec shifted (B[k]+0.5*Rayon*unitvector(B[k])) dashed evenly scaled 0.5; + drawarrow (0.5[O,A[k+1]]--1.75[O,B[k]]) cutbefore segment(A[k],A[k+1]) cutafter BoiteRec shifted (B[k]+0.5*Rayon*unitvector(B[k])) dashed evenly scaled 0.5; + endfor; + fi; + if ProduitVide: + choix=floor(uniformdeviate(Petales-1)); + fill (BoiteRec shifted (1.75[O,B[choix]]-center BoiteRec)) withcolor Fond; + fill rotation(polygone(O,B0,A1,B1),O,(choix-1)*(360/Petales)) withcolor Fond; + fill rotation(polygone(O,B0,A1,B1),O,choix*(360/Petales)) withcolor Fond; + fi; + if CaseVide: + choix:=floor(uniformdeviate(Petales-1)); + for k=0 upto Petales-1: + if k<>choix: + fill rotation(polygone(O,B0,A1,B1),O,k*(360/Petales)) withcolor Fond; + fi; + endfor; + fi; + trace A0 for k=1 upto Petales:--A[k] endfor --cycle; + for k=0 upto Petales-1: + trace segment(O,B[k]) dashed withdots scaled 0.25; + draw BoiteRec shifted (B[k]+0.5*Rayon*unitvector(B[k])) dashed evenly scaled 0.5; + endfor; + \end{mpost} + \fi +}% + %%% % Puissances 4 %%% @@ -505,25 +1048,25 @@ }% %%% -% Billiard +% Billard %%% -\setKVdefault[ClesBilliard]{Longueur=8cm,Largeur=5cm,Solution=false,Angle=70,Depart=0.5,Vrai=false} +\setKVdefault[ClesBillard]{Longueur=8cm,Largeur=5cm,Solution=false,Angle=70,Depart=0.5,Vrai=false} -\NewDocumentCommand\Billiard{o m}{% - \useKVdefault[ClesBilliard]% - \setKV[ClesBilliard]{#1}% - \ifboolKV[ClesBilliard]{Solution}{% - \MPBilliardSolution{#2}{\useKV[ClesBilliard]{Depart}}{\useKV[ClesBilliard]{Angle}}% +\NewDocumentCommand\Billard{o m}{% + \useKVdefault[ClesBillard]% + \setKV[ClesBillard]{#1}% + \ifboolKV[ClesBillard]{Solution}{% + \MPBillardSolution{#2}{\useKV[ClesBillard]{Depart}}{\useKV[ClesBillard]{Angle}}% }{% - \MPBilliard{#2}{\useKV[ClesBilliard]{Depart}}{\useKV[ClesBilliard]{Angle}}% + \MPBillard{#2}{\useKV[ClesBillard]{Depart}}{\useKV[ClesBillard]{Angle}}% }% }% -\def\MPBilliard#1#2#3{% +\def\MPBillard#1#2#3{% \mplibcodeinherit{disable}% - \begin{Geometrie}[CoinHD={(\useKV[ClesBilliard]{Longueur}+2cm,\useKV[ClesBilliard]{Largeur}+3cm)}] + \begin{Geometrie}[CoinHD={(\useKV[ClesBillard]{Longueur}+2cm,\useKV[ClesBillard]{Largeur}+3cm)}] boolean Vrai; - Vrai:=\useKV[ClesBilliard]{Vrai}; + Vrai:=\useKV[ClesBillard]{Vrai}; % On définit la liste des 25 lettres alphabétiques dans laquelle on choisit autant de lettres que la longueur du mot % On a retiré la lettre Q pour des questions d'alignements esthétiques. vardef ChoixLettre= @@ -607,8 +1150,8 @@ % On définit le rectangle pair M[],Co,Intermed; M1=u*(1,2); - M2-M1=(\useKV[ClesBilliard]{Longueur},0); - M3-M2=(0,\useKV[ClesBilliard]{Largeur}); + M2-M1=(\useKV[ClesBillard]{Longueur},0); + M3-M2=(0,\useKV[ClesBillard]{Largeur}); M4-M3=M1-M2; Co=iso(M1,M3); path rec,cote[]; @@ -719,10 +1262,10 @@ \end{Geometrie}% }% -\def\MPBilliardSolution#1#2#3{% +\def\MPBillardSolution#1#2#3{% \mplibcodeinherit{enable}% \begin{mplibcode}% - Figure(0,0,\useKV[ClesBilliard]{Longueur}+2cm,\useKV[ClesBilliard]{Largeur}+3cm); + Figure(0,0,\useKV[ClesBillard]{Longueur}+2cm,\useKV[ClesBillard]{Largeur}+3cm); trace rec; % Tracés drawarrow Pt[1]--(Pt[1]+1.5cm*unitvector(Pt[2]-Pt[1])) withpen pencircle scaled 1.25; @@ -2162,9 +2705,9 @@ draw polygone((0,0),(u*abs(nbfois),0),(u*abs(nbfois),Hauteur),(0,Hauteur)); fi; if nbfois>0: - label(LATEX(t),iso((0,0),(u*abs(nbfois),Hauteur))); + label(LATEXProf(t),iso((0,0),(u*abs(nbfois),Hauteur))); else: - label.bot(LATEX(t),iso((0,0),(u*abs(nbfois),-Hauteur))); + label.bot(LATEXProf(t),iso((0,0),(u*abs(nbfois),-Hauteur))); drawdblarrow (0,-0.5*Hauteur)--(u*abs(nbfois),-0.5*Hauteur); fi; u:=1cm; @@ -4061,7 +4604,7 @@ transform canvas={xshift=0em,yshift=0em}},rectangle,rounded corners,ultra thick, %%% % Labyrinthe Nombre %%% -\setKVdefault[ClesLabyNombre]{Multiple=5,XDepart=0,YDepart=0,Longueur=7,Largeur=4,XArrivee=6,YArrivee=3,Solution=false,Echelle=1,Angle=0,Couleur=red,Murs=false} +\setKVdefault[ClesLabyNombre]{Multiple=5,XDepart=0,YDepart=0,Longueur=7,Largeur=4,XArrivee=6,YArrivee=3,Solution=false,Echelle=1,Angle=0,Couleur=red,Murs=false,Nom=Ex1} \newcommand\LabyNombre[1][]{% \useKVdefault[ClesLabyNombre]% @@ -4075,7 +4618,8 @@ transform canvas={xshift=0em,yshift=0em}},rectangle,rounded corners,ultra thick, \newcommand\TraceLabyNombre[6]{% \mplibforcehmode% - \begin{mplibcode} + \xdef\PfCNomLabyrinthe{\useKV[ClesLabyNombre]{Nom}}% + \begin{mplibcode}[\PfCNomLabyrinthe] input PfCLabyNombre; boolean Murs; @@ -4157,7 +4701,117 @@ transform canvas={xshift=0em,yshift=0em}},rectangle,rounded corners,ultra thick, \newcommand\TraceSolution[6]{% \mplibforcehmode% - \mplibcodeinherit{enable}%\xintifboolexpr{#6==false}{\mplibcodeinherit{enable}}{} + % \mplibcodeinherit{enable} + \xdef\PfCNomLabyrinthe{\useKV[ClesLabyNombre]{Nom}}% + \begin{mplibcode}[\PfCNomLabyrinthe] + picture CorpsSolution; + CorpsSolution=image( + nbaffiche:=0; + for k=0 upto #3-1: + for l=0 upto #2-1: + nbaffiche:=nbaffiche+1; + label(TEX("\num{"&decimal(NbAffiche[nbaffiche])&"}"),M[k][l]); + endfor; + endfor; + remplis ((unitsquare scaled 10mm) shifted N[choixligneD][choixcolonneD]) withcolor \useKV[ClesLabyNombre]{Couleur}; + remplis ((unitsquare scaled 10mm) shifted Arrivee) withcolor \useKV[ClesLabyNombre]{Couleur}; + for k=2 upto indiceChemin-1: + remplis ((unitsquare scaled 10mm) shifted N[xpart(PileChemin[k])][ypart(PileChemin[k])]) withcolor 0.5white; + label(TEX("\num{"&decimal(NbSol[k])&"}"),M[xpart(PileChemin[k])][ypart(PileChemin[k])]); + endfor; + trace TraceLabyrinthe; + ); + CorpsSolution:=(CorpsSolution scaled \useKV[ClesLabyNombre]{Echelle}) rotated \useKV[ClesLabyNombre]{Angle}; + trace CorpsSolution; + \end{mplibcode} + %\mplibcodeinherit{disable} +}% + +\newcommand\TraceLabyNombreold[6]{% + \mplibforcehmode% + \begin{mplibcode} + input PfCLabyNombre; + + boolean Murs; + Murs=\useKV[ClesLabyNombre]{Murs}; + + numeric Multiple; + Multiple=#1; + % Initialisation du labyrinthe + InitialisationLabyrinthe(#2,#3); + % On initialise les paramètres du parcours + numeric choixligneD,choixligneA,choixcolonneD,choixcolonneA; + choixligneD=xpart(#4); + choixcolonneD=ypart(#4); + choixligneA=xpart(#5); + choixcolonneA=ypart(#5);% + pair Depart; + Depart=N[choixligneD][choixcolonneD]; + pair Arrivee; + Arrivee=N[choixligneA][choixcolonneA]; + pair Mobile; + Mobile=Depart; + RAZPileChemin; + % Exploration du labyrinthe + PushChemin((choixligneD,choixcolonneD)); + CaseExploree[choixligneD][choixcolonneD]:=true; + VoisinDispo(choixligneD,choixcolonneD); + forever: exitif Mobile=Arrivee;%nb=0; + nb:=ceiling(uniformdeviate(nbvoisin)); + if nb>0: + for k=1 upto nbvoisin: + CaseExploree[xpart(PileVoisin[k])][ypart(PileVoisin[k])]:=true; + endfor; + PushChemin((xpart(PileVoisin[nb]),ypart(PileVoisin[nb]))); + Mobile:=N[xpart(PileChemin[indiceChemin])][ypart(PileChemin[indiceChemin])]; + VoisinDispo(xpart(PileChemin[indiceChemin]),ypart(PileChemin[indiceChemin])); + else: + PopChemin; + fi; + endfor; + % Affichagefinal + % on sauvegarde les nombres aléatoires + numeric NbAffiche[]; + numeric NbSol[]; + % on écrit des nombres au hasard, mais sans être multiple du nombre choisi + numeric nbaffiche; + nbaffiche=0; + for k=0 upto LargeurLaby-1: + for l=0 upto LongueurLaby-1: + nbaffiche:=nbaffiche+1; + NbAffiche[nbaffiche]:=(50+ceiling(uniformdeviate(100)))*Multiple+ceiling(uniformdeviate(Multiple-1)); + endfor; + endfor; + % On crée des multiples du nombre choisi + for k=2 upto indiceChemin-1: + NbSol[k]=(50+ceiling(uniformdeviate(100)))*Multiple; + endfor; + % On affiche + picture Corps; + Corps=image( + nbaffiche:=0; + for k=0 upto LargeurLaby-1: + for l=0 upto LongueurLaby-1: + nbaffiche:=nbaffiche+1; + label(TEX("\num{"&decimal(NbAffiche[nbaffiche])&"}"),M[k][l]); + endfor; + endfor; + remplis ((unitsquare scaled 10mm) shifted N[choixligneD][choixcolonneD]) withcolor \useKV[ClesLabyNombre]{Couleur}; + remplis ((unitsquare scaled 10mm) shifted Arrivee) withcolor \useKV[ClesLabyNombre]{Couleur}; + for k=2 upto indiceChemin-1: + remplis ((unitsquare scaled 10mm) shifted N[xpart(PileChemin[k])][ypart(PileChemin[k])]) withcolor white; + label(TEX("\num{"&decimal(NbSol[k])&"}"),M[xpart(PileChemin[k])][ypart(PileChemin[k])]); + endfor; + trace TraceLabyrinthe; + ); + Corps:=(Corps scaled \useKV[ClesLabyNombre]{Echelle}) rotated \useKV[ClesLabyNombre]{Angle}; + trace Corps; + \end{mplibcode} +} + +\newcommand\TraceSolutionold[6]{% + \mplibforcehmode% + \mplibcodeinherit{enable} \begin{mplibcode} picture CorpsSolution; CorpsSolution=image( @@ -6039,20 +6693,18 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. toptitle=1mm, bottomtitle=1mm, bottom=1mm, - title={Rapido n°\thetcbcounter\hfill Date :\hspace*{2.5cm}}, + title={\useKV[ClesRapido]{Titre}}, %% Cadre principal enhanced, - %nobeforeafter, width=\WidthRapido, colback=white, valign=top, - drop lifted shadow%, - %grow to left by=5mm + drop lifted shadow } \newtcolorbox{QuestionBox}{enhanced,nobeforeafter,size=small,sidebyside adapt=left} \newtcolorbox{QuestionReponse}{enhanced,nobeforeafter,upperbox=invisible,colback=white,width=1.5cm,grow to left by=3mm,grow to right by=3mm,height=10mm} -\setKVdefault[ClesRapido]{Debut=false,Largeur=0.9\linewidth}% +\setKVdefault[ClesRapido]{Debut=false,Largeur=0.9\linewidth,Titre={Rapido n°\thetcbcounter\hfill Date :\hspace*{2.5cm}}}% \defKV[ClesRapido]{Numero=\setKV[ClesRapido]{Debut=true}} \newlength{\WidthRapido} @@ -6069,32 +6721,32 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. \setsepchar[*]{§*/}% \readlist*\ListeRapido{#2}% \begin{RapidoBox} - \xintFor* ##1 in {\xintSeq {1}{\ListeRapidolen}}\do{% - \tcbsidebyside[ - sidebyside adapt=right, - bicolor, - colback=white,colbacklower=yellow!10!white, - nobeforeafter, - top=0mm,left=1mm, - grow to left by=3mm, - grow to right by=3mm, - bottom=0mm, - ]{% - \ListeRapido[##1,1] + \xintFor* ##1 in {\xintSeq {1}{\ListeRapidolen}}\do{% + \tcbsidebyside[% + sidebyside adapt=right, + bicolor, + colback=white,colbacklower=yellow!10!white, + nobeforeafter, + top=0mm,left=1mm, + grow to left by=3mm, + grow to right by=3mm, + bottom=0mm + ]{% + \ListeRapido[##1,1] }{% \ListeRapido[##1,2] } -} + }% \end{RapidoBox} -} +}% \newcommand\BoiteRapido[1]{% \ifx\bla#1\bla% \tcbox[BoiteExpression]{\phantom{100000}}% - \else + \else% \tcbox[BoiteExpression]{#1}% \fi -} +}% %%% % Fractions @@ -7071,7 +7723,7 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. %%% % R\'eponses \`a relier %%% -\setKVdefault[ClesRelie]{Solution=false,LargeurG=5cm,LargeurD=2cm,Stretch=1.5,Ecart=2cm} +\setKVdefault[ClesRelie]{Solution=false,LargeurG=5cm,LargeurD=2cm,Stretch=1.5,Ecart=2cm,Couleur=black} \newcommand\Relie[2][]{% \useKVdefault[ClesRelie]% @@ -7080,11 +7732,12 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. \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 (RelieG-##1) -- (RelieD-\ListeRelie[##1,3]);}% + \tikz[remember picture,overlay]{\draw[PfCRelieCouleurTrace] (RelieG-##1) -- (RelieD-\ListeRelie[##1,3]);}% \fi }% }{% @@ -7276,17 +7929,17 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. %%% \setKVdefault[ClesSommeAngle]{Detail=true,Isocele=false,Rectangle=false,Figure=false,FigureSeule=false,Angle=0,Perso=false,Echelle=1cm}% -\def\MPFigureSommeAngle#1#2#3#4#5{ +\def\MPFigureSommeAngle#1#2#3#4#5{% % #1 Premier sommet % #2 Deuxi\`eme sommet % #3 Troisi\`eme sommet % #4 1er angle % #5 2eme angle \ifluatex - \mplibcodeinherit{enable} + %\mplibcodeinherit{enable} \mplibforcehmode \begin{mplibcode} - pair A,B,C,O,I;% + pair A,B,C,O,I;% u:=\useKV[ClesSommeAngle]{Echelle}; Angle:=\useKV[ClesSommeAngle]{Angle}; boolean Rectangle,Isocele; @@ -7387,7 +8040,7 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. label(btex ? etex,A+0.95u*unitvector(I-A)); fi; \end{mplibcode} - \mplibcodeinherit{disable} + %\mplibcodeinherit{disable} \else \begin{mpost}[mpsettings={u:=\useKV[ClesSommeAngle]{Echelle};boolean Rectangle,Isocele; Rectangle=\useKV[ClesSommeAngle]{Rectangle};Isocele=\useKV[ClesSommeAngle]{Isocele};Angle:=\useKV[ClesSommeAngle]{Angle};}] @@ -9291,7 +9944,7 @@ couleur indiquée, le nombre de cases donné par le résultat du calcul. \end{mplibcode} \else \begin{mpost}[mpsettings={numeric decalage;decalage=\useKV[ClesNombrePremier]{Decalage}*1mm;color CouleurTronc,CouleurFeuillage,CouleurFruits,CouleurTexte;CouleurTronc=\useKV[ClesNombrePremier]{CouleurTronc};CouleurFeuillage=\useKV[ClesNombrePremier]{CouleurFeuillage};CouleurFruits=\useKV[ClesNombrePremier]{CouleurFruits}; CouleurTexte=\useKV[ClesNombrePremier]{CouleurTexte}; boolean Vide; Vide=\useKV[ClesNombrePremier]{Vide};}] - input PfCArithmetique; + input PfCArithmetiquePDF; numeric depart; pair Ancre[]; rayonfruits:=3mm; @@ -11921,9 +12574,9 @@ Tableau=false,Stretch=1,Frequence=false,EffectifTotal=false,% Etendue=false,Moyenne=false,SET=false,ValeurExacte=false,Mediane=false,QuartileUn=false,QuartileTrois=false,Total=false,Concret=false,% Unite={},Largeur=1cm,Precision=2,PrecisionF=0,Donnee=Valeurs,Effectif=Effectif,Grille=false,Origine=0,Angle=false,SemiAngle=false,Qualitatif=false,TableauVide=false,ECC=false,Coupure=10,CouleurTab=gray!15,Graphique=false,Batons=true,% % Pour les diags batons -EpaisseurBatons=1,ListeCouleursB={black},Lecture=false,LectureFine=false,AideLecture=false,Reponses=false,DonneesSup=false,AbscisseRotation=false,Tiret=false,AngleRotationAbscisse=0,Pasx=1,Pasy=1,Unitex=0.5,Unitey=0.5,Depart=0,% +EpaisseurBatons=1,ListeCouleursB={a},Lecture=false,LectureFine=false,AideLecture=false,Reponses=false,DonneesSup=false,AbscisseRotation=false,Tiret=false,AngleRotationAbscisse=0,Pasx=1,Pasy=1,Unitex=0.5,Unitey=0.5,Depart=0,CouleurDefaut=black,% % Pour les diags circulaires -Rayon=3cm,AffichageAngle=false,AffichageDonnee=false,ListeCouleurs={white},Hachures=false,LectureInverse=false,EcartHachures=0.25,EpaisseurHachures=1,Legende,LegendeVide=false,% +Rayon=3cm,AffichageAngle=false,AffichageDonnee=false,ListeCouleurs={white},Hachures=false,LectureInverse=false,EcartHachures=0.25,EpaisseurHachures=1,Legende,LegendeVide=false,ACompleter=false,% %Pour les représentations Representation=false,% %Pour les barres horizontales @@ -12056,7 +12709,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% \readlist*\ListeCouleur{\ListeAvantCouleurs}% \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \[\NewMPDiagBarreHor{\the\toklistenomhor}{\the\toklistedonhor}{\the\toklisteaffhor}{\the\toklistecouleur}\]% + \NewMPDiagBarreHor{\the\toklistenomhor}{\the\toklistedonhor}{\the\toklisteaffhor}{\the\toklistecouleur}% }% % Pour construire le diagramme en bâtons @@ -12068,7 +12721,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleursB}}% \readlist*\ListeCouleur{\ListeAvantCouleurs}% \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \[\MPStatNew{\the\toklistepoint}{\the\toklistecouleur}\]% + \MPStatNew{\the\toklistepoint}{\the\toklistecouleur}% }% % Pour construire le diagramme en bâtons qualitatif @@ -12080,7 +12733,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleursB}}% \readlist*\ListeCouleur{\ListeAvantCouleurs}% \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \[\MPStatNew{\the\toklistepointq}{\the\toklistecouleur}\]% + \MPStatNew{\the\toklistepointq}{\the\toklistecouleur}% }% \def\UpdateCoul#1\nil{\addtotok\toklistecouleur{#1,}}% @@ -12274,8 +12927,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; boolean LegendeVide; LegendeVide=\useKV[ClesStat]{LegendeVide}; - }] - vardef CalculNombreDonneesEtDonneeMax(text t)= + }] + vardef CalculNombreDonneesEtDonneeMax(text t)= nbdon:=0;%nombre de données DonneeMax:=0;%donnée DonneeMaximale for p_=t: @@ -12318,15 +12971,15 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis fi; if ExposantDivMax=0: for k=1 upto (DonneeMax+1): - label.bot(TEX("\num{"&decimal(k)&"}"),Zz0+k*(Zz1-Zz0)); + label.bot(LATEX("\num{"&decimal(k)&"}"),Zz0+k*(Zz1-Zz0)); endfor; else: if ExposantDivMax<5: for k=1 upto (floor(DonneeMax*10+2)): - label.bot(TEX("\num{\noexpand\fpeval{"&decimal(k)&"*(10**"&decimal(ExposantDivMax-1)&")}}"),Zz0+(k/10)*(Zz1-Zz0)); + label.bot(LATEX("\num{\noexpand\fpeval{"&decimal(k)&"*(10**"&decimal(ExposantDivMax-1)&")}}"),Zz0+(k/10)*(Zz1-Zz0)); endfor; else: - dotlabel.bot(TEX("\num{\noexpand\fpeval{10**"&decimal(ExposantDivMax)&"}}"),Zz1); + dotlabel.bot(LATEX("\num{\noexpand\fpeval{10**"&decimal(ExposantDivMax)&"}}"),Zz1); fi; fi; fi; @@ -12351,14 +13004,14 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis vardef AffichageNom(text t)= k:=0; for p_=t: - label.lft(TEX(p_),0.5[(0,0),(0,Hauteur)] shifted (0,-k*(Hauteur+Ecart))); + label.lft(LATEX(p_),0.5[(0,0),(0,Hauteur)] shifted (0,-k*(Hauteur+Ecart))); k:=k+1; endfor; enddef; vardef AffichageDonnees(text t)= k:=0; for p_=t: - label.rt(TEX("\num{"&p_&"}"),0.5[(0,0),(0,Hauteur)] shifted (((Donnees[k+1]/DonneeMax)*Longueur),-k*(Hauteur+Ecart))); + label.rt(LATEX("\num{"&p_&"}"),0.5[(0,0),(0,Hauteur)] shifted (((Donnees[k+1]/DonneeMax)*Longueur),-k*(Hauteur+Ecart))); k:=k+1; endfor; enddef; @@ -12404,7 +13057,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis Qualitatif=\useKV[ClesStat]{Qualitatif}; boolean Tiret; Tiret=\useKV[ClesStat]{Tiret}; - %% ajout + color CoulDefaut; + CoulDefaut=\useKV[ClesStat]{CouleurDefaut}; Depart=\useKV[ClesStat]{Depart}; % on r\'ecup\`ere les couleurs color Col[]; @@ -12414,7 +13068,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis if color p_: Col[n]=p_; else: - Col[n]=black; + Col[n]=CoulDefaut; fi; endfor; % @@ -12475,6 +13129,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis fi; fi; fi; + fi; endfor; enddef; vardef titi(text t)=%affichage qualitatif @@ -12526,12 +13181,14 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis endfor; drawoptions(); fi; + if epaisseurbatons<>0: for k=1 upto n: - fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: black else:Col[k] fi; + fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: CoulDefaut else:Col[k] fi; if AideLecture: draw B[k]--P[k] dashed evenly; fi; endfor; + fi; if LectureFine: for k=0 step Pasy until ((maxy+1*Pasy)): if Tiret: @@ -12580,8 +13237,13 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis boolean Qualitatif; Qualitatif=\useKV[ClesStat]{Qualitatif}; boolean Tiret; - Tiret=\useKV[ClesStat]{Tiret};} + Tiret=\useKV[ClesStat]{Tiret}; + color CoulDefaut; + CoulDefaut=\useKV[ClesStat]{CouleurDefaut};} + Depart=\useKV[ClesStat]{Depart}; ] + maxx:=0; + maxy:=0; % on r\'ecup\`ere les couleurs color Col[]; n:=0; @@ -12590,7 +13252,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis if color p_: Col[n]=p_; else: - Col[n]=black; + Col[n]=CoulDefaut; fi; endfor; % @@ -12618,19 +13280,20 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis if pair p_: l:=l+1; if Rotation: - label.bot(TEX("\num{"&decimal(xpart(p_))&"}") rotated AngleRotation,A[l]); + label.bot(LATEX("\num{"&decimal(xpart(p_))&"}") rotated AngleRotation,A[l]); else : - label.bot(TEX("\num{"&decimal(xpart(p_))&"}"),A[l]); + label.bot(LATEX("\num{"&decimal(xpart(p_))&"}"),A[l]); fi; if Reponses: if DonneesSup: - label.top(TEX("\num{"&decimal(ypart(p_))&"}"),P[l]); + label.top(LATEX("\num{"&decimal(ypart(p_))&"}"),P[l]); else: if Tiret: trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); + label.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); else: - dotlabel.lft(TEX("\num{"&decimal(ypart(p_))&"}"),B[l]); + dotlabel.lft(LATEX("\num{"&decimal(ypart(p_))&"}"),B[l]); + fi; fi; fi; fi; @@ -12658,13 +13321,13 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis if numeric p_: if Reponses: if DonneesSup: - label.top(TEX("\num{"&decimal(p_)&"}"),P[l]); + label.top(LATEX("\num{"&decimal(p_)&"}"),P[l]); else: if Tiret: trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); + label.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); else: - dotlabel.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); + dotlabel.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); fi; fi; fi; @@ -12675,12 +13338,12 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis picture TEXTELABEL; TEXTELABEL=image( labeloffset:=labeloffset*2; - label.lft(TEX(p_),A[l]); + label.lft(LATEX(p_),A[l]); labeloffset:=labeloffset/2; ); trace rotation(TEXTELABEL,A[l],AngleRotation); else : - label.bot(TEX(p_),A[l]); + label.bot(LATEX(p_),A[l]); fi; fi; fi; @@ -12701,19 +13364,21 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis endfor; drawoptions(); fi; + if epaisseurbatons<>0: for k=1 upto n: - fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: black else:Col[k] fi; + fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: CoulDefaut else:Col[k] fi; if AideLecture: draw B[k]--P[k] dashed evenly; fi; endfor; + fi; if LectureFine: for k=0 step Pasy until ((maxy+1*Pasy)): if Tiret: trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); + label.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); else: - dotlabel.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); + dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); fi; endfor; fi; @@ -12721,9 +13386,9 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis for k=0 step Pasy until Pasy: if Tiret: trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); + label.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); else: - dotlabel.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); + dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); fi; endfor; fi; @@ -12762,6 +13427,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis LegendeVide=\useKV[ClesStat]{LegendeVide}; boolean Retour; Retour=false; + boolean ACompleter; + ACompleter=\useKV[ClesStat]{ACompleter}; pair A[],O,B[],C[],D[]; O=(0,0); n:=0; @@ -12814,7 +13481,9 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis (n mod 2)=0: +90 else: -90 fi,ecarthachures,if (n mod 2)=0 : 0 else: 1 fi) withpen pencircle scaled epaisseurhachures if AffichageAngle: withcolor 0.5white fi; fi; + if ACompleter=false: draw A[n-1]--O--A[n] if Hachures: withpen pencircle scaled2 fi; + fi; % Affichage des angles associ\'es if AffichageAngle: if round(p_*(#2/total[N]))>15: @@ -12927,21 +13596,23 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \end{mplibcode} \else \begin{mpost}[mpsettings={% - Rayon:=\useKV[ClesStat]{Rayon}; - ecarthachures=\useKV[ClesStat]{EcartHachures}; - epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean AffichageAngle; - AffichageAngle=\useKV[ClesStat]{AffichageAngle}; - boolean AffichageDonnee; - AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; - boolean Hachures; - Hachures=\useKV[ClesStat]{Hachures}; - boolean Inverse; - Inverse=\useKV[ClesStat]{LectureInverse}; - boolean Legende; - Legende=\useKV[ClesStat]{Legende}; - boolean LegendeVide; - LegendeVide=\useKV[ClesStat]{LegendeVide}; + Rayon:=\useKV[ClesStat]{Rayon}; + ecarthachures=\useKV[ClesStat]{EcartHachures}; + epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; + boolean AffichageAngle; + AffichageAngle=\useKV[ClesStat]{AffichageAngle}; + boolean AffichageDonnee; + AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; + boolean Hachures; + Hachures=\useKV[ClesStat]{Hachures}; + boolean Inverse; + Inverse=\useKV[ClesStat]{LectureInverse}; + boolean Legende; + Legende=\useKV[ClesStat]{Legende}; + boolean LegendeVide; + LegendeVide=\useKV[ClesStat]{LegendeVide}; + boolean ACompleter; + ACompleter=\useKV[ClesStat]{ACompleter}; }] boolean Retour; Retour=false; @@ -12997,7 +13668,9 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis (n mod 2)=0: +90 else: -90 fi,ecarthachures,if (n mod 2)=0 : 0 else: 1 fi) withpen pencircle scaled epaisseurhachures if AffichageAngle: withcolor 0.5white fi; fi; + if ACompleter=false: draw A[n-1]--O--A[n] if Hachures: withpen pencircle scaled2 fi; + fi; % Affichage des angles associ\'es if AffichageAngle: if round(p_*(#2/total[N]))>15: @@ -14490,6 +15163,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \end{mplibcode} \else \mpxcommands{% + \usepackage{ProfCollege} \setKVdefault[ClesRatio]{TexteTotal=quantit\'e,TextePart=part} \setKV[ClesRatio]{#1} } @@ -14545,16 +15219,14 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis labeloffset:=labeloffset*3; label.top(\btex \useKV[ClesRatio]{TexteTotal} etex,iso(D,C)); if #3>1: - label.bot(btex #3\unexpanded{~\useKV[ClesRatio]{TextePart}}s - etex,iso(A,(N[1]/somme)[A,B])); + label.bot(btex #3\unexpanded{~\useKV[ClesRatio]{TextePart}}s etex,iso(A,(N[1]/somme)[A,B])); else: label.bot(btex #3\unexpanded{~\useKV[ClesRatio]{TextePart}} etex,iso(A,(N[1]/somme)[A,B])); fi; if #4>1: label.bot(btex #4\unexpanded{~\useKV[ClesRatio]{TextePart}}s etex,iso(((N[1]+N[2])/somme)[A,B],(N[1]/somme)[A,B])); else: - label.bot(btex #4\unexpanded{~\useKV[ClesRatio]{TextePart}} - etex,iso(((N[1]+N[2])/somme)[A,B],(N[1]/somme)[A,B])); + label.bot(btex #4\unexpanded{~\useKV[ClesRatio]{TextePart}} etex,iso(((N[1]+N[2])/somme)[A,B],(N[1]/somme)[A,B])); fi; if n>2: if #5>1: @@ -14565,7 +15237,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis fi; \end{mpost} \fi -} +}% \newcommand\MPTestCours[9][]{% % #2 : Longueur de la barre unit\'e @@ -16025,6 +16697,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \end{mplibcode} \else \mpxcommands{% + \usepackage{ProfCollege} \setKV[TraceG]{#1} } \begin{mpost}[mpsettings={xmin=\useKV[TraceG]{Xmin};xmax=\useKV[TraceG]{Xmax};ymin=\useKV[TraceG]{Ymin};ymax=\useKV[TraceG]{Ymax};pasx=\useKV[TraceG]{Xstep};pasy=\useKV[TraceG]{Ystep};xu=1cm/\useKV[TraceG]{Xstep};yu=1cm/\useKV[TraceG]{Ystep};grillex=\useKV[TraceG]{PasGrilleX};grilley=\useKV[TraceG]{PasGrilleY};pos=\useKV[TraceG]{LabelC};color colorpoint,colortrace;colorpoint=\useKV[TraceG]{CouleurPoint};colortrace=\useKV[TraceG]{CouleurTrace};boolean Grille;Grille=\useKV[TraceG]{Grille};boolean Graduations;Graduations=\useKV[TraceG]{Graduations};boolean Relie;Relie=\useKV[TraceG]{Relie};boolean RelieSegment;RelieSegment=\useKV[TraceG]{RelieSegment};boolean Invisible;Invisible=\useKV[TraceG]{Invisible};}] @@ -16215,7 +16888,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis label.top(btex \useKV[TraceG]{LabelY} etex,u*(xpart(Origine),ymax)); \end{mplibcode} \else - \mpxcommands{% + \mpxcommands{% + \usepackage{ProfCollege} \setKV[TraceG]{#1} } \begin{mpost}[mpsettings={borneinf=\useKV[TraceG]{Bornea};bornesup=\useKV[TraceG]{Borneb};xmin=\useKV[TraceG]{Xmin};xmax=\useKV[TraceG]{Xmax};ymin=\useKV[TraceG]{Ymin};ymax=\useKV[TraceG]{Ymax};pasx=\useKV[TraceG]{Xstep};pasy=\useKV[TraceG]{Ystep};xu=1cm/\useKV[TraceG]{Xstep};yu=1cm/\useKV[TraceG]{Ystep};grillex=\useKV[TraceG]{PasGrilleX};grilley=\useKV[TraceG]{PasGrilleY};pos=\useKV[TraceG]{LabelC};color colortrace;colortrace=\useKV[TraceG]{CouleurTrace};boolean Grille;Grille=\useKV[TraceG]{Grille};boolean Graduations;Graduations=\useKV[TraceG]{Graduations};}] @@ -17337,6 +18011,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \setKVdefault[ClesProba]{Echelle=false,Arbre=false,Branche=2,Angle=60,Rayon=0.25,LongueurEchelle=5,Affichage=0,Grille=1,Incline} \def\Updatetoksproba#1/#2\nil{\addtotok\toklistepointproba{"#1","\footnotesize #2",}} +\def\Updatetoksprobapdf#1/#2\nil{\addtotok\toklistepointproba{"#1","\noexpand\footnotesize #2",}} \def\Updatetoksprobaechelle#1/#2/#3\nil{\addtotok\toklistepointproba{#1,#2,"#3",}} \newtoks\toklistepointproba @@ -17344,9 +18019,13 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis % Pour construire l'arbre de probabilit\'e \def\buildarbreproba{% \toklistepointproba{}% + \ifluatex \foreachitem\compteur\in\ListeProba{\expandafter\Updatetoksproba\compteur\nil}% + \else + \foreachitem\compteur\in\ListeProba{\expandafter\Updatetoksprobapdf\compteur\nil}% + \fi \MPArbreProba{\useKV[ClesProba]{Branche}}{\useKV[ClesProba]{Angle}}{\the\toklistepointproba}{\useKV[ClesProba]{Rayon}}% -} +}% % Pour construire l'\'echelle de probabilit\'e \def\buildechelleproba{% @@ -17363,7 +18042,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \ifluatex \begin{mplibcode} pair A,B,C[],D[];%les noeuds de l'arbre - Figure(-10u,-10u,10u,10u); + %Figure(-10u,-10u,10u,10u); A=u*(1,1); B-A=u*(#1,0); draw segment(A,B); @@ -17490,7 +18169,6 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis boolean Incline; Incline=\useKV[ClesProba]{Incline}; pair A[],B[];%les noeuds de l'arbre - Figure(-10u,-10u,10u,10u); A0=u*(1,1); B0-A0=u*(#1,0); A1=rotation(B0,A0,#2/2); @@ -17543,9 +18221,10 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis toto(#3); \end{mplibcode} \else - \begin{mpost}[mpsettings={input PfCGeometrie; boolean Incline; Incline=\useKV[ClesProba]{Incline};}] + \begin{mpost}[mpsettings={%input PfCGeometrie; + boolean Incline; Incline=\useKV[ClesProba]{Incline};}] pair A[],B[];%les noeuds de l'arbre - Figure(-10u,-10u,10u,10u); + %Figure(-10u,-10u,10u,10u); A0=u*(1,1); B0-A0=u*(#1,0); A1=rotation(B0,A0,#2/2); @@ -17605,19 +18284,20 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \setKV[ClesProba]{#1}% % On liste les diff\'erents \'el\'ements sous la forme Ev\`enement/proba \setsepchar[*]{,*/}\ignoreemptyitems% - \readlist*\ListeProba{#2} + \readlist*\ListeProba{#2}% \ifboolKV[ClesProba]{Echelle}{% \buildechelleproba% }{\ifboolKV[ClesProba]{Arbre}{% \buildarbreproba% - }{} - } -} + }{}% + }% + \setsepchar{,}% +}% %%% % Reperage %%% -\setKVdefault[ClesReperage]{Unitex=1,Pasx=1,Unitey=1,Pasy=1,Unitez=1,Pasz=1,DemiDroite=false,Droite=false,Plan=false,Trace=false,ListeSegment={},Espace=false,Sphere=false,AnglePhi=30,CouleurLa=white,CouleurLon=Tomato,AffichageNom=false,AffichageGrad=false,AffichageAbs=0,AffichageCoord=false,LectureCoord=false,ValeurUnitex=1,ValeurUnitey=1,ValeurOrigine=0,NomOrigine=O,EchelleEspace=50,CouleurCoord=black,Thermometre=false,Mercure=false,ValeurMin=-4000,ValeurMax=4000,Etages=4} +\setKVdefault[ClesReperage]{Unitex=1,Pasx=1,Unitey=1,Pasy=1,Unitez=1,Pasz=1,DemiDroite=false,Droite=false,Plan=false,Trace=false,ListeSegment={},Espace=false,Sphere=false,AnglePhi=30,CouleurLa=white,CouleurLon=Tomato,AffichageNom=false,AffichageGrad=false,AffichageAbs=0,AffichageCoord=false,LectureCoord=false,ValeurUnitex=1,ValeurUnitey=1,ValeurOrigine=0,NomOrigine=O,EchelleEspace=50,CouleurCoord=black,Thermometre=false,Mercure=false,CouleurMercure=black,ValeurMin=-4000,ValeurMax=4000,Etages=4} % ValeurOrigine permet de faire des morceaux de demi-droite gradu\'ee en passant par droite :) \def\Updatetoksdroite#1/#2\nil{\addtotok\toklistepointdroite{#1,"#2",}} @@ -17809,16 +18489,16 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis picture CodageUn,CodageDeux; CodageUn=image( if k>0: - label.bot(LATEX("\noexpand\scriptsize\ang{"&decimal(k)&"} E"),(0,0)); + label.bot(LATEX("\noexpand\scriptsize\noexpand\ang{"&decimal(k)&"} E"),(0,0)); else: - label.bot(LATEX("\noexpand\scriptsize\ang{"&decimal(abs(k))&"} O"),(0,0)); + label.bot(LATEX("\noexpand\scriptsize\noexpand\ang{"&decimal(abs(k))&"} O"),(0,0)); fi; ); CodageDeux=image( if k>0: - label.rt(LATEX("\noexpand\scriptsize\ang{"&decimal(l)&"} N"),(0,0)); + label.rt(LATEX("\noexpand\scriptsize\noexpand\ang{"&decimal(l)&"} N"),(0,0)); else: - label.lft(LATEX("\noexpand\scriptsize\ang{"&decimal(abs(l))&"} S"),(0,0)); + label.lft(LATEX("\noexpand\scriptsize\noexpand\ang{"&decimal(abs(l))&"} S"),(0,0)); fi; ); fill (polygone(llcorner CodageUn,lrcorner CodageUn,urcorner CodageUn,ulcorner CodageUn) shifted(point(0.5*length Codageun) of Codageun)) withcolor blanc; @@ -17840,7 +18520,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis endfor; enddef; toto(#1); - label.llft(btex \noexpand\tiny \ang{0} etex,Projette(C)); + label.llft(LATEX("\noexpand\tiny\noexpand\ang{0}"),Projette(C)); \end{mpost} \fi } @@ -19313,6 +19993,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis AffichageGrad:=\AffichageGrad; AffichageCoord:=\useKV[ClesReperage]{AffichageAbs}; AffichageNom:=\AffichageNom; + color ColMercure; + ColMercure:=\useKV[ClesReperage]{CouleurMercure}; boolean Mercure; Mercure=\useKV[ClesReperage]{Mercure}; numeric valeur[]; @@ -19390,17 +20072,18 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis cc1=cercles(Tc[0],2.5mm); Tc1=pointarc(cc1,75); Tc4=pointarc(cc1,105); - trace arccercle(Tc4,Tc1,Tc0); Tc2=(xpart(Tc1),ypart(B+unitp*(0,0.75))); Tc3=(xpart(Tc4),ypart(B+unitp*(0,0.75))); - trace Tc1--Tc2--arccercle(Tc2,Tc3,iso(Tc2,Tc3))--Tc4; Tc5=(xpart(Tc1),ypart(unitp*(0,valeur[1]))); Tc6=(xpart(Tc4),ypart(unitp*(0,valeur[1]))); path temp; temp=Tc1--Tc5--Tc6--Tc4--arccercle(Tc4,Tc1,Tc0)--cycle; if nbt>0: - fill temp; + fill temp withcolor ColMercure; fi; + trace Tc5--Tc6; + trace arccercle(Tc4,Tc1,Tc0); + trace Tc1--Tc2--arccercle(Tc2,Tc3,iso(Tc2,Tc3))--Tc4; enddef; if Mercure:Thermo(1) else : Thermo(0) fi; @@ -19463,6 +20146,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis AffichageGrad:=\AffichageGrad; AffichageCoord:=\useKV[ClesReperage]{AffichageAbs}; AffichageNom:=\AffichageNom; + color ColMercure; + ColMercure:=\useKV[ClesReperage]{CouleurMercure}; boolean Mercure; Mercure=\useKV[ClesReperage]{Mercure};}] maxx:=0; @@ -19525,12 +20210,12 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis m_c:=m_c*3; marque_p:="croix"; labeloffset:=labeloffset*2; - label.lft(TEX("\footnotesize\Temp{"&decimal(ValeurUnitex)&"}"),unitex*(0,1)); - label.lft(TEX("\footnotesize\Temp{"&decimal(ValeurOrigine)&"}"),A); + label.lft(LATEX("\noexpand\footnotesize\noexpand\SI{"&decimal(ValeurUnitex)&"}{\celsius}"),unitex*(0,1)); + label.lft(LATEX("\noexpand\footnotesize\noexpand\SI{"&decimal(ValeurOrigine)&"}{\celsius}"),A); if AffichageGrad>0: for k=((minx+(minx mod pasx)) div pasx) upto (maxx div pasx): if (k<0) or (k>1): - label.lft(TEX("\footnotesize\Temp{\fpeval{"&decimal(ValeurOrigine)&"+"&decimal(ValeurUnitex-ValeurOrigine)&"*"&decimal(k)&"}}"),unitex*(0,k));%%% + label.lft(LATEX("\noexpand\footnotesize\noexpand\SI{\noexpand\fpeval{"&decimal(ValeurOrigine)&"+"&decimal(ValeurUnitex-ValeurOrigine)&"*"&decimal(k)&"}}{\celsius}"),unitex*(0,k));%%% fi; endfor; fi; @@ -19542,10 +20227,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis cc1=cercles(Tc[0],2.5mm); Tc1=pointarc(cc1,75); Tc4=pointarc(cc1,105); - trace arccercle(Tc4,Tc1,Tc0); Tc2=(xpart(Tc1),ypart(B+unitp*(0,0.75))); Tc3=(xpart(Tc4),ypart(B+unitp*(0,0.75))); - trace Tc1--Tc2--arccercle(Tc2,Tc3,iso(Tc2,Tc3))--Tc4; Tc5=(xpart(Tc1),ypart(unitp*(0,valeur[1]))); Tc6=(xpart(Tc4),ypart(unitp*(0,valeur[1]))); path temp; @@ -19553,6 +20236,9 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis if nbt>0: fill temp; fi; + trace arccercle(Tc4,Tc1,Tc0); + trace Tc1--Tc2--arccercle(Tc2,Tc3,iso(Tc2,Tc3))--Tc4; + trace Tc5--Tc6; enddef; if Mercure:Thermo(1) else : Thermo(0) fi; @@ -19562,7 +20248,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis n:=0; for p_=t: n:=n+1; - label.rt(TEX(p_),unitp*(0,valeur[n])); + label.rt(LATEX(p_),unitp*(0,valeur[n])); if p_<>"": pointe(unitp*(0,valeur[n])); fi; @@ -19574,7 +20260,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis n:=n+1; if p_<>"": drawarrow (unitp*(-1,valeur[n]))--(unitp*(-0.3,valeur[n])); - label.rt(btex \hbox to2em{\dotfill} etex,(unitp*(-1,valeur[n]))); + label.rt(\btex \hbox to2em{\dotfill} etex,(unitp*(-1,valeur[n]))); pointe(unitp*(0,valeur[n]-ValeurOrigine)); fi; endfor; @@ -19584,9 +20270,9 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis n:=n+1; if p_<>"": if ((ValeurUnitex*valeur[n]) mod pasx)<>0: - label.rt(TEX("\footnotesize$\frac{\num{\fpeval{"&decimal(ValeurUnitex)&"*"&decimal(valeur[n])&"}}}{\num{"&decimal(pasx)&"}}$"),unitp*(0,valeur[n])); + label.rt(LATEX("\noexpand\footnotesize$\noexpand\frac{\noexpand\num{\noexpand\fpeval{"&decimal(ValeurUnitex)&"*"&decimal(valeur[n])&"}}}{\num{"&decimal(pasx)&"}}$"),unitp*(0,valeur[n])); else: - label.rt(TEX("\footnotesize\num{\fpeval{"&decimal(ValeurUnitex)&"*"&decimal(valeur[n])&"/"&decimal(pasx)&"}}"),unitp*(0,valeur[n])); + label.rt(LATEX("\noexpand\footnotesize\noexpand\num{\noexpand\fpeval{"&decimal(ValeurUnitex)&"*"&decimal(valeur[n])&"/"&decimal(pasx)&"}}"),unitp*(0,valeur[n])); fi; pointe(unitp*(0,valeur[n]-ValeurOrigine)); fi; @@ -19596,7 +20282,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis for p_=t: n:=n+1; if p_<>"": - label.rt(TEX("\footnotesize\Temp{\fpeval{"&decimal(ValeurOrigine)&"+"&decimal(ValeurUnitex-(ValeurOrigine))&"*"&decimal(valeur[n])&"/"&decimal(pasx)&"}}"),(5mm,unitp*valeur[n])); + label.rt(LATEX("\noexpand\footnotesize\noexpand\SI{\noexpand\fpeval{"&decimal(ValeurOrigine)&"+"&decimal(ValeurUnitex-(ValeurOrigine))&"*"&decimal(valeur[n])&"/"&decimal(pasx)&"}}{\celsius}"),(5mm,unitp*valeur[n])); pointe(unitp*(0,valeur[n])); draw (unitp*(0,valeur[n]))--(7.5mm,unitp*valeur[n]) dashed evenly; fi; @@ -20096,7 +20782,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis %%% % Tableaux d'unit\'es %%% -\setKVdefault[ClesTableaux]{Virgule=true,Incline=false,Entiers=false,Decimaux=false,Milliards=false,Millions=false,Micro=false,Nano=false,Partie=false,CouleurG=gray!15,CouleurM=gray!15,Couleurm=gray!15,Couleuru=gray!15,Couleurd=gray!15,Classes=false,Nombres=false,Puissances=false,NbLignes=2,Metre=false,Are=false,Capacite=false,Carre=false,Cube=false,Litre=false,Gramme=false,Fleches=false,FlechesB=false,FlechesH=false,Colonnes=false,Prefixes=false,Escalier=false,Taille=5,Largeur=4.75em} +\setKVdefault[ClesTableaux]{Virgule=true,Incline=false,Entiers=false,Decimaux=false,Milliards=false,Millions=false,Micro=false,Nano=false,Partie=false,CouleurG=gray!15,CouleurM=gray!15,Couleurm=gray!15,Couleuru=gray!15,Couleurd=gray!15,Classes=false,Nombres=false,Puissances=false,NbLignes=2,Metre=false,Are=false,Capacite=false,Carre=false,Cube=false,Litre=false,Gramme=false,Fleches=false,FlechesB=false,FlechesH=false,Colonnes=false,Prefixes=false,Escalier=false,Taille=5,Largeur=4.75em,Nom=PfCTableau,CodeAfter={}} \newcommand\PfCTBstrut{\rule[-1.2ex]{0pt}{3.8ex}} % Top and Bottom strut \newcommand\PfCTstrut{\rule{0pt}{3.8ex}} % Top strut @@ -20123,7 +20809,7 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xdef\PfCCoefConversion{10}% }{}% \PfCTableauIncline% - }{% + }{% % %%% Cl\'e Prefixes % @@ -20368,50 +21054,51 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xdef\TailleFonte{\useKV[ClesTableaux]{Taille}}% \setlength{\tabcolsep}{0.01\tabcolsep}% \begin{center}% - % + % %%% Definition du tableau - % + % \ifboolKV[ClesTableaux]{Milliards}{\xdef\PfCDerniereColonne{13}}{\ifboolKV[ClesTableaux]{Millions}{\xdef\PfCDerniereColonne{10}}{\xdef\PfCDerniereColonne{7}}}% - \begin{NiceTabular}{*{% - \ifboolKV[ClesTableaux]{Milliards}{12}{% - \ifboolKV[ClesTableaux]{Millions}{9}{6}% - }% - }{m{\useKV[ClesTableaux]{Largeur}}}}% - \ifboolKV[ClesTableaux]{Classes}{% - \hline - \xdef\DecalageLigne{\fpeval{\DecalageLigne+1}}\ifboolKV[ClesTableaux]{Milliards}{\Block[draw,fill={\useKV[ClesTableaux]{CouleurG}}]{1-3}{Classe des milliards}&&&\Block[draw,fill={\useKV[ClesTableaux]{CouleurM}}]{1-3}{Classe des millions}&&&}{} - \ifboolKV[ClesTableaux]{Millions}{\Block[draw,fill={\useKV[ClesTableaux]{CouleurM}}]{1-3}{Classe des millions}&&&}{} - \Block[draw,fill={\useKV[ClesTableaux]{Couleurm}}]{1-3}{Classe des milliers}&&% - &\Block[draw,fill={\useKV[ClesTableaux]{Couleuru}}]{1-3}{Classe des unités}&&\\}{% - \xdef\DecalageLigne{\fpeval{\DecalageLigne+1}}% - \ifboolKV[ClesTableaux]{Milliards}{% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (L);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (K);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (J);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (I);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (H);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G);}}&}{}% - \ifboolKV[ClesTableaux]{Millions}{% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (I);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (H);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G);}}&}{}% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (F);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (E);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (D);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (C);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (B);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (A);}}\\ - }% + \begin{NiceTabular}{*{% + \ifboolKV[ClesTableaux]{Milliards}{12}{% + \ifboolKV[ClesTableaux]{Millions}{9}{6}% + }% + }{m{\useKV[ClesTableaux]{Largeur}}}}% + \ifboolKV[ClesTableaux]{Classes}{% + \hline + \xdef\DecalageLigne{\fpeval{\DecalageLigne+1}}\ifboolKV[ClesTableaux]{Milliards}{\Block[draw,fill={\useKV[ClesTableaux]{CouleurG}}]{1-3}{Classe des milliards}&&&\Block[draw,fill={\useKV[ClesTableaux]{CouleurM}}]{1-3}{Classe des millions}&&&% + }{} + \ifboolKV[ClesTableaux]{Millions}{\Block[draw,fill={\useKV[ClesTableaux]{CouleurM}}]{1-3}{Classe des millions}&&&}{} + \Block[draw,fill={\useKV[ClesTableaux]{Couleurm}}]{1-3}{Classe des milliers}&&% + &\Block[draw,fill={\useKV[ClesTableaux]{Couleuru}}]{1-3}{Classe des unités}&&\\}{% + \xdef\DecalageLigne{\fpeval{\DecalageLigne+1}}% + \ifboolKV[ClesTableaux]{Milliards}{% + \Block[]{}{}&\Block[]{}{}&\Block[]{}{}&\Block[]{}{}&\Block[]{}{}&\Block[]{}{}&}{}% + \ifboolKV[ClesTableaux]{Millions}{% + \Block[]{}{}&\Block[]{}{}&\Block[]{}{}&}{}% + \Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{}\\ + }%ok \hline \ifboolKV[ClesTableaux]{Milliards}{% - \Block[draw]{}{\fontsize{\TailleFonte}{\TailleFonte}\selectfont centaines de milliards}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de milliards}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de milliards}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont centaines de millions}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de millions}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de millions}% - & + \Block[draw]{}{\fontsize{\TailleFonte}{\TailleFonte}\selectfont centaines de milliards}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de milliards}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de milliards}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont centaines de millions}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de millions}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de millions}% + & }{} \ifboolKV[ClesTableaux]{Millions}{% - \Block[draw]{}{\fontsize{5}{5}\selectfont centaines de millions}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de millions}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de millions}% - & + \Block[draw]{}{\fontsize{5}{5}\selectfont centaines de millions}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de millions}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de millions}% + & }{} - \Block[draw]{}{\fontsize{5}{5}\selectfont centaines de milliers}% + \Block[draw]{}{\fontsize{5}{5}\selectfont centaines de milliers}% &\Block[draw]{}{\fontsize{5}{5}\selectfont dizaines de milliers}% &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es de milliers}% &\Block[draw]{}{\fontsize{5}{5}\selectfont centaines}% @@ -20419,137 +21106,133 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis &\Block[draw]{}{\fontsize{5}{5}\selectfont unit\'es}\\% \ifboolKV[ClesTableaux]{Nombres}{% \xdef\DecalageLigne{\fpeval{\DecalageLigne+1}}% - \ifboolKV[ClesTableaux]{Milliards}{% - \Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000000}}% - &% - }{}% - \ifboolKV[ClesTableaux]{Millions}{% - \Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000000}}% - &% - }{}% - \Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{100}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10}}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1}}% - \\ + \ifboolKV[ClesTableaux]{Milliards}{% + \Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000000}}% + &% + }{}% + \ifboolKV[ClesTableaux]{Millions}{% + \Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000000}}% + &% + }{}% + \Block[draw]{}{\fontsize{5}{5}\selectfont\num{100000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1000}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{100}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{10}}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont\num{1}}% + \\ }{}% - % - %%% Prise en compte de la cl\'e Puissances - % + % + %%% Prise en compte de la cl\'e Puissances + % \ifboolKV[ClesTableaux]{Puissances}{% \xdef\DecalageLigne{\fpeval{\DecalageLigne+1}}% - \ifboolKV[ClesTableaux]{Milliards}{% - &% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^{9}$}% - &% - &% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^{6}$}% - &% - }{% - \ifboolKV[ClesTableaux]{Millions}{% - &% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^{6}$}% - &% - }{% - }}% - &% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^3$}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times\num{10}^2$}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times\num{10}^1$}% - &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times\num{1}$}% - \\% + \ifboolKV[ClesTableaux]{Milliards}{% + &% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^{9}$}% + &% + &% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^{6}$}% + &% + }{% + \ifboolKV[ClesTableaux]{Millions}{% + &% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^{6}$}% + &% + }{% + }}% + &% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times10^3$}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times\num{10}^2$}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times\num{10}^1$}% + &\Block[draw]{}{\fontsize{5}{5}\selectfont $\times\num{1}$}% + \\% }{}% - % - %%% Lignes vierges - % + % + %%% Lignes vierges + % \hline% \xintFor* ##1 in {\xintSeq{1}{\useKV[ClesTableaux]{NbLignes}}}\do{% + \ifboolKV[ClesTableaux]{Milliards}{% + &&&&&&}{}% + \ifboolKV[ClesTableaux]{Millions}{% + &&&}{}% + &&&&&\\}% \ifboolKV[ClesTableaux]{Milliards}{% - &&&&&&}{}% + \Block[]{}{\tikz[remember picture,overlay]{\coordinate (L1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (K1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (J1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (I1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (H1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G1);}}&}{}% \ifboolKV[ClesTableaux]{Millions}{% - &&&}{}% - &&&&&\\}% - \ifboolKV[ClesTableaux]{Milliards}{% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (L1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (K1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (J1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (I1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (H1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G1);}}&}{}% - \ifboolKV[ClesTableaux]{Millions}{% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (I1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (H1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G1);}}&}{}% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (F1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (E1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (D1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (C1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (B1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ - \CodeAfter% - % on trace les lignes verticales - \xintFor* ##1 in {\xintSeq{1}{\PfCDerniereColonne}}\do{% - \tikz\draw (2-|##1)--(\fpeval{2+\useKV[ClesTableaux]{NbLignes}+1}-|##1);% - }% - %% On place le nombre éventuel - \ifx\bla#2\bla% - \else% - \setsepchar{,}% - \readlist*\ListeNombreAPlacer{#2}% - \xintFor* ##2 in{\xintSeq {1}{\ListeNombreAPlacerlen}}\do{% - \StrLen{\ListeNombreAPlacer[##2]}[\TabLongueurNombre]% - \xintFor* ##1 in{\xintSeq {\TabLongueurNombre}{1}}\do{% - \tikz\node at (\fpeval{\DecalageLigne+##2+1.5}-|\fpeval{\PfCDerniereColonne-0.5-\TabLongueurNombre+##1}) {\PfCTBstrut\StrMid{\ListeNombreAPlacer[##2]}{##1}{##1}};% - }% - }% - \fi% - \end{NiceTabular}% - \end{center}% - % On trace les éventuelles fleches - \ifboolKV[ClesTableaux]{Classes}{}{% - \ifboolKV[ClesTableaux]{FlechesB}{% - \ifboolKV[ClesTableaux]{Milliards}{% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (K1) to node[below, midway]{\small$\div\num{10}$}(L1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (J1) to node[below, midway]{\small$\div\num{10}$}(K1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (I1) to node[below, midway]{\small$\div\num{10}$}(J1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (H1) to node[below, midway]{\small$\div\num{10}$}(I1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (G1) to node[below, midway]{\small$\div\num{10}$}(H1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (F1) to node[below, midway]{\small$\div\num{10}$}(G1);}% - }{}% - \ifboolKV[ClesTableaux]{Millions}{% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (H1) to node[below, midway]{\small$\div\num{10}$}(I1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (G1) to node[below, midway]{\small$\div\num{10}$}(H1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (F1) to node[below, midway]{\small$\div\num{10}$}(G1);}% - }{}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (E1) to node[below, midway]{\small$\div\num{10}$}(F1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (D1) to node[below, midway]{\small$\div\num{10}$}(E1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (C1) to node[below, midway]{\small$\div\num{10}$}(D1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (B1) to node[below, midway]{\small$\div\num{10}$}(C1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (A1) to node[below, midway]{\small$\div\num{10}$}(B1);}% - }{}% - \ifboolKV[ClesTableaux]{FlechesH}{% - \ifboolKV[ClesTableaux]{Milliards}{% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (L) to node[above, midway]{\small$\times\num{10}$}(K);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (K) to node[above, midway]{\small$\times\num{10}$}(J);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (J) to node[above, midway]{\small$\times\num{10}$}(I);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (I) to node[above, midway]{\small$\times\num{10}$}(H);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (H) to node[above, midway]{\small$\times\num{10}$}(G);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (G) to node[above, midway]{\small$\times\num{10}$}(F);}% - }{}% - \ifboolKV[ClesTableaux]{Millions}{% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (I) to node[above, midway]{\small$\times\num{10}$}(H);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (H) to node[above, midway]{\small$\times\num{10}$}(G);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (G) to node[above, midway]{\small$\times\num{10}$}(F);}% - }{}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (B) to node[above, midway]{\small$\times\num{10}$}(A);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (C) to node[above, midway]{\small$\times\num{10}$}(B);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (D) to node[above, midway]{\small$\times\num{10}$}(C);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (E) to node[above, midway]{\small$\times\num{10}$}(D);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (F) to node[above, midway]{\small$\times\num{10}$}(E);}% - }{}% - } + \Block[]{}{\tikz[remember picture,overlay]{\coordinate (I1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (H1);}}&\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G1);}}&}{}% + \Block[]{}{\tikz[remember picture,overlay]{\coordinate (F1);}} + &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (E1);}} + &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (D1);}} + &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (C1);}} + &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (B1);}} + &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ + \CodeAfter% + % on trace les lignes verticales + \xintFor* ##1 in {\xintSeq{1}{\PfCDerniereColonne}}\do{% + \tikz\draw (2-|##1)--(\fpeval{2+\useKV[ClesTableaux]{NbLignes}+1}-|##1);% + }% + %% On place le nombre éventuel + \ifx\bla#2\bla% + \else% + \setsepchar{,}% + \readlist*\ListeNombreAPlacer{#2}% + \xintFor* ##2 in{\xintSeq {1}{\ListeNombreAPlacerlen}}\do{% + \StrLen{\ListeNombreAPlacer[##2]}[\TabLongueurNombre]% + \xintFor* ##1 in{\xintSeq {\TabLongueurNombre}{1}}\do{% + \tikz\node at (\fpeval{\DecalageLigne+##2+1.5}-|\fpeval{\PfCDerniereColonne-0.5-\TabLongueurNombre+##1}) {\PfCTBstrut\StrMid{\ListeNombreAPlacer[##2]}{##1}{##1}};% + }% + }% + \fi% + % On trace les éventuelles fleches + \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}%% + \ifboolKV[ClesTableaux]{Classes}{}{% + \ifboolKV[ClesTableaux]{FlechesB}{% + \ifboolKV[ClesTableaux]{Milliards}{% + \xintFor* ##1 in {\xintSeq{1}{11}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{3+\useKV[ClesTableaux]{NbLignes}}-|\fpeval{1.5+##1}) to node[below, midway]{\small$\div\num{10}$}(\fpeval{3+\useKV[ClesTableaux]{NbLignes}}-|\fpeval{0.5+##1});% + }% + }{% + \ifboolKV[ClesTableaux]{Millions}{% + \xintFor* ##1 in {\xintSeq{1}{8}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{3+\useKV[ClesTableaux]{NbLignes}}-|\fpeval{1.5+##1}) to node[below, midway]{\small$\div\num{10}$}(\fpeval{3+\useKV[ClesTableaux]{NbLignes}}-|\fpeval{0.5+##1});% + }% + }{% + \xintFor* ##1 in {\xintSeq{1}{5}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{3+\useKV[ClesTableaux]{NbLignes}}-|\fpeval{1.5+##1}) to node[below, midway]{\small$\div\num{10}$}(\fpeval{3+\useKV[ClesTableaux]{NbLignes}}-|\fpeval{0.5+##1});% + }% + }% + }% + }{}% + \ifboolKV[ClesTableaux]{FlechesH}{% + \ifboolKV[ClesTableaux]{Milliards}{% + \xintFor* ##1 in {\xintSeq{1}{11}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{0.5+##1}) to node[above, midway]{\small$\times\num{10}$}(1.5-|\fpeval{1.5+##1});% + }% + }{% + \ifboolKV[ClesTableaux]{Millions}{% + \xintFor* ##1 in {\xintSeq{1}{8}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{0.5+##1}) to node[above, midway]{\small$\times\num{10}$}(1.5-|\fpeval{1.5+##1});% + }% + }{% + \xintFor* ##1 in {\xintSeq{1}{5}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{0.5+##1}) to node[above, midway]{\small$\times\num{10}$}(1.5-|\fpeval{1.5+##1});% + }% + }% + }% + }{}% + }% + \useKV[ClesTableaux]{CodeAfter}% + \end{NiceTabular}% + \end{center}% \setlength{\tabcolsep}{100\tabcolsep}% }{}% % @@ -20890,24 +21573,24 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \ifboolKV[ClesTableaux]{Metre}{% \[\renewcommand{\arraystretch}{1.15}% \begin{NiceTabular}{*{7}{p{7.5mm}}}% - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (A);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (B);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (C);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (D);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (E);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (F);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (G);}}\\ + \Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{}\\ \Block[draw]{}{km\PfCTBstrut}&\Block[draw]{1-1}{hm\PfCTBstrut}&\Block[draw]{1-1}{dam\PfCTBstrut}&\Block[draw]{1-1}{m\PfCTBstrut}&\Block[draw]{1-1}{dm\PfCTBstrut}&\Block[draw]{1-1}{cm\PfCTBstrut}&\Block[draw]{1-1}{mm\PfCTBstrut}\\ \xintFor* ##1 in {\xintSeq {1}{\useKV[ClesTableaux]{NbLignes}}}\do{% &&&&&&\\ - } - \Block[]{}{\tikz[remember picture,overlay]{\coordinate (G1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (F1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (E1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (D1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (C1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (B1);}} - &\Block[]{}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ + }% + \Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{}\\ \CodeAfter % on trace les lignes verticales \xintFor* ##1 in {\xintSeq{1}{8}}\do{% @@ -20925,24 +21608,37 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis }% } \fi% + % on trace les flèches + \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}% + \ifboolKV[ClesTableaux]{FlechesH}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{0.5+##1}) to node[above, midway]{\small$\times\num{10}$}(1.5-|\fpeval{1.5+##1});% + }% + }{}% + \ifboolKV[ClesTableaux]{FlechesB}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{3+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{1.5+##1}) to node[below,midway]{\small$\div\num{10}$}(\fpeval{3+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{0.5+##1});% + }% + }{}% + \useKV[ClesTableaux]{CodeAfter}% \end{NiceTabular}% \]% - \Conversion{10}% }% {}% - % + + % %%% Prise en compte de la cl\'e Carre % \ifboolKV[ClesTableaux]{Carre}{% \[\renewcommand{\arraystretch}{1.15}% \begin{NiceTabular}{*{7}{p{3.5mm}p{3.5mm}}}% - \Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (A);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (B);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (C);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (D);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (E);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (F);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (G);}}\\ + \Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{}\\ \Block[borders={left,top,right}]{1-2}{km$^2$\PfCTBstrut}&&\Block[borders={left,top,right}]{1-2}{hm$^2$\PfCTBstrut}&&\Block[borders={left,top,right}]{1-2}{dam$^2$\PfCTBstrut}&&\Block[borders={left,top,right}]{1-2}{m$^2$\PfCTBstrut}&&\Block[borders={left,top,right}]{1-2}{dm$^2$\PfCTBstrut}&&\Block[borders={left,top,right}]{1-2}{cm$^2$\PfCTBstrut}&&\Block[borders={left,top,right}]{1-2}{mm$^2$\PfCTBstrut}&\\ \ifboolKV[ClesTableaux]{Are}{% \Block[borders={left,right,bottom}]{1-2}{}&&\Block[draw=gray!50,borders={left,top,bottom}]{1-1}{}&\Block[borders={top,right,bottom}]{1-1}{\scriptsize ha}&\Block[draw=gray!50,borders={left,top,bottom}]{1-1}{}&\Block[borders={top,right,bottom}]{1-1}{\scriptsize a}&\Block[borders={left,right,bottom}]{1-2}{}&&\Block[borders={left,right,bottom}]{1-2}{}&&\Block[borders={left,right,bottom}]{1-2}{}&&\Block[borders={left,right,bottom}]{1-2}{}&\\ @@ -20950,13 +21646,13 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xintFor* ##1 in {\xintSeq {1}{\useKV[ClesTableaux]{NbLignes}}}\do{% &&&&&&&&&&&&&\\ }% - \Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (G1);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (F1);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (E1);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (D1);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (C1);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (B1);}} - &&\Block[]{1-2}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ + \Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{} + &&\Block[]{1-2}{}\\ \CodeAfter % on trace les lignes verticales \xintifboolexpr{\useKV[ClesTableaux]{Are}}{% @@ -20988,24 +21684,37 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis }% } \fi% + % on trace les flèches + \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}% + \ifboolKV[ClesTableaux]{Are}{\xdef\PfCTableauDepart{4}}{\xdef\PfCTableauDepart{3}}% + \ifboolKV[ClesTableaux]{FlechesH}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{2*##1}) to node[above, midway]{\small$\times\num{100}$}(1.5-|\fpeval{2*(##1+1)});% + }% + }{}% + \ifboolKV[ClesTableaux]{FlechesB}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{\PfCTableauDepart+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{2*(##1+1)}) to node[below,midway]{\small$\div\num{100}$}(\fpeval{\PfCTableauDepart+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{2*##1});% + }% + }{}% + \useKV[ClesTableaux]{CodeAfter}% \end{NiceTabular} \]% - \Conversion{100}% }{}% % %%% Prise en compte de la cl\'e Cube % \ifboolKV[ClesTableaux]{Cube}{% - \setlength{\tabcolsep}{0.625\tabcolsep}% \[\renewcommand{\arraystretch}{1.15}% + \setlength{\tabcolsep}{0.625\tabcolsep}% \begin{NiceTabular}{*{7}{p{3.5mm}p{3.5mm}p{3.5mm}}} - \Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (A);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (B);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (C);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (D);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (E);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (F);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (G);}}\\ + \Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{}\\ \Block[borders={left,top,right}]{1-3}{km$^3$\PfCTBstrut}&&&\Block[borders={left,top,right}]{1-3}{hm$^3$\PfCTBstrut}&&&\Block[borders={left,top,right}]{1-3}{dam$^3$\PfCTBstrut}&&&\Block[borders={left,top,right}]{1-3}{m$^3$\PfCTBstrut}&&&\Block[borders={left,top,right}]{1-3}{dm$^3$\PfCTBstrut}&&&\Block[borders={left,top,right}]{1-3}{cm$^3$\PfCTBstrut}&&&\Block[borders={left,top,right}]{1-3}{mm$^3$\PfCTBstrut}&&\\ \ifboolKV[ClesTableaux]{Capacite}{% \Block[borders={left,right,bottom}]{1-3}{}&&&\Block[borders={left,right,bottom}]{1-3}{}&&&\Block[borders={left,right,bottom}]{1-3}{}&&&\Block[borders={left,right,bottom}]{1-3}{}&&&\Block[draw=gray!50,borders={top,left,bottom}]{}{\scriptsize hL}&\Block[draw=gray!50,borders={top,bottom},l]{}{\scriptsize daL}&\Block[draw=gray!50,borders={top,right,bottom}]{}{\scriptsize L}&\Block[draw=gray!50,borders={top,left,bottom}]{}{\scriptsize dL}&\Block[draw=gray!50,borders={top,bottom}]{}{\scriptsize cL}&\Block[draw=gray!50,borders={top,right,bottom}]{}{\scriptsize mL}&\Block[borders={left,right,bottom}]{1-3}{}&&\\ @@ -21013,13 +21722,13 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xintFor* ##1 in {\xintSeq{1}{\useKV[ClesTableaux]{NbLignes}}}\do{% &&&&&&&&&&&&&&&&&&&&\\ }% - \Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (G1);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (F1);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (E1);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (D1);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (C1);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (B1);}} - &&&\Block[]{1-3}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ + \Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{} + &&&\Block[]{1-3}{}\\ \CodeAfter % on trace les lignes verticales \xintifboolexpr{\useKV[ClesTableaux]{Capacite}}{% @@ -21053,10 +21762,23 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis }% } \fi% + % on trace les flèches + \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}% + \ifboolKV[ClesTableaux]{Capacite}{\xdef\PfCTableauDepart{4}}{\xdef\PfCTableauDepart{3}}% + \ifboolKV[ClesTableaux]{FlechesH}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{2.5+3*(##1-1)}) to node[above, midway]{\small$\times\num{1000}$}(1.5-|\fpeval{2.5+3*##1});% + }% + }{}% + \ifboolKV[ClesTableaux]{FlechesB}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{\PfCTableauDepart+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{2.5+3*##1}) to node[below,midway]{\small$\div\num{1000}$}(\fpeval{\PfCTableauDepart+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{2.5+3*(##1-1)});% + }% + }{}% + \useKV[ClesTableaux]{CodeAfter}% \end{NiceTabular} \]% - \setlength{\tabcolsep}{1.6\tabcolsep}% - \Conversion{1000}% +% \setlength{\tabcolsep}{1.6\tabcolsep}% }{}% % %%% Prise en compte de la cl\'e Litre @@ -21064,22 +21786,22 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \ifboolKV[ClesTableaux]{Litre}{% \[\renewcommand{\arraystretch}{1.15}% \begin{NiceTabular}{*{6}{p{7.5mm}}}% - \Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (A);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (B);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (C);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (D);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (E);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (F);}}\\ + \Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{}\\ \Block[draw]{}{hL\PfCTBstrut}&\Block[draw]{}{daL\PfCTBstrut}&\Block[draw]{}{L\PfCTBstrut}&\Block[draw]{}{dL\PfCTBstrut}&\Block[draw]{}{cL\PfCTBstrut}&\Block[draw]{}{mL\PfCTBstrut}\\ \xintFor* ##1 in {\xintSeq {1}{\useKV[ClesTableaux]{NbLignes}}}\do{% &&&&&\\ } - \Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (F1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (E1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (D1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (C1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (B1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ + \Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{} + &\Block[]{1-1}{}\\ \CodeAfter % on trace les lignes verticales \xintFor* ##1 in {\xintSeq{1}{7}}\do{% @@ -21097,9 +21819,21 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis }% }% \fi% + % on trace les flèches + \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}% + \ifboolKV[ClesTableaux]{FlechesH}{% + \xintFor* ##1 in {\xintSeq{1}{5}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{0.5+##1}) to node[above, midway]{\small$\times\num{10}$}(1.5-|\fpeval{1.5+##1});% + }% + }{}% + \ifboolKV[ClesTableaux]{FlechesB}{% + \xintFor* ##1 in {\xintSeq{1}{5}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{3+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{1.5+##1}) to node[below,midway]{\small$\div\num{10}$}(\fpeval{3+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{0.5+##1});% + }% + }{}% + \useKV[ClesTableaux]{CodeAfter}% \end{NiceTabular}% \]% - \Conversion{10}% }{}% % %%% Prise en compte de la cl\'e Gramme @@ -21107,24 +21841,24 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \ifboolKV[ClesTableaux]{Gramme}{% \[\renewcommand{\arraystretch}{1.15}% \begin{NiceTabular}{*{7}{p{7.5mm}}}% - \Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (A);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (B);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (C);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (D);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (E);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (F);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (G);}}\\ - \Block[draw]{}{kg\PfCTBstrut}&\Block[draw]{}{hg\PfCTBstrut}&\Block[draw]{}{dag\PfCTBstrut}&\Block[draw]{}{g\PfCTBstrut}&\Block[draw]{}{dg\PfCTBstrut}&\Block[draw]{}{cg\PfCTBstrut}&\Block[draw]{}{mg\PfCTBstrut}\\ + \Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{}\\ + \Block[draw]{}{kg\PfCTBstrut}&\Block[draw]{1-1}{hg\PfCTBstrut}&\Block[draw]{1-1}{dag\PfCTBstrut}&\Block[draw]{1-1}{g\PfCTBstrut}&\Block[draw]{1-1}{dg\PfCTBstrut}&\Block[draw]{1-1}{cg\PfCTBstrut}&\Block[draw]{1-1}{mg\PfCTBstrut}\\ \xintFor* ##1 in {\xintSeq {1}{\useKV[ClesTableaux]{NbLignes}}}\do{% &&&&&&\\ - } - \Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (G1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (F1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (E1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (D1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (C1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (B1);}} - &\Block[]{1-1}{\tikz[remember picture,overlay]{\coordinate (A1);}}\\ + }% + \Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{} + &\Block[]{}{}\\ \CodeAfter % on trace les lignes verticales \xintFor* ##1 in {\xintSeq{1}{8}}\do{% @@ -21140,34 +21874,25 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \xintFor* ##1 in{\xintSeq {1}{\TabLongueurNombre}}\do{% \tikz\node at (\fpeval{##2+2.5}-|\fpeval{\ListeNombreAPlacer[##2,2]-0.5+##1}) {\PfCTBstrut\StrMid{\ListeNombreAPlacer[##2,1]}{##1}{##1}}; }% - }% + } \fi% + % on trace les flèches + \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}% + \ifboolKV[ClesTableaux]{FlechesH}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=30,in=150] (1.5-|\fpeval{0.5+##1}) to node[above, midway]{\small$\times\num{10}$}(1.5-|\fpeval{1.5+##1});% + }% + }{}% + \ifboolKV[ClesTableaux]{FlechesB}{% + \xintFor* ##1 in {\xintSeq{1}{6}}\do{% + \tikz\draw[gray,->,>=latex,out=-150,in=-30] (\fpeval{3+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{1.5+##1}) to node[below,midway]{\small$\div\num{10}$}(\fpeval{3+\useKV[ClesTableaux]{NbLignes}+0.5}-|\fpeval{0.5+##1});% + }% + }{}% + \useKV[ClesTableaux]{CodeAfter}% \end{NiceTabular}% \]% - \Conversion{10}% }{}% - } }% - -\newcommand\Conversion[1]{% - \ifboolKV[ClesTableaux]{Fleches}{\setKV[ClesTableaux]{FlechesH,FlechesB}}{}% - \ifboolKV[ClesTableaux]{FlechesH}{% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (A) to node[above, midway]{\small$\times\num{#1}$}(B);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (B) to node[above, midway]{\small$\times\num{#1}$}(C);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (C) to node[above, midway]{\small$\times\num{#1}$}(D);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (D) to node[above, midway]{\small$\times\num{#1}$}(E);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (E) to node[above, midway]{\small$\times\num{#1}$}(F);}% - \ifboolKV[ClesTableaux]{Litre}{}{\tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=30,in=150] (F) to node[above, midway]{\small$\times\num{#1}$}(G);}% - }% - }{}% - \ifboolKV[ClesTableaux]{FlechesB}{% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (A1) to node[below, midway]{\small$\div\num{#1}$}(B1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (B1) to node[below, midway]{\small$\div\num{#1}$}(C1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (C1) to node[below, midway]{\small$\div\num{#1}$}(D1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (D1) to node[below, midway]{\small$\div\num{#1}$}(E1);}% - \tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (E1) to node[below, midway]{\small$\div\num{#1}$}(F1);}% - \ifboolKV[ClesTableaux]{Litre}{}{\tikz[remember picture, overlay]{\draw[gray,->,>=latex,out=-150,in=-30] (F1) to node[below, midway]{\small$\div\num{#1}$}(G1);}}% - }{}% }% \newcommand\PfCTableauIncline{% @@ -21201,8 +21926,8 @@ Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0%Grille est dis \tikz\draw[out=215,in=-90,-stealth,gray,transform canvas={yshift=-2mm}] (9-|4.5) to node[midway,left]{\footnotesize$\div{\PfCCoefConversion}$}(7-|3.5); \tikz\draw[out=215,in=-90,-stealth,gray,transform canvas={yshift=-2mm}] (7-|3.5) to node[midway,left]{\footnotesize$\div{\PfCCoefConversion}$}(5-|2.5); \tikz\draw[out=215,in=-90,-stealth,gray,transform canvas={yshift=-2mm}] (5-|2.5) to node[midway,left]{\footnotesize$\div{\PfCCoefConversion}$}(3-|1.5); -\end{NiceTabular} -} +\end{NiceTabular}% +}% %%% % Cards diff --git a/macros/latex/contrib/profcollege/metapost/PfC-Calculatriceold.mp b/macros/latex/contrib/profcollege/metapost/PfC-Calculatriceold.mp deleted file mode 100644 index 0140e24b4d..0000000000 --- a/macros/latex/contrib/profcollege/metapost/PfC-Calculatriceold.mp +++ /dev/null @@ -1,195 +0,0 @@ -prologues:=3; - -path carre[]; - -u:=0.5mm; - -vardef BlocAffichage= - for k=0 upto 34: - carre[k]:=(unitsquare scaled u) shifted(u*(k mod 5,5-(k div 5))); - endfor; -enddef; - -vardef Affichage(expr decomp)= - save $; - picture $; - drawoptions(withpen pensquare scaled0.1); - $=image(% - for k=0 upto 34: - if (substring(k,k+1) of decomp)="1": - fill carre[k]; - fi; - endfor; - ); - drawoptions(); - $ -enddef; - -nblignes:=0; - -boolean print; -print:=false; - -color CouleurEcran; -CouleurEcran=(107/255,148/255,107/255); - -boolean Math; -Math=true; - -decahoriz:=0; - -vardef Test(expr cptk,cptnt)= - pair decalage; - if nblignes mod 2=0: - decalage:=u*((20-length(cptnt)+cptk)*6,-8*(nblignes-1)); - else: - decalage:=u*(decahoriz,-8*(nblignes-1)); - decahoriz:=decahoriz+6; - fi; - if substring(cptk,cptk+1) of cptnt="A":draw Affichage("01110100011000110001111111000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="B":draw Affichage("11110100011000111110100011000111110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="C":draw Affichage("01110100011000010000100001000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="D":draw Affichage("11100100101000110001100011001011100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="E":draw Affichage("11111100001000011111100001000011111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="F":draw Affichage("11111100001000011111100001000010000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="G":draw Affichage("01110100011000010111100011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="H":draw Affichage("10001100011000111111100011000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="I":draw Affichage("01110001000010000100001000010001110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="J":draw Affichage("00111000100001000010000101001001100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="K":draw Affichage("10001100101010011000101001001010001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="L":draw Affichage("10000100001000010000100001000011111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="M":draw Affichage("10001110111010110101100011000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="N":draw Affichage("10001100011100110101100111000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="O":draw Affichage("01110100011000110001100011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="P":draw Affichage("11110100011000111110100001000010000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="Q":draw Affichage("01110100011000110001101011001001101") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="R":draw Affichage("11110100011000111110101001001010001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="S":draw Affichage("01111100001000001110000010000111110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="T":draw Affichage("11111001000010000100001000010000100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="U":draw Affichage("10001100011000110001100011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="V":draw Affichage("10001100011000110001100010101000100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="W":draw Affichage("10101101011010110101101011010101010") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="X":draw Affichage("10001100010101000100010101000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="Y":draw Affichage("10001100011000101010001000010000100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="Z":draw Affichage("11111000010001000100010001000011111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="a":draw Affichage("00000000000111100001011111000101111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="b":draw Affichage("10000100001011011001100011000111110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="c":draw Affichage("00000000000111010000100001000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="d":draw Affichage("00001000010110110011100011000101111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="e":if Math: - draw Affichage("00000000000000000001101000100010100") shifted(decalage); - decalage:=u*(decahoriz-1,-8*(nblignes-1)); - draw Affichage("00000000001001010101101011010110010") shifted(decalage); - decahoriz:=decahoriz+6; - else: - draw Affichage("00000000000111010001111111000001110") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="@":draw Affichage("00010001000111010001111111000001110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="f":draw Affichage("00110010010100011100010000100001000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="g":draw Affichage("00000011111000110001011110000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="h":draw Affichage("10000100001011011001100011000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="i":draw Affichage("00100000000110000100001000010001110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="j":if Math=true: - draw Affichage("00011000011110100001000000000000000") shifted(decalage); - else: - draw Affichage("00010000000011000010000101001001100") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="k":if Math=true: - draw Affichage("11100001000100011100000000000000000") shifted(decalage); - else: - draw Affichage("10000100001001010100110001010010010") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="l":if Math=true: - draw Affichage("11100010000010011100000000000000000") shifted(decalage); - else: - draw Affichage("01100001000010000100001000010001110") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="m":draw Affichage("00000000001101010101101011000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="n":draw Affichage("00000000001011011001100011000110001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="o":draw Affichage("00000000000111010001100011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="p":draw Affichage("00000000001111010001111101000010000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="q":if Math=true: - draw Affichage("00000000001111101010010100101010001") shifted(decalage); - else: - draw Affichage("00000000000110110011011110000100001") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="r":draw Affichage("00000000001011011001100001000010000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="s":draw Affichage("00000000000111010000011100000111110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="t":draw Affichage("01000010001110001000010000100100110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="u":draw Affichage("00000000001000110001100011001101101") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="v":if Math=true: - draw Affichage("00111001000010000100101000110000100") shifted(decalage); - else: - draw Affichage("00000000001000110001100010111000100") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="w":draw Affichage("00000000001010110101101011010101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="x":draw Affichage("00000000001000101010001000101010001") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="y":draw Affichage("00000000001000110001011110000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="z":draw Affichage("00000000001111100010001000100011111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="0":draw Affichage("01110100011001110101110011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="1":draw Affichage("00100011000010000100001000010001110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="2":draw Affichage("01110100010000100010001000100011111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="3":draw Affichage("11111000100010000010000011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="4":draw Affichage("00010001100101010010111110001000010") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="5":draw Affichage("11111100001111000001000011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="6":draw Affichage("00110010001000011110100011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="7":draw Affichage("11111000010001000100010000100001000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="8":draw Affichage("01110100011000101110100011000101110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="9":draw Affichage("01110100011000101111000010001001100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="!":draw Affichage("00100001000010000100000000000000100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="'":draw Affichage("01100001000100000000000000000000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="(":draw Affichage("00010001000100001000010000010000010") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt=")":draw Affichage("01000001000001000010000100010001000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="*":draw Affichage("00000001001010101110101010010000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="+":draw Affichage("00000001000010011111001000010000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt=",":draw Affichage("00000000000000000000011000010001000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="-":draw Affichage("00000000000000011111000000000000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt=".":draw Affichage("00000000000000000000000000110001100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="/":draw Affichage("00000000010001000100010001000000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt=":":if Math=true: - draw Affichage("00000000000000000000000000000000000") shifted(decalage); - else: - draw Affichage("00000011000110000000011000110000000") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt=";":if Math=true: - draw Affichage("00000001000000011111000000010000000") shifted(decalage); - else: - draw Affichage("00000011000110000000011000010001000") shifted(decalage); - fi; - elseif substring(cptk,cptk+1) of cptnt="<":draw Affichage("00010001000100010000010000010000010") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="=":draw Affichage("00000000001111100000111110000000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt=">":draw Affichage("10000010000010000010001000100010000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="?":draw Affichage("01110100010000100010001000000000100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="[":draw Affichage("01110010000100001000010000100001110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="]":draw Affichage("01110000100001000010000100001001110") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="`":draw Affichage("01000001000001000000000000000000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="|":draw Affichage("00100001000010000100001000010000100") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt=" ":draw Affichage("00000100010101000100010101000100000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="&":draw Affichage("00000100001100011100110001000000000") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="$":draw Affichage("00000000000000100001000010000111111") shifted(decalage); - elseif substring(cptk,cptk+1) of cptnt="^":draw Affichage("00100010101000100000000000000000000") shifted(decalage); - fi; -enddef; - -vardef LCD(text nt)(text rep)= - decahoriz:=0; - nblignes:=nblignes+1; - path Ecran; - Ecran:=(u*(0,-1)--u*(120,-1)--u*(120,7)--u*(0,7)--cycle) shifted(u*(0,-8*(nblignes-1))); - fill Ecran withcolor if print=true:0.8white else:CouleurEcran fi; - draw Ecran withcolor if print=true:0.8white else:CouleurEcran fi; - for k=0 upto length(nt)-1: - BlocAffichage; - Test(k,nt); - endfor; - nblignes:=nblignes+1; - Ecran:=(u*(0,-1)--u*(120,-1)--u*(120,7)--u*(0,7)--cycle) shifted(u*(0,-8*(nblignes-1))); - fill Ecran withcolor if print=true:0.8white else:CouleurEcran fi; - draw Ecran withcolor if print=true:0.8white else:CouleurEcran fi; - for k=0 upto length(rep)-1: - BlocAffichage; - Test(k,rep); - endfor; -enddef; - -endinput; diff --git a/macros/latex/contrib/profcollege/metapost/PfCArithmetiquePDF.mp b/macros/latex/contrib/profcollege/metapost/PfCArithmetiquePDF.mp new file mode 100644 index 0000000000..8772c93b49 --- /dev/null +++ b/macros/latex/contrib/profcollege/metapost/PfCArithmetiquePDF.mp @@ -0,0 +1,237 @@ +% Fichier regroupant les macros pour les schémas des nombres premiers + +numeric retenirnb[]; + +vardef Estcepremier(expr NBa)= + boolean $; + c:=2; + departa:=NBa; + test:=1; + $=true; + if departa=1: + $:=false; + else: + forever: + if (departa mod c)=0: + departa:=departa div c; + test:=test+1; + else: + c:=c+1; + fi; + exitif departa=1; + endfor; + fi; + if test=2: + $:=true + else: + $:=false; + fi; + $ +enddef; + +vardef PremierSimple(expr NB)= + b:=2; + depart:=NB; + if Estcepremier(depart)=false: + forever: + if (depart mod b)=0: + Ancre[k+1]-Ancre[k]=(-decalage*0.5,-decalage); + Ancre[k+2]-Ancre[k+1]=(decalage,0); + depart:=depart div b; + retenirnb[k+1]=b; + retenirnb[k+2]=depart; + label(LATEX("\num{"&decimal(b)&"}"),Ancre[k+1]); + label(LATEX("\num{"&decimal(depart)&"}"),Ancre[k+2]); + draw 1/5[Ancre[k],Ancre[k+1]]--4/5[Ancre[k],Ancre[k+1]]; + draw 1/5[Ancre[k],Ancre[k+2]]--4/5[Ancre[k],Ancre[k+2]]; + k:=k+2; + racine:=depart; + depart:=1; + else: + b:=b+1; + fi; + exitif depart=1; + endfor; + else: + racine:=1; + fi; +enddef; + +vardef PremierSimplePdf(expr NB)= + b:=2; + depart:=NB; + if Estcepremier(depart)=false: + forever: + if (depart mod b)=0: + Ancre[k+1]-Ancre[k]=(-decalage*0.5,-decalage); + Ancre[k+2]-Ancre[k+1]=(decalage,0); + depart:=depart div b; + retenirnb[k+1]=b; + retenirnb[k+2]=depart; + label(LATEX("\num{"&decimal(b)&"}"),Ancre[k+1]); + label(LATEX("\num{"&decimal(depart)&"}"),Ancre[k+2]); + draw 1/5[Ancre[k],Ancre[k+1]]--4/5[Ancre[k],Ancre[k+1]]; + draw 1/5[Ancre[k],Ancre[k+2]]--4/5[Ancre[k],Ancre[k+2]]; + k:=k+2; + racine:=depart; + depart:=1; + else: + b:=b+1; + fi; + exitif depart=1; + endfor; + else: + racine:=1; + fi; +enddef; + +vardef PremierSimpleArbre(expr NB)= + b:=2; + depart:=NB; + if Estcepremier(depart)=false: + forever: + if (depart mod b)=0: + Ancre[k+1]-Ancre[k]=(-decalage*0.5,-decalage); + Ancre[k+2]-Ancre[k+1]=(decalage,0); + depart:=depart div b; + retenirnb[k+1]=b; + retenirnb[k+2]=depart; + draw Branche(Ancre[k],Ancre[k+1]); + draw Branche(Ancre[k],Ancre[k+2]); + k:=k+2; + racine:=depart; + depart:=1; + else: + b:=b+1; + fi; + exitif depart=1; + endfor; + else: + racine:=1; + fi; +enddef; + +vardef NbEtape(expr nb)= + b:=2; + depart:=nb; + etape:=0; + Stock[0][0]=depart; + forever: + if (depart mod b)=0: + etape:=etape+1; + if etape=1: + Stock[etape][0]=b; + Stock[etape][etape]:=depart div b; + else: + for k=0 upto etape-2: + Stock[etape][k]:=Stock[etape-1][k]; + endfor; + Stock[etape][etape-1]:=b; + Stock[etape][etape]:=depart div b; + fi; + depart:=depart div b; + else: + b:=b+1; + fi; + exitif depart=1; + endfor; + etape +enddef; + +vardef Positions(expr Step)= + for k=0 upto (Step-1): + for l=0 upto k: + N[k][l]=(-k*dx+(l+k*.5)*dx,-k*dy); + label(LATEX("\num{"&decimal(Stock[k][l])&"}"),N[k][l]); + endfor; + for l=0 upto k-1: + label(LATEX("$\times$"),1/2[N[k][l],N[k][l+1]]); + endfor; + endfor; + for k=0 upto (Step-1): + for l=0 upto (k-1): + draw 1/5[N[k][l],N[k-1][l]]--4/5[N[k][l],N[k-1][l]]; + endfor; + if k>0: + draw 1/5[N[k][k],N[k-1][k-1]]--4/5[N[k][k],N[k-1][k-1]]; + fi; + endfor; +enddef; + +vardef PositionsPdf(expr Step)= + for k=0 upto (Step-1): + for l=0 upto k: + N[k][l]=(-k*dx+(l+k*.5)*dx,-k*dy); + label(LATEX("\num{"&decimal(Stock[k][l])&"}"),N[k][l]); + endfor; + for l=0 upto k-1: + label(LATEX("$\times$"),1/2[N[k][l],N[k][l+1]]); + endfor; + endfor; + for k=0 upto (Step-1): + for l=0 upto (k-1): + draw 1/5[N[k][l],N[k-1][l]]--4/5[N[k][l],N[k-1][l]]; + endfor; + if k>0: + draw 1/5[N[k][k],N[k-1][k-1]]--4/5[N[k][k],N[k-1][k-1]]; + fi; + endfor; +enddef; + +vardef PositionsVide(expr Step)= + for k=0 upto (Step-1): + for l=0 upto k: + N[k][l]=(-k*dx+(l+k*.5)*dx,-k*dy); + endfor; + for l=0 upto k-1: + label(LATEX("$\times$"),1/2[N[k][l],N[k][l+1]]); + endfor; + endfor; + for k=0 upto (Step-1): + for l=0 upto (k-1): + draw 1/5[N[k][l],N[k-1][l]]--4/5[N[k][l],N[k-1][l]]; + endfor; + if k>0: + draw 1/5[N[k][k],N[k-1][k-1]]--4/5[N[k][k],N[k-1][k-1]]; + fi; + endfor; + label(LATEX("\num{"&decimal(Stock[0][0])&"}"),N[0][0]); +enddef; + +vardef PositionsVidePdf(expr Step)= + for k=0 upto (Step-1): + for l=0 upto k: + N[k][l]=(-k*dx+(l+k*.5)*dx,-k*dy); + endfor; + for l=0 upto k-1: + label(LATEX("$\times$"),1/2[N[k][l],N[k][l+1]]); + endfor; + endfor; + for k=0 upto (Step-1): + for l=0 upto (k-1): + draw 1/5[N[k][l],N[k-1][l]]--4/5[N[k][l],N[k-1][l]]; + endfor; + if k>0: + draw 1/5[N[k][k],N[k-1][k-1]]--4/5[N[k][k],N[k-1][k-1]]; + fi; + endfor; + label(LATEX("\num{"&decimal(Stock[0][0])&"}"),N[0][0]); +enddef; + +vardef Branche(expr nbd,nba)= + save $; + picture $; + pair UnitVector; + numeric AngleVector; + UnitVector=unitvector(nba-nbd) rotated 90; + AngleVector=angle(nba-nbd)+(-10+uniformdeviate(20)); + path branche; + branche=(nbd+UnitVector){dir AngleVector}..(nba+UnitVector)--reverse((nbd-UnitVector){dir AngleVector}..(nba-UnitVector))--cycle; + $=image( + fill branche withcolor gris; + draw branche; + ); + $ +enddef; + +endinput; diff --git a/macros/latex/contrib/profcollege/metapost/PfCLaTeX.mp b/macros/latex/contrib/profcollege/metapost/PfCLaTeX.mp index abfe21bc10..76bd273294 100644 --- a/macros/latex/contrib/profcollege/metapost/PfCLaTeX.mp +++ b/macros/latex/contrib/profcollege/metapost/PfCLaTeX.mp @@ -1,4 +1,23 @@ vardef LATEX primary s = + write "verbatimtex" to "mptextmp.mp"; + write "%&latex" to "mptextmp.mp"; + write "\documentclass[]{article}" to "mptextmp.mp"; + write "\usepackage{mathtools,amssymb}" to "mptextmp.mp"; + write "\usepackage{siunitx}" to "mptextmp.mp"; + write "\sisetup{locale=FR,mode = match, propagate-math-font = true,reset-math-version = false, reset-text-family = false,reset-text-series = false, reset-text-shape = false,text-family-to-math = true, text-series-to-math = true, output-decimal-marker={,},group-minimum-digits=4}" to "mptextmp.mp"; + write "\usepackage[utf8]{inputenc}" to "mptextmp.mp"; + write "\usepackage[T1]{fontenc}" to "mptextmp.mp"; + write "\usepackage{fourier}" to "mptextmp.mp"; + write "\usepackage[french]{babel}" to "mptextmp.mp"; + write "\begin{document}" to "mptextmp.mp"; + %write "\UseRawInputEncoding" to "mptextmp.mp"; + write "etex" to "mptextmp.mp"; + write "btex "&s&" etex" to "mptextmp.mp"; + write EOF to "mptextmp.mp"; + scantokens "input mptextmp" +enddef; + +vardef LATEXProf primary s = write "verbatimtex" to "mptextmp.mp"; write "%&latex" to "mptextmp.mp"; write "\documentclass[]{article}" to "mptextmp.mp"; @@ -8,7 +27,7 @@ vardef LATEX primary s = write "\usepackage{fourier}" to "mptextmp.mp"; write "\usepackage[french]{babel}" to "mptextmp.mp"; write "\begin{document}" to "mptextmp.mp"; - write "\UseRawInputEncoding" to "mptextmp.mp"; + %write "\UseRawInputEncoding" to "mptextmp.mp"; write "etex" to "mptextmp.mp"; write "btex "&s&" etex" to "mptextmp.mp"; write EOF to "mptextmp.mp"; -- cgit v1.2.3