From 61bc2520e547446bddedc290572684496c9347a0 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sat, 30 Sep 2023 03:03:35 +0000 Subject: CTAN sync 202309300303 --- .../latex/contrib/proflycee/doc/ProfLycee-doc.pdf | Bin 1121300 -> 1127747 bytes .../latex/contrib/proflycee/doc/ProfLycee-doc.tex | 78 +++++++++++++++++++-- macros/latex/contrib/proflycee/tex/ProfLycee.sty | 3 +- .../proflycee/tex/proflycee-tools-graphiques.tex | 71 ++++++++++++++++++- 4 files changed, 145 insertions(+), 7 deletions(-) (limited to 'macros/latex/contrib/proflycee') diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf index 49a43f9f27..0197baf5f8 100644 Binary files a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf and b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf differ diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex index 86f650b8f3..6535944623 100644 --- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex +++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex @@ -5,8 +5,8 @@ % arara: lualatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)') \documentclass[a4paper,french,11pt]{article} -\def\PLversion{2.7.6} -\def\PLdate{27 septembre 2023} +\def\PLversion{2.7.7} +\def\PLdate{29 septembre 2023} \usepackage{amsfonts} \usepackage{ProfLycee} \useproflyclib{piton,minted,pythontex,ecritures} @@ -144,12 +144,12 @@ keywordstyle={\color{violet}},% classoffset=2,% alsoletter={-},% - morekeywords={\ResolutionApprochee,\SolutionTVI,\CalculTermeRecurrence,\ToileRecurrence,\SolutionSeuil,\IntegraleApprochee,\GrilleTikz,\AxesTikz,\AxexTikz,\AxeyTikz,\FenetreTikz,\FenetreSimpleTikz,\DeclareFonctionTikz,\CourbeTikz,\OrigineTikz,\SplineTikz,\TangenteTikz,\MiniSchemaSignes,\MiniSchemaSignesTkzTab,\IntegraleApprocheeTikz,\CartoucheCapytale,\PaveTikz,\TetraedreTikz,\CercleTrigo,\AffPoint,\AffVecteur,\TrouveEqCartPlan,\TrouveEqParamDroite,\TrouveEqCartDroite,\TrouveNorme,\TrouveDistancePtPlan,\EquationReduite,\CalculsRegLin,\PointsRegLin,\NuagePointsTikz,\PointMoyenTikz,\BoiteMoustaches,\BoiteMoustachesAxe,\Histogramme,\CalcBinomP,\CalcBinomC,\BinomP,\BinomC,\CalcPoissP,\CalcPoissC,\PoissonP,\PoissonC,\CalcGeomP,\CalcGeomC,\GeomP,\GeomC,\CalcHypergeomP,\CalcHypergeomP,\HypergeomP,\HypergeomC,\CalcNormC,\NormaleC,\CalcExpoC,\ExpoC,\ArbreProbasTikz,\LoiNormaleGraphe,\LoiExpoGraphe,\NbAlea,\VarNbAlea,\TirageAleatoireEntiers,\Arrangement,\Combinaison,\ConversionDecBin,\ConversionBinHex,\ConversionVersDec,\ConversionBaseDix,\ConversionDepuisBaseDix,\PresentationPGCD,\EquationDiophantienne,\ConversionFraction,\SimplificationRacine,\EcritureEnsemble,\EcritureTrinome,\MesurePrincipale,\LigneTrigo,\SudoMaths,\FonctionRepartTikz,\IntervalleFF,\IntervalleFO,\IntervalleOF,\IntervalleOO,\RepereOij,\RepereOuv,\RepereOijk,\ReperePlan,\RepereEspace,\jfalg,\jfexp,\LoiNormale,\LoiBinomiale,\LoiPoisson,\LoiExpo,\LoiUnif,\Courbe,\Suite,\CoordPtPl,\CoordPtEsp,\CoordVecPl,\CoordVecEsp,\MatDeux,\Vecteur,\Esper,\Varianc,\EcType,\dx,\Integrale,\Modulo,\Arrondi,\CodePythonLstFichier,\CodePythonLstFichierAlt,\colorlet + morekeywords={\ResolutionApprochee,\SolutionTVI,\CalculTermeRecurrence,\ToileRecurrence,\SolutionSeuil,\IntegraleApprochee,\GrilleTikz,\AxesTikz,\AxexTikz,\AxeyTikz,\FenetreTikz,\FenetreSimpleTikz,\DeclareFonctionTikz,\CourbeTikz,\OrigineTikz,\SplineTikz,\TangenteTikz,\MiniSchemaSignes,\MiniSchemaSignesTkzTab,\IntegraleApprocheeTikz,\CartoucheCapytale,\PaveTikz,\TetraedreTikz,\CercleTrigo,\AffPoint,\AffVecteur,\TrouveEqCartPlan,\TrouveEqParamDroite,\TrouveEqCartDroite,\TrouveNorme,\TrouveDistancePtPlan,\EquationReduite,\CalculsRegLin,\PointsRegLin,\NuagePointsTikz,\PointMoyenTikz,\BoiteMoustaches,\BoiteMoustachesAxe,\Histogramme,\CalcBinomP,\CalcBinomC,\BinomP,\BinomC,\CalcPoissP,\CalcPoissC,\PoissonP,\PoissonC,\CalcGeomP,\CalcGeomC,\GeomP,\GeomC,\CalcHypergeomP,\CalcHypergeomP,\HypergeomP,\HypergeomC,\CalcNormC,\NormaleC,\CalcExpoC,\ExpoC,\ArbreProbasTikz,\LoiNormaleGraphe,\LoiExpoGraphe,\NbAlea,\VarNbAlea,\TirageAleatoireEntiers,\Arrangement,\Combinaison,\ConversionDecBin,\ConversionBinHex,\ConversionVersDec,\ConversionBaseDix,\ConversionDepuisBaseDix,\PresentationPGCD,\EquationDiophantienne,\ConversionFraction,\SimplificationRacine,\EcritureEnsemble,\EcritureTrinome,\MesurePrincipale,\LigneTrigo,\SudoMaths,\FonctionRepartTikz,\IntervalleFF,\IntervalleFO,\IntervalleOF,\IntervalleOO,\RepereOij,\RepereOuv,\RepereOijk,\ReperePlan,\RepereEspace,\jfalg,\jfexp,\LoiNormale,\LoiBinomiale,\LoiPoisson,\LoiExpo,\LoiUnif,\Courbe,\Suite,\CoordPtPl,\CoordPtEsp,\CoordVecPl,\CoordVecEsp,\MatDeux,\Vecteur,\Esper,\Varianc,\EcType,\dx,\Integrale,\Modulo,\Arrondi,\CodePythonLstFichier,\CodePythonLstFichierAlt,\colorlet,\PtsDiscontinuite },% keywordstyle={\color{CouleurVertForet}},% classoffset=3,% alsoletter={-},% - morekeywords={minimum-decimal-digits,scale,nonamssymb,build,Precision,Intervalle,Variable,NomFct,NomSol,va,vb,Stretch,Balayage,Calculatrice,Majuscule,No,UNo,NomSuite,Simple,Exact,Conclusion,Sens,ResultatBrut,Methode,NbSubDiv,AffFormule,Expr,Signe,Variables,Affp,Affs,Epaisseur,Police,ElargirOx,ElargirOy,Labelx,Labely,AffLabel,PosLabelx,PosLabely,EchelleFleche,TypeFleche,PosGrad,HautGrad,AffGrad,AffOrigine,Annee,Trigo,Dfrac,Style,Coeffs,AffPoints,TaillePoints,xl,xr,Code,Racines,Largeur,Hauteur,Cadre,Fct,Nom,PosLabel,DecalLabel,TailleLabel,AffTermes,RemplirbOpacite,CouleurRemplissage,Lignes,Gobble,Alignement,Filigrane,BarreTitre,CouleurNombres,Centre,EspacementVertical,Label,Titre,Profondeur,Angle,Fuite,Sommets,Math,Aff,Plein,Cube,Alpha,Beta,Rayon,Marge,TailleValeurs,TailleAngles,CouleurFond,Decal,MoinsPi,AffAngles,AffTraits,AffValeurs,Equationcos,Equationsin,sin,cos,AffTraitsEq,CouleurSol,OptionCoeffs,SimplifCoeffs,Facteur,OptionCoeffs,Reel,Oppose,Rgras,SimplifCoeffs,VectDirecteur,NomCoeffa,NomCoeffb,NomCoeffr,NomCoeffrd,NomXmin,NomXmax,Ox,Oy,xg,yg,AffNom,Elevation,Moyenne,AffMoyenne,Pointilles,Valeurs,Elargir,Min,Max,DebutOx,FinOx,ListeCouleurs,ElargirX,ElargirY,LabelX,LabelY,GradX,GradY,AffEffectifs,PosEffectifs,Opacite,AffBornes,GrilleV,PoliceAxes,PoliceEffectifs,EpaisseurTraits,Unite,EspaceNiveau,EspaceFeuille,Type,PoliceProbas,InclineProbas,Fleche,StyleTrait,EpaisseurTrait,CouleurAire,CouleurCourbe,AfficheM,AfficheCadre,ValMin,ValMax,NbVal,Sep,Tri,Repetition,Notation,NotationAncien,Formule,AffBase,Details,BaseDep,Zeros,DecalH,DecalV,Noeud,Rect,CouleurRes,DecalRect,Rectangle,CouleurResultat,AfficheConclusion,AfficheDelimiteurs,Lettre,Inconnues,Entier,Cadres,PresPGCD,Mathpunct,Option,Alea,Anegatif,Crochets,Brut,Etapes,Epaisseurg,CouleurCase,CouleurTexte,NbSubCol,NbLig,NbCol,Legendes,PoliceLeg,ListeLegV,ListeLegH,DecalLegende,Couleur,Uno,Grille,ExtraGrilleY,PosLegende,Pointilles,Extremite,Frac,PremLigne},% + morekeywords={minimum-decimal-digits,scale,nonamssymb,build,Precision,Intervalle,Variable,NomFct,NomSol,va,vb,Stretch,Balayage,Calculatrice,Majuscule,No,UNo,NomSuite,Simple,Exact,Conclusion,Sens,ResultatBrut,Methode,NbSubDiv,AffFormule,Expr,Signe,Variables,Affp,Affs,Epaisseur,Police,ElargirOx,ElargirOy,Labelx,Labely,AffLabel,PosLabelx,PosLabely,EchelleFleche,TypeFleche,PosGrad,HautGrad,AffGrad,AffOrigine,Annee,Trigo,Dfrac,Style,Coeffs,AffPoints,TaillePoints,xl,xr,Code,Racines,Largeur,Hauteur,Cadre,Fct,Nom,PosLabel,DecalLabel,TailleLabel,AffTermes,RemplirbOpacite,CouleurRemplissage,Lignes,Gobble,Alignement,Filigrane,BarreTitre,CouleurNombres,Centre,EspacementVertical,Label,Titre,Profondeur,Angle,Fuite,Sommets,Math,Aff,Plein,Cube,Alpha,Beta,Rayon,Marge,TailleValeurs,TailleAngles,CouleurFond,Decal,MoinsPi,AffAngles,AffTraits,AffValeurs,Equationcos,Equationsin,sin,cos,AffTraitsEq,CouleurSol,OptionCoeffs,SimplifCoeffs,Facteur,OptionCoeffs,Reel,Oppose,Rgras,SimplifCoeffs,VectDirecteur,NomCoeffa,NomCoeffb,NomCoeffr,NomCoeffrd,NomXmin,NomXmax,Ox,Oy,xg,yg,AffNom,Elevation,Moyenne,AffMoyenne,Pointilles,Valeurs,Elargir,Min,Max,DebutOx,FinOx,ListeCouleurs,ElargirX,ElargirY,LabelX,LabelY,GradX,GradY,AffEffectifs,PosEffectifs,Opacite,AffBornes,GrilleV,PoliceAxes,PoliceEffectifs,EpaisseurTraits,Unite,EspaceNiveau,EspaceFeuille,Type,PoliceProbas,InclineProbas,Fleche,StyleTrait,EpaisseurTrait,CouleurAire,CouleurCourbe,AfficheM,AfficheCadre,ValMin,ValMax,NbVal,Sep,Tri,Repetition,Notation,NotationAncien,Formule,AffBase,Details,BaseDep,Zeros,DecalH,DecalV,Noeud,Rect,CouleurRes,DecalRect,Rectangle,CouleurResultat,AfficheConclusion,AfficheDelimiteurs,Lettre,Inconnues,Entier,Cadres,PresPGCD,Mathpunct,Option,Alea,Anegatif,Crochets,Brut,Etapes,Epaisseurg,CouleurCase,CouleurTexte,NbSubCol,NbLig,NbCol,Legendes,PoliceLeg,ListeLegV,ListeLegH,DecalLegende,Couleur,Uno,Grille,ExtraGrilleY,PosLegende,Pointilles,Extremite,Frac,PremLigne,Type,Pos,Echelle},% keywordstyle={\color{orange!75!black}} } } @@ -683,6 +683,7 @@ Elles sont présentées de manière \textit{succincte}, mais elles sont présent %courbe d'interpolation, tangente, dans un environnement tikz \SplineTikz[options]{liste} \TangenteTikz[options]{liste} +\PtsDiscontinuite[options]{liste} %schémas pour le signe affine/trinôme, dans un environnement tikz \MiniSchemaSignes(*)[clés] @@ -2281,6 +2282,71 @@ On obtient le résultat suivant (avec les éléments rajoutés utiles à la comp \newpage +\section{Points de discontinuité}\label{discont} + +\subsection{Idée} + +\begin{tipblock} +\cmaj{2.7.7} L'idée est de présenter, en marge de la création de \textit{splines cubiques}, des points de discontinuité. + +Pour des raisons \textit{internes} au code, cette possibilité n'est pas offerte (encore ?) directement dans la commande de création des splines. +\end{tipblock} + +\begin{PresCodeTexPL}{listing only} +%dans un environnement tikz +\PtsDiscontinuite +\end{PresCodeTexPL} + +\subsection{Commandes} + +\begin{PresCodeTexPL}{listing only} +\begin{tikzpicture}[] + \PtsDiscontinuite{liste}[clés] +\end{tikzpicture} +\end{PresCodeTexPL} + +\begin{cautionblock} +Le premier argument, \textit{optionnel} et entre \textsf{[...]}, contient les \Cle{Clés} suivantes : + +\begin{itemize} + \item la clé \Cle{Couleur} qui permet de définir la couleur du symbole ;\hfill{}défaut \Cle{red} + \item la clé \Cle{Epaisseur} qui est relative à l'épaisseur du symbole ;\hfill{}défaut \Cle{1.25pt} + \item la clé \Cle{Pos} pour choisir la position de la discontinuité (parmi \Cle{G/D}) ;\hfill{}défaut \Cle{D} + \item la clé \Cle{Echelle} pour modifier l'échelle du symbole ;\hfill{}défaut \Cle{1} + \item la clé \Cle{Type} pour choisir le type de symbole, parmi \Cle{par/cro/rond/demirond}.\hfill{}défaut \Cle{par} +\end{itemize} + +Le second argument, obligatoire et entre \textsf{\{...\}} permet de préciser (comme pour les commandes des paragraphes précédents) la liste des points en lesquels le symbole de discontinuité sera positionné, sous la forme \verb|x1/y1/d1 § x2/y2/d2 § ...| avec les points \pverb|(xi;yi)| et \vverb|f'(xi)=di|. +\end{cautionblock} + +\subsection{Exemples} + +\begin{PresCodeTexPL}{listing only} +\begin{tikzpicture} + \draw[lightgray] (0,0) grid (10,5) ; + \SplineTikz{0/1/-1 § 4/4/0} + \PtsDiscontinuite{4/4/0} + \PtsDiscontinuite[Pos=G,Type=cro]{0/1/-1} + \SplineTikz[Couleur=blue]{5/1/1.5 § 8/4/0.5} + \PtsDiscontinuite[Couleur=blue,Type=rond]{8/4/0.5} + \PtsDiscontinuite[Couleur=blue,Pos=G,Type=demirond,Echelle=2]{5/1/1.5} +\end{tikzpicture} +\end{PresCodeTexPL} + +\begin{PresCodeTexPL}{text only} +\begin{tikzpicture} + \draw[lightgray] (0,0) grid (10,5) ; + \SplineTikz{0/1/-1 § 4/4/0} + \PtsDiscontinuite{4/4/0} + \PtsDiscontinuite[Pos=G,Type=cro]{0/1/-1} + \SplineTikz[Couleur=blue]{5/1/1.5 § 8/4/0.5} + \PtsDiscontinuite[Couleur=blue,Type=rond]{8/4/0.5} + \PtsDiscontinuite[Couleur=blue,Pos=G,Type=demirond,Echelle=2]{5/1/1.5} +\end{tikzpicture} +\end{PresCodeTexPL} + +\newpage + \section{Petits schémas pour le signe d'une fonction affine ou d'un trinôme}\label{aidesigne} \subsection{Idée} @@ -2322,7 +2388,7 @@ Comme pour les autres commandes \TikZ, l'idée est de laisser la possibilité à \smallskip -Le premier argument, \textit{optionnel} et entre \textsf{[...]}, contient les \Cle{Clés} sont disponibles pour cette commande : +Le premier argument, \textit{optionnel} et entre \textsf{[...]}, contient les \Cle{Clés} suivantes : \begin{itemize} \item la clé \Cle{Code} qui permet de définir le type d'expression (voir en-dessous) ;\hfill{}défaut \Cle{da+} @@ -7737,6 +7803,8 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0 \part{Historique} +{\small \bverb|v 2.7.7|~:~~~~Points de discontinuité pour des splines (page \pageref{discont})} + {\small \bverb|v 2.7.6|~:~~~~Amélioration dans la console d'exécution avec \textsf{piton}} {\small \bverb|v 2.7.5|~:~~~~Possibilités de numéroter les lignes des codes à une autre valeur que 1 (page \pageref{codenumlignes}) diff --git a/macros/latex/contrib/proflycee/tex/ProfLycee.sty b/macros/latex/contrib/proflycee/tex/ProfLycee.sty index eb0a8be333..2726c7fa85 100644 --- a/macros/latex/contrib/proflycee/tex/ProfLycee.sty +++ b/macros/latex/contrib/proflycee/tex/ProfLycee.sty @@ -3,7 +3,8 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ProfLycee}[2023/09/27 2.7.6 Aide pour l'utilisation de LaTeX en lycee] +\ProvidesPackage{ProfLycee}[2023/09/29 2.7.7 Aide pour l'utilisation de LaTeX en lycee] +% 2.7.7 Ajout d'une commande pour matérialiser des points de discontinuité % 2.7.6 Amélioration de la gestion de la console piton % 2.7.5 Ajout d'options pour les environnements de code (piton + listings) % 2.7.4 Ajout de commandes pour des écritures mathématiques (avec librairie ?) diff --git a/macros/latex/contrib/proflycee/tex/proflycee-tools-graphiques.tex b/macros/latex/contrib/proflycee/tex/proflycee-tools-graphiques.tex index 200461710b..009b5d0967 100644 --- a/macros/latex/contrib/proflycee/tex/proflycee-tools-graphiques.tex +++ b/macros/latex/contrib/proflycee/tex/proflycee-tools-graphiques.tex @@ -24,6 +24,74 @@ \fi } +%points de discontinuité +\defKV[ptdiscont]{% + Epaisseur=\def\discontepaisseur{#1},% + Couleur=\def\discontcouleur{#1},% + Pos=\def\discontpos{#1},% + Echelle=\def\discontechelle{#1},% + Type=\def\disconttype{#1} +} + +\setKVdefault[ptdiscont]{% + Epaisseur=1.25pt,% + Couleur=red,% + Pos=D,% + Echelle=1,% + Type=par +} + +\NewDocumentCommand\PtsDiscontinuite{ O{} m }{% + \useKVdefault[ptdiscont] + \setKV[ptdiscont]{#1}% + \setsepchar[.]{§./}% + \readlist*\SPLlisteDiscont{#2}% + \def\SPLlisteDiscontNb{\SPLlisteDiscontlen}% + \foreach \i in {1,...,\SPLlisteDiscontNb}{% + \begin{scope}[shift={(\SPLlisteDiscont[\i,1],\SPLlisteDiscont[\i,2])},rotate={atan \SPLlisteDiscont[\i,3]},scale=\discontechelle] + \IfStrEq{\disconttype}{rond}% + {% + \draw[fill=white,line width=\discontepaisseur,draw=\discontcouleur] (0,0) circle[radius=3pt] ; + }{}% + \IfStrEq{\discontpos}{D}% + {% + \IfStrEq{\disconttype}{par}% + {% + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=90,in=170] (4pt,5pt) ; + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=-90,in=-170] (4pt,-5pt) ; + }{}% + \IfStrEq{\disconttype}{demirond}% + {% + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=90,in=180] (3pt,3pt) ; + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=-90,in=180] (3pt,-3pt) ; + }{}% + \IfStrEq{\disconttype}{cro}% + {% + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) |- (4pt,5pt) ; + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) |- (4pt,-5pt) ; + }{}% + }% + {% + \IfStrEq{\disconttype}{par}% + {% + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=90,in=-10] (-4pt,5pt) ; + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=-90,in=10] (-4pt,-5pt) ; + }{}% + \IfStrEq{\disconttype}{demirond}% + {% + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=90,in=0] (-3pt,3pt) ; + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) to[out=-90,in=0] (-3pt,-3pt) ; + }{}% + \IfStrEq{\disconttype}{cro}% + {% + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) |- (-4pt,5pt) ; + \draw[line width=\discontepaisseur,\discontcouleur] (0,0) |- (-4pt,-5pt) ; + }{}% + }% + \end{scope} + }% +} + %splines en tikz avec ..controls \defKV[spline]{% Epaisseur=\def\SPLepaisseur{#1},% @@ -44,7 +112,8 @@ Style={} } -\newcommand\SplineTikz[2][]{% +\NewDocumentCommand\SplineTikz{ O{} m }{% +%\newcommand\SplineTikz[2][]{% \useKVdefault[spline] \setKV[spline]{#1}% on paramètres les nouvelles clés et on les simplifie %on lit la liste des points/nbderivés et on stocke dans \listepoints -- cgit v1.2.3