texlive[54703] Master: tkz-fct (12apr20)

commits+karl at tug.org commits+karl at tug.org
Sun Apr 12 23:33:19 CEST 2020


Revision: 54703
          http://tug.org/svn/texlive?view=revision&revision=54703
Author:   karl
Date:     2020-04-12 23:33:18 +0200 (Sun, 12 Apr 2020)
Log Message:
-----------
tkz-fct (12apr20)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/libexec/ctan2tds
    trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/tkz-fct/
    trunk/Master/texmf-dist/doc/latex/tkz-fct/README.md
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-VDW.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-area.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-asymptote.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-bac.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-compilation.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-example.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-faq.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fppgf.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-interpolation.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-label.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-liste.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-main.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-param.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-point.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-polar.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-riemann.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-symbol.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-tangent.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-why.tex
    trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct.pdf
    trunk/Master/texmf-dist/tex/latex/tkz-fct/
    trunk/Master/texmf-dist/tex/latex/tkz-fct/tkz-fct.sty
    trunk/Master/tlpkg/tlpsrc/tkz-fct.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/README.md	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,64 @@
+# tkz-fct – Tools for drawing graphs of functions
+
+Release 1.3c 2020/04/11
+
+## Description
+
+The tkz-fct package is designed to give math teachers (and students) easy access to programming graphs of functions with TikZ and gnuplot.
+
+
+## Licence
+
+The packages may be modified and distributed under the terms and
+conditions of the [LaTeX Project Public
+License](https://www.latex-project.org/lppl/), version 1.3 or greater.
+
+## Installation
+
+You can experiment with the tkz-fct package by placing all of the distribution
+ files in the directory containing your current tex file.
+
+You can also place all of the distribution files in the directory : 
+/texmf/tex/latex/tkz.
+
+## Features
+
+- needs  tkz-base, fp.sty and gnuplot;
+- automatically loads the package TikZ; 
+- compiles with utf8, pdflatex, lualatex.
+
+## How to use it
+
+To use the package tkz-fct, place the following line in the preamble of your
+ LaTeX document.
+
+\usepackage{tkz-fct}
+
+If you use the xcolor package, load that package before tkz-fct to avoid
+ package conflicts.
+
+\usepackage[usenames,dvipsnames]{xcolor}
+
+\usepackage{tkz-fct}
+
+In order to format the numbers correctly, you place the following two lines 
+
+\usepackage[your-language]{babel} 
+
+\usepackage[autolanguage]{numprint} 
+
+## Documentation
+
+Documentation for `tkz-fct`   is available on CTAN and in your TeX distribution.
+
+## History
+
+- 1.3c Correction of a bug ( incompatibility between tkz-fct and tkzexample).
+      Add compatibility between t tkz-fct and tkz-base.
+      Correction of the documentation.
+
+- 1.2c  Add compatibility   with tkz-base > 3.01.
+
+- 1.16c correction of bugs 
+          now default domain is xmin:xmax and not -5:5.  
+- 1.13 first version   
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-VDW.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-VDW.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-VDW.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,154 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\subsection{Courbes de \tkzname{Van der Waals}}
+
+\bigskip
+Soient $v$  le volume  d'une masse fluide et  $p$ sa pression. 
+$b$ et $k$ sont deux nombres réels strictement  positifs. On souhaite étudier une formule exprimant la dépendance de ces variables proposée par Van~der~Waals.
+\[
+  p(v)= \frac{-3}{v^2} + \dfrac{3k}{v-b}
+\]
+
+définie sur l'intervalle $I=\big]b~;~+\infty\big]$
+
+\subsubsection{Tableau de variations}
+\begin{center}
+  
+ \begin{tkzexample}[]  
+  \begin{tikzpicture}
+  \tkzTab%
+  { $v$      /1,%
+    $g'(v)$  /1,%
+    $g(v)$   /3%
+  }%
+  { $b$ ,%
+    $3b$ ,%
+    $+\infty$%
+  }%
+  {0,$+$,$0$,$-$,t}
+  {-/           $0$    /,%
+   +/$\dfrac{8}{27b}$  /,%
+   -/  $0$             /}%
+  \end{tikzpicture}
+\end{tkzexample}
+\end{center}
+
+
+
+\newpage
+
+\subsubsection{ Première courbe avec  \emph{b}=1} 
+ Quelques courbes pour $r\leq\ v \leq\ 6$ 
+
+  
+
+\medskip
+\begin{center}
+	\begin{tkzexample}[] 
+	 \begin{tikzpicture}[xscale=2,yscale=2.5]
+	    \tkzInit[xmin=0,xmax=6,ymax=0.5,ystep=0.1]
+	    \tkzDrawX[label=$v$]
+	    \tkzDrawY[label=$g(v)$]
+	    \tkzGrid(0,0)(6,0.5)
+	    \tkzFct[color   = red,domain =1:6]{(2*(x-1)*(x-1))/(x*x*x)}
+	    \tkzDrawTangentLine[color=blue,draw](3)  
+	    \tkzDefPointByFct(1)  
+	    \tkzText[draw, fill = brown!30](4,0.1){$g(v)=2\dfrac{(v-1)^2}{v^3}$}
+	 \end{tikzpicture} 
+	\end{tkzexample} 
+\end{center}
+
+
+\newpage 
+\subsubsection{ Deuxième courbe  \emph{b}=1/3 }   
+
+
+\medskip
+\begin{center}
+	\begin{tkzexample}[] 
+	\begin{tikzpicture}[scale=1.2]
+	  \tkzInit[xmin=0,xmax=2,xstep=0.2,ymax=1,ystep=0.1]
+	  \tkzAxeXY    
+	  \tkzGrid(0,0)(2,1)
+	  \tkzFct[color   = red,domain =1/3:2]{(2*(\x-1./3)*(\x-1./3))/(\x*\x*\x)}
+	  \tkzDrawTangentLine[draw,color=blue,kr=.5,kl=.5](1)
+	  \tkzDefPointByFct(1)
+	  \tkzText[draw,fill = brown!30](1.2,0.3)%
+	             {$g(v)=2\dfrac{\left(v-\dfrac{1}{3}\right)^2}{v^3}$}
+	\end{tikzpicture}
+	\end{tkzexample} 
+\end{center}
+
+
+\newpage 
+\subsubsection{ Troisième courbe  \emph{b}=32/27 }  
+
+
+\medskip
+\begin{center}
+	\begin{tkzexample}[]    
+	\begin{tikzpicture}[scale=1.2]
+	    \tkzInit[xmin=0,xmax=10,ymax=.35,ystep=0.05];
+	    \tkzAxeXY    
+	    \tkzGrid(0,0)(10,.35)
+	    \tkzFct[color = red,
+	            domain =1.185:10]{(2*(\x-32./27)*(\x-32./27))/(\x*\x*\x)}
+	    \tkzDrawTangentLine[draw,color=blue,kr=2,kl=2](3.555)
+	    \tkzText[draw,fill = brown!30](5,0.3)%
+	            {$g(v)=2\dfrac{\left(v-\dfrac{32}{27}\right)^2}{v^3}$}
+	\end{tikzpicture}
+	\end{tkzexample} 
+\end{center}
+
+
+
+
+ \newpage  
+\subsection{Valeurs critiques}  
+\subsubsection{Courbes de \tkzname{Van der Walls} }  
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+
+
+\begin{tkzexample}[]   
+\begin{tikzpicture}[scale=4]
+  \tkzInit[xmax=3,ymax=2];
+  \tkzAxeXY    
+  \tkzGrid(0,0)(3,2)
+  \tkzFct[color   = red,domain =1/3:3]{0.125*(3*\x-1)+0.375*(3*\x-1)/(\x*\x)}
+  \tkzDefPointByFct[draw](2) 
+  \tkzDefPointByFct[draw](3)
+  \tkzDrawTangentLine[draw,color=blue](1) 
+  \tkzFct[color   = green,domain =1/3:3]{0.125*(3*x-1)}
+  \tkzSetUpPoint[size=8,fill=orange] 
+  \tkzDefPointByFct[draw](3) 
+  \tkzDefPointByFct[draw](1/3) 
+  \tkzDefPoint(1,1){f}
+  \tkzDrawPoint(f)
+  \tkzText[draw,fill = white,text=red](1,1.5)%
+{$f(x)=\dfrac{1}{8}(3x-1)+\dfrac{3}{8}\left(\dfrac{3x-1}{x^2}\right)$}
+\tkzText[draw,fill = white,text=green](2,0.4){$g(x) = \dfrac{3x-1}{8}$}    
+\end{tikzpicture}  
+\end{tkzexample}
+
+\newpage
+\subsubsection{Courbes de \tkzname{Van der Walls} (suite)}
+
+
+\begin{tkzexample}[]
+\begin{tikzpicture}[xscale=4,yscale=1.5] 
+  \tkzInit[xmin=0,xmax=3,ymax=3,ymin=-4]
+  \tkzGrid(0,-4)(3,3)
+  \tkzAxeXY
+  \tkzClip 
+  \tkzVLine[color=red,style=dashed]{1/3}
+  \tkzFct[color=red,domain = 0.35:3]{-3/(x*x) +4/(3*x-1)}
+  \tkzFct[color=blue,domain = 0.35:3]{-3/(x*x) +27/(4*(3*x-1))}
+  \tkzFct[color=orange,domain = 0.35:3]{-3/(x*x) +8/(3*x-1)}
+  \tkzFct[color=green,domain = 0.35:3]{-3/(x*x) +7/(3*x-1)}
+  \tkzText[draw,fill = white,text=Maroon](2,-2)%
+   {$f(x)=-\dfrac{3}{x^2}+\dfrac{8\alpha}{3x-1}$ \hspace{.5cm}%
+   avec $\alpha \in%
+   \left\{\dfrac{1}{2}~;~\dfrac{27}{32}~;~\dfrac{7}{8}~;~1\right\}$}
+\end{tikzpicture} 
+\end{tkzexample}
+
+ \endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-VDW.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-area.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-area.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-area.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,218 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\section{Macros pour définir  des surfaces  }
+
+Il s'agit par exemple de représenter la partie du plan comprise entre la courbe représentative d'une fonction, l'axe des abscisses et les droites 
+ d'équation $x=a$ et $x=b$.
+
+\subsection{Représentation d'une surface \tkzcname{tkzDrawArea} ou \tkzcname{tkzArea}}  \hypertarget{tda}{} 
+
+\begin{NewMacroBox}{tkzDrawArea}{\oarg{local options}} 
+Les options sont celles de \TIKZ.
+
+\begin{tabular}{lll}
+\toprule
+options             & défaut & définition                         \\ 
+\midrule
+\TOline{domain}{-5:5}{domaine de la fonction} 
+\TOline{with}{a}{référence de la fonction}
+\TOline{color}{200}{nombre de points utilisés}
+\TOline{opacity} {no defaut}{trnsparence}
+\TOline{style}{black}{couleur de la ligne}
+\end{tabular}
+\end{NewMacroBox}
+
+\subsection{Naissance de la fonction logarithme népérien}
+
+\begin{tkzexample}[]
+\begin{tikzpicture}[scale=2]
+ \tkzInit[xmin=0,xmax=3,xstep=1,
+          ymin=-2,ymax=2,ystep=1]
+ \tkzGrid
+ \tkzAxeXY
+ \tkzFct[domain= 0.4:3]{1./x}
+ \tkzDefPointByFct(1)
+ \tkzGetPoint{A}
+ \tkzDefPointByFct(2)
+ \tkzGetPoint{B}
+ \tkzLabelPoints[above right](A,B)
+ \tkzDrawArea[color=blue!30,
+              domain = 1:2]
+ \tkzFct[domain = 0.5:3]{log(x)}
+ \tkzDrawArea[color=red!30,
+              domain = 1:2]
+ \tkzPointShowCoord(A)
+ \tkzPointShowCoord(B) 
+ \tkzDrawPoints(A,B)  
+\end{tikzpicture} 
+\end{tkzexample}
+
+\subsection{Surface simple}
+\begin{tkzexample}[]
+  \begin{tikzpicture}[scale=1.75]
+   \tkzInit[xmin=0,xmax=800,xstep=100,
+            ymin=0,ymax=2000,ystep=400]
+   \tkzGrid
+   \tkzAxeXY
+   \tkzFct[domain = 0:800]{(1./90000)*\x*\x*\x-(1./100)*\x*\x+(113./36)*\x}
+   \tkzDefPoint(450,400){a}
+   \tkzDrawPoint(a)
+   \tkzDrawArea[color=orange!50, domain =0:450]
+   \tkzDrawArea[color=orange!80, domain =450:800]
+  \end{tikzpicture}
+\end{tkzexample}
+
+%<--------------------------------------------------------------------------->
+
+\newpage
+\subsection{Surface et hachures}
+\begin{tkzexample}[]
+\begin{tikzpicture}[scale=2]
+  \tkzInit[xmin=-3,xmax=4,ymin=-2,ymax=4]
+  \tkzGrid(-3,-2)(4,4)
+  \tkzDrawXY 
+  \tkzFct[domain = -2.15:3.2]{(2+\x)*exp(-\x)}
+  \tkzDrawArea[pattern=north west lines,domain =-2:2]   
+  \tkzDrawTangentLine[draw,color=blue](0)
+  \tkzDrawTangentLine[draw,color=blue](-1)
+  \tkzDefPointByFct(2)  \tkzGetPoint{C}  
+  \tkzDefPoint(2,0){B}
+  \tkzDrawPoints(B,C)  \tkzLabelPoints[above right](B,C)
+  \tkzRep
+\end{tikzpicture}
+\end{tkzexample}
+   %<--------------------------------------------------------------------------->
+
+\newpage
+\subsection{Surface comprise entre  deux courbes \tkzcname{tkzDrawAreafg}} 
+
+\hypertarget{tdafg}{} 
+\begin{NewMacroBox}{tkzDrawAreafg}{\oarg{local options}} 
+Cette macro permet de mettre en évidence une surface délimitée par les courbes représentatives de deux fonctions. La courbe (a) doit être au-dessus de la courbe (b). 
+
+\medskip
+\begin{tabular}{lll}
+ \toprule
+ options             & défaut & explication    \\ 
+\midrule 
+\TOline{between} {a and b}{référence des deux courbes} 
+\TOline{domain= min:max}{domain=-5:5}{Les options sont celles de \TIKZ.} 
+\TOline{opacity} {0.5}{transparence}
+\bottomrule
+\end{tabular}
+
+\emph{L'option \tkzname{pattern} de \TIKZ\ peut être utile !  }
+\end{NewMacroBox}
+%<--------------------------------------------------------------------------->
+
+\subsection{Surface comprise entre deux courbes en couleur}
+Par défaut, la surface définie est comprise entre les deux premières courbes.
+
+\begin{tkzexample}[vbox]
+ \begin{tikzpicture}[scale=1.5]
+   \tkzInit[xmax=5,ymax=5]
+   \tkzGrid  \tkzAxeXY
+   \tkzFct[domain = 0:5]{x}
+   \tkzFct[domain = 1:5]{log(x)} 
+   \tkzDrawAreafg[color  = orange!50,domain = 1:5]
+ \end{tikzpicture}
+\end{tkzexample}
+
+%<--------------------------------------------------------------------------->
+\newpage
+\subsection{Surface comprise entre deux courbes avec des hachures}
+
+\begin{tkzltxexample}[]
+\tkzDrawAreafg[between= a and b,pattern=north west lines,domain = 1:5]
+\end{tkzltxexample}
+
+\begin{center}
+  \begin{tkzexample}[vbox]
+  \begin{tikzpicture}[scale=.8]
+    \tkzInit[xmax=5,ymax=5]
+    \tkzGrid
+    \tkzAxeXY
+    \tkzFct[domain = 0:5]{x}
+    \tkzFct[domain = 1:5]{log(x)}
+    \tkzDrawAreafg[between= a and b,pattern=north west lines,domain = 1:5]
+  \end{tikzpicture}
+  \end{tkzexample} 
+\end{center}
+
+%<--------------------------------------------------------------------------->
+\subsection{Surface comprise entre deux courbes avec l'option \tkzname{between}}
+Attention à l'ordre des références dans l'option \tkzname{between}. Seule la partie de la surface (b) est au-dessus de (a) est représentée. 
+
+\begin{tkzexample}[latex=7cm]
+\begin{tikzpicture}[scale=1.25]
+ \tkzInit[ymin=-1,xmax=5,ymax=3]
+ \tkzGrid
+ \tkzAxeXY  
+ \tkzFct[domain = 0.5:5]{1/x}% courbe a 
+ \tkzFct[domain = 1:5]{log(x)}% courbe b
+ \tkzDrawAreafg[between=b and a,
+            color=magenta!50,
+            domain = 1:4]
+\end{tikzpicture}
+\end{tkzexample}
+
+%<--------------------------------------------------------------------------->
+\newpage
+\subsection{Surface comprise entre deux courbes : courbes de Lorentz}
+Ici aussi, attention à l'ordre des références dans l'option \tkzname{between}.
+
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmax=1,ymax=1,xstep=0.1,ystep=0.1]
+  \tkzGrid
+  \tkzAxeXY   
+  \tkzFct[color   = red,domain = 0:1]{(exp(\x)-1)/(exp(1)-1)}
+  \tkzFct[color   = blue,domain = 0:1]{\x*\x*\x}
+  \tkzFct[color  = green,domain = 0:1]{\x}
+  \tkzDrawAreafg[between = c and b,color=purple!40,domain = 0:1]
+  \tkzDrawAreafg[between = c and a,color=gray!60,domain = 0:1]
+\end{tikzpicture}  
+\end{tkzexample} 
+
+%<--------------------------------------------------------------------------->
+\subsection{Mélange de style}
+
+\begin{tkzexample}[]
+\begin{tikzpicture}[scale=2.5]
+   \tkzInit[xmin=-1,xmax=4,ymin=0,ymax=5]
+   \tkzGrid
+   \tkzAxeXY
+   \tkzFct[domain = -.5:4]{ 4*x-x**2+4/(x**2+1)**2}
+   \tkzFct[domain = -.5:4]{x-1+4/(x**2+1)**2}
+   \tkzDrawAreafg[color=green,domain = 1:4]
+   \tkzDrawAreafg[pattern=north west lines,domain = -.5:1]
+   \tkzRep
+   \tkzText(2.5,4.5){$C_f$}
+   \tkzText(2.5,1){$C_g$}
+\end{tikzpicture}%
+\end{tkzexample}
+
+\newpage  %<--------------------------------------------------------------------------->
+\subsection{Courbes de niveaux}
+Le code est intéressant pour la définition des fonctions constantes  aux lignes 10 et 11. 
+
+\begin{tkzexample}[num]
+\begin{tikzpicture}[scale=.75]
+ \tkzInit[xmax=20,ymax=12]
+ \tkzGrid[color=orange,sub](0,0)(20,12)
+ \tkzAxeXY
+ \tkzFct[samples=400,domain =0:8]{(32-4*x)**(0.5)}   % a
+ \tkzFct[samples=400,domain =0:18]{(72-4*x)**(0.5)}  % b
+ \tkzFct[samples=400,domain =0:20]{(112-4*x)**(0.5)} % c
+ \tkzFct[samples=400,domain =2:20]{(152-4*x)**(0.5)} % d
+ \tkzFct[samples=400,domain =12:20]{(192-4*x)**(0.5)}% e
+ \def\tkzFctgnuf{0} % f
+ \def\tkzFctgnug{12}% g
+ \tkzDrawAreafg[between= b and a,color=gray!80,domain = 0:8]
+ \tkzDrawAreafg[between= b and f,color=gray!80,domain = 8:18]
+ \tkzDrawAreafg[between= d and c,color=gray!50,domain = 2:20]
+ \tkzDrawAreafg[between= g and c,color=gray!50,domain = 0:2]
+ \tkzDrawAreafg[between= g and e,color=gray!20,domain =12:20]
+\end{tikzpicture}%
+\end{tkzexample}
+
+\endinput   
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-area.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-asymptote.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-asymptote.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-asymptote.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,160 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+\section{Droites particulières}
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+\subsection{ Tracer une ligne verticale }
+\begin{NewMacroBox}{tkzVLine}{\oarg{local options}\marg{decimal number}}
+Attention, la syntaxe est celle de \tkzname{fp} car on n'utilise pas \tkzname{gnuplot} pour tracer une droite.
+
+\begin{tabular}{lll}
+  \toprule
+arguments &  exemple  & définition  \\ 
+\midrule
+\TAline{decimal number}{\tkzcname{tkzVLine\{1\}}}{Trace la droite $x=1$}
+\bottomrule
+\end{tabular} 
+
+\medskip
+\begin{tabular}{lll}  
+\toprule
+options  & défaut & définition             \\   
+\midrule
+\TOline{color     }{|black| }{  couleur du trait}
+\TOline{line width}{|0.6pt| }{  épaisseur du point}
+\TOline{style     }{|solid|}{  style du trait }
+\bottomrule
+\end{tabular}
+
+\emph{voir les options les lignes dans \TIKZ} 
+\end{NewMacroBox}
+
+
+\subsection{Ligne verticale }
+problème avec cette macro, en principe 1./3 devrait être acceptée.
+\begin{tkzexample}[latex=8cm] 
+\begin{tikzpicture}[scale=2]
+   \tkzInit[xmax=3,ymax=2]
+   \tkzAxeXY
+   \tkzVLine[color      = blue,
+             style      = dashed,
+             line width = 1pt]{2}
+      \tkzVLine[color      = red,
+             style      = dashed,
+             line width = 1pt]{1./3}  
+\end{tikzpicture}
+\end{tkzexample}   
+
+
+\newpage   
+\begin{NewMacroBox}{tkzVLines}{\oarg{local options}\marg{list of values}}
+Attention, la syntaxe est celle de \tkzname{fp} car on n'utilise pas \tkzname{gnuplot} pour tracer une droite.
+
+\begin{tabular}{lll}
+  \toprule
+arguments &  exemple  & définition  \\ 
+\midrule
+\TAline{list of values}{\tkzcname{tkzVLines\{1,4\}}}{Trace les droites $x=1$ et $x=4$}
+\bottomrule
+\end{tabular} 
+
+\end{NewMacroBox}  
+
+\subsection{Lignes verticales}  
+
+\begin{tkzexample}[latex=7cm]
+\begin{tikzpicture}
+ \tkzInit[xmax=5,ymax=5]
+ \tkzAxeXY
+ \tkzVLines[color = green]{1,2,...,4}
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Ligne verticale et valeur calculée par \tkzname{fp} }
+\begin{tkzexample}[]
+\begin{tikzpicture}
+  \tkzInit[xmin=-7,xmax=7,ymin=-1,ymax=1]
+  \tkzAxeY
+  \tkzAxeX[trig=2] 
+  \foreach\v in {-2,-1,1,2}
+  {\tkzVLine[color=red]{\v*\FPpi}} 
+\end{tikzpicture} 
+\end{tkzexample} 
+ 
+\newpage
+\subsection{Une ligne horizontale} 
+\begin{NewMacroBox}{tkzHLine}{\oarg{local options}\marg{decimal number}}
+\begin{tabular}{lll}
+arguments &  exemple  & définition  \\ 
+\midrule
+\TAline{decimal number}{\tkzcname{tkzVLine\{1\}}}{Trace la droite $y=1$}
+\end{tabular}
+\end{NewMacroBox}
+ 
+\begin{tkzexample}[latex=7cm]
+\begin{tikzpicture}
+  \tkzInit[xmax=80,xstep=20,ymax=2]
+  \tkzAxeXY    
+  \tkzHLine[color=red]{exp(1)-1}
+\end{tikzpicture}
+\end{tkzexample}     
+\subsection{Asymptote horizontale}
+Attention, une autre méthode consiste à écrire \tkzcname{tkzFct{$\text{k}$}} mais si \tkzname{ystep= $n$} avec $n$ entier naturel alors il est nécessaire d'écrire $k$ comme un nombre réel, par exemple si \tkzname{ystep= $3$} alors il faut écrire $k=5.0$.
+
+\begin{tkzexample}[]
+\begin{tikzpicture}[scale=2.5]
+  \tkzInit[xmax=5,ymin=0.5,ymax=1.5,ystep=0.5]
+  \tkzGrid
+  \tkzAxeXY  
+  \tkzFct[domain = 0:10]{x*exp(-x)+1}
+  \tkzHLine[color=red,style=solid,line width=1.2pt]{1}
+  \tkzDrawTangentLine[draw,color=blue](1)
+  \tkzText[draw,fill = brown!20](2,0.75){$f(x)=x \text{e}^{-x}+1$}
+ \end{tikzpicture}
+ \end{tkzexample}
+
+
+
+\newpage 
+
+\subsection{Lignes horizontales}    
+  
+\begin{NewMacroBox}{tkzHLines}{\oarg{local options}\marg{list of values}}
+\begin{tabular}{lll}
+arguments &  exemple  & définition  \\ 
+\midrule
+\TAline{list of values}{\tkzcname{tkzHLines\{1,4\}}}{Trace les droites $y=1$ et $y=4$}
+\bottomrule
+\end{tabular}
+\end{NewMacroBox} 
+
+\begin{tkzexample}[]
+\begin{tikzpicture}
+ \tkzInit
+ \tkzAxeXY
+ \tkzHLines[color = green]{1,2,...,10}
+\end{tikzpicture}
+\end{tkzexample}
+
+
+\newpage
+\subsection{Asymptote horizontale et verticale}  
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.25]
+ \tkzInit
+ \tkzGrid
+ \tkzAxeXY
+ \tkzFct[color=red,domain=1.001:1.9]{1+1/(log(x-1)**2)}
+ \tkzFct[color=red,domain = 2.1:10]{1+1/(log(x-1)**2)}
+ \tkzHLine[line width=1pt,color=red]{1}
+ \tkzVLine[line width=1pt,color=blue]{2}
+ \tkzDefPoint(1,1){A}
+ \tkzDrawPoint[fill=white,color=Maroon,size=4](A) 
+ \tkzDefPointByFct[draw,with=b]({1+exp(1)})
+ \tkzLabelPoint[above right](tkzPointResult){$(1+\text{e}~;~2)$}
+ \tkzText[draw,color = black,fill = brown!20](6,6)%
+          {$f(x)=\dfrac{1}{\ln^2 (x-1)}+1$}  
+\end{tikzpicture}  
+\end{tkzexample}   
+
+   
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-asymptote.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-bac.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-bac.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-bac.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,202 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+\section{Exemples avec les packages \tkzname{alterqcm} et \tkzname{tkz-tab}}
+
+
+\shorthandoff{:}
+\begin{alterqcm}[lq=110mm]
+
+\AQmessage{ La figure 1. donne la représentation graphique d'une fonction $f$ définie sur $\mathbf{R}^+$ et la figure 2 celle d'une primitive de $f$ sur $\mathbf{R}^+$.
+
+\begin{center}
+ \begin{tikzpicture}[xscale=2.25,yscale=1]
+   \tkzInit[xmin=-2,xmax=3,ymin=-1,ymax=6]
+   \tkzDrawX
+   \tkzDrawY
+   \tkzFct[samples=100,domain = -1:2.2]{x+exp(x-1)}
+    \tkzDefPoint(1,2){pt1}
+    \tkzDrawPoint(pt1) 
+    \tkzPointShowCoord[xlabel=$1$,ylabel=$2$](pt1)
+    \tkzDefPoint(2,4.71828){pt2}
+    \tkzDrawPoint(pt2)  
+    \tkzPointShowCoord[xlabel=$2$,ylabel=$\text{e}+2$](pt2) 
+   \tkzRep   
+ \end{tikzpicture}
+\end{center} 
+
+\begin{center}
+  \begin{tikzpicture}[xscale=2.25,yscale=1]
+   \tkzInit[xmin=-2,xmax=3,ymin=-1,ymax=6]
+   \tkzDrawX
+   \tkzDrawY
+   \tkzFct[samples=100,domain = -1:2.2]{x*x/2+exp(x-1)}
+   \tkzDefPoint(1,1.5){pt1}
+   \tkzDrawPoint(pt1)
+   \tkzPointShowCoord[xlabel=$1$,ylabel=$3/2$](pt1) 
+   \tkzDefPoint(2,4.71828){pt2}
+   \tkzDrawPoint(pt2)
+   \tkzPointShowCoord[xlabel=$2$,ylabel=$\text{e}+2$](pt2)  
+   \tkzRep   
+\end{tikzpicture}
+\end{center}}  
+
+\AQquestion{Quelle est l'aire, en unités d'aire, de la partie du plan limitée par la représentation graphique de la fonction $f$, l'axe des abscisses et les 
+droites d'équation $x = 1$ et $x = 2$ ? }
+{{$\text{e} + \cfrac{3}{4}$},
+{$\text{e} + \cfrac{1}{2}$},
+{$1$}
+}
+\end{alterqcm}
+
+\begin{alterqcm}[lq=90mm,pre=false,numbreak=1]
+\AQmessage{La fonction $k$ définie et strictement positive sur $\mathbf{R}^+$ est connue par son tableau de variations.
+
+\begin{center}
+\begin{tikzpicture}
+     \tkzTabInit[lgt=1,espcl=2]{$x$/0.5,$k(x)$/1.5}
+     {$0$,$1$,$3$,$+\infty$}
+     \tkzTabVar{-/            /,%
+                +/            /,%
+                -/            /,%
+                +/ $+\infty$  /}%
+     \end{tikzpicture}
+\end{center}%
+}
+
+\AQquestion{Pami les tableaux suivants, quel est le tableau de variations de la fonction $g$ définie sur 
+$\mathbf{R}^+$ par \[g(x) = \cfrac{1}{k(x)}\ ? \]}
+{{Tableau A},
+{Tableau B},
+{Tableau C}
+}
+
+\AQmessage{
+\begin{center}
+  Tableau A
+  
+\begin{tikzpicture}
+     \tkzTabInit[lgt=1,espcl=2]{$x$/0.5,$g(x)$/1.5}
+     {$0$,$1$,$3$,$+\infty$}
+     \tkzTabVar{-/            /,%
+                +/            /,%
+                -/            /,%
+                +/ $+\infty$  /}%
+     \end{tikzpicture}
+
+\end{center}
+
+
+ \begin{center}
+Tableau B
+
+\begin{tikzpicture}
+     \tkzTabInit[lgt=1,espcl=2]{$x$/0.5,$g(x)$/1.5}
+     {$0$,$1$,$3$,$+\infty$}
+     \tkzTabVar{+/            /,%
+                -/            /,%
+                +/            /,%
+                -/ $-\infty$  /}%
+     \end{tikzpicture}
+
+ \end{center}
+
+\begin{center}
+Tableau C
+
+ \begin{tikzpicture}
+     \tkzTabInit[lgt=1,espcl=2]{$x$/0.5,$g(x)$/1.5}
+     {$0$,$1$,$3$,$+\infty$}
+     \tkzTabVar{-/            /,%
+                +/            /,%
+                -/            /,%
+                +/ $0$        /}%
+     \end{tikzpicture}
+
+\end{center}
+}
+
+\AQquestion{Soit $h$ la fonction définie sur $\mathbf{R}$ par $h(x) = \text{e}^x - x + 1$.
+On note $\mathcal{C}$ la courbe représentative de $h$ dans un repère 
+orthonormal  $O;\vec{\imath};\vec{\jmath}$.}
+{{%
+\begin{minipage}{5cm}
+  La droite d'équation $y = 1$ est 
+  asymptote à $\mathcal{C}$%
+\end{minipage}
+},
+{\begin{minipage}{5cm}
+ La droite d'équation $x = 0$ est 
+asymptote à $\mathcal{C}$
+\end{minipage}},
+{\begin{minipage}{5cm}
+ La droite d'équation $y = -x + 1$ est 
+asymptote à $\mathcal{C}$
+\end{minipage}}
+}
+\AQquestion{En économie, le coût marginal est le coût occasionné par la 
+production d'une unité supplémentaire, et on considère que le coût 
+marginal est assimilé à la dérivée du coût total.\\
+Dans une entreprise, une étude a montré que le coût marginal 
+$C_{m}(q)$ exprimé en millliers d'euro en fonction du nombre $q$ 
+d'articles fabriqués est donné par la relation :
+\[C_{m}(q) = 3q^2 - 10q + \cfrac{2}{q} + 20.\]
+}
+{{ $C_{r}(q) = q^3 - 5q^2 + 2\ln q + 20q + 9984$},
+{$C_{r}(q) = q^3 - 5q^2 + 2\ln q + 20q - 6$},
+{$C_{r}(q) = 6q - 10 - \cfrac{2}{q^2}$}
+}
+
+\end{alterqcm}    
+
+Voici le code des deux représentations de $f$ et de sa primitive~:
+
+\subsubsection{Première représentation}
+ \begin{tkzexample}[code only]
+ \begin{tikzpicture}[xscale=2.25,yscale=1]
+   \tkzInit[xmin=-2,xmax=3,ymin=-1,ymax=6]
+   \tkzDrawX
+   \tkzDrawY 
+   \tkzFct[samples=100,domain = -1:2.2]{x+exp(x-1)}
+   \tkzDefPoint(1,2){pt1}
+   \tkzDrawPoint(pt1) 
+   \tkzPointShowCoord[xlabel=$1$,ylabel=$2$](pt1)
+   \tkzDefPoint(2,4.71828){pt2}
+   \tkzDrawPoint(pt2)  
+   \tkzPointShowCoord[xlabel=$2$,ylabel=$\text{e}+2$](pt2)
+   \tkzRep  
+ \end{tikzpicture}  
+ \end{tkzexample}
+
+\subsubsection{Seconde représentation} 
+ \begin{tkzexample}[]
+  \begin{tikzpicture}[xscale=2.25,yscale=1]
+   \tkzInit[xmin=-2,xmax=3,ymin=-1,ymax=6]
+   \tkzDrawX
+   \tkzDrawY
+   \tkzFct[samples=100,domain =-1:2.2]{x*x/2+exp(x-1)}
+   \tkzDefPoint(1,1.5){pt1}
+   \tkzDrawPoint(pt1)
+   \tkzPointShowCoord[xlabel=$1$,ylabel=$3/2$](pt1) 
+   \tkzDefPoint(2,4.71828){pt2}
+   \tkzDrawPoint(pt2)
+   \tkzPointShowCoord[xlabel=$2$,ylabel=$\text{e}+2$](pt2) 
+   \tkzRep  
+\end{tikzpicture} 
+ \end{tkzexample} 
+
+Code d'un tableau de variations
+
+\begin{tkzltxexample}[]
+\begin{tikzpicture}
+     \tkzTabInit[lgt=1,espcl=2]{$x$/0.5,$k(x)$/1.5}
+     {$0$,$1$,$3$,$+\infty$}
+     \tkzTabVar{-/            /,%
+                +/            /,%
+                -/            /,%
+                +/ $+\infty$  /}%
+\end{tikzpicture}  
+\end{tkzltxexample}
+
+
+
+
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-bac.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-compilation.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-compilation.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-compilation.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,250 @@
+\section{Utilisation de Gnuplot}
+%–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––> 
+\subsection{Mécanisme d'interaction entre \TIKZ\ et \tkzname{Gnuplot}}
+
+\TEX\  est un système logiciel de composition de documents ( text processing programm ). Il permet bien sûr de calculer, mais avec des moyens limités. \TIKZ\ est ainsi limité par \TEX\ pour effectuer des calculs. Pour rappel ±16383.99999 pt est l'intervalle dans lequel \TEX\ stocke ses valeurs. Sachant que 1 cm est égal à 28.45274 pt, on s'aperçoit que \TEX\ ne  peut traiter que des dimensions inférieures à 5,75 mètres environ.
+Bien sûr, cela paraît suffisant, mais malheureusement, pendant un enchaînement de calculs, il est assez facile de dépasser ces limites.
+
+\bigskip 
+ \tkzActivOff  
+  \newcommand{\drawpage}[4]{%
+  \begin{scope}[xshift=#1, yshift=#2,font=\footnotesize]
+    \filldraw[fill=white!75!#4,draw=#4, very thin]%
+   (0,0) -- (4.2,0) -- (4.2,4.85) --(3.21,5.84)-- (0,5.84) -- cycle;
+   \fill[fill=#4,shade,top color=#4,bottom color=#4!40]%
+       (3.21,5.84) -- ++(0,-0.99) -- ++(0.99,0) -- cycle;
+    \path (2.1,2.97) node{#3};
+  \end{scope}
+}
+
+\begin{center}
+\begin{tikzpicture}[>=triangle 45,scale=.75]
+\drawpage{0cm}{0cm}{\texttt\blue\begin{minipage}{2cm}
+sample.tex
+
+with
+
+\tkzcname{draw plot[id=fct] function{---.};}
+\end{minipage}}{blue}
+\drawpage{12cm}{0cm}{\texttt \red sample.fct.gnuplot}{red}
+\drawpage{12cm}{-14cm}{\texttt\red sample.fct.table}{red}
+\drawpage{0cm}{-14cm}{\texttt\blue\begin{minipage}{2cm}
+sample.pdf 
+
+\bigskip 
+\shorthandoff{:}
+ \begin{tikzpicture}[domain=-1.5:.8]
+  \draw plot[id=f1,samples=200] function{x*x}; 
+ \end{tikzpicture}
+\end{minipage}}{blue} 
+
+\path (8.05,2.9) node(A) 
+     [diamond,%
+      draw,color   = black,
+      fill         = red!60,%
+      text         = black,%
+      minimum size = 3 cm,%
+      font         = \normalsize] 
+     {{\texttt \tikzname-\TEX}};  
+  \path (14.1,-4.08) node(B) 
+     [diamond,%
+      draw,color=black,fill=green!60,%
+      text = black,%
+      minimum size = 3 cm,%
+      font         = \normalsize] 
+     {{\texttt gnuplot}};
+  \path (8.05,-11.1) node(C) 
+     [diamond,%
+      draw,color   = black,
+      fill         = red!60,%
+      text         = black,%
+      minimum size = 3 cm,%
+      font         = \normalsize] 
+     {{\texttt \tikzname-\TEX}};   
+  \draw[->] (4.2,2.9) -- (A.west);
+  \draw[->] (A.east) -- (12,2.9);
+  \draw[->] (14.1,0) -- (B.north); 
+  \draw[->] (B.south) -- (14.1,-8.18);
+  \draw[->] (12 ,-11.1)--(C.east);
+  \draw[->] (C.west)--(4.2,-11.1); 
+  \draw[->,magenta] (4.2,2.9) to [ out =-80,in=260] node[below,pos=.5]{étape 1} (12,2.9);
+  \draw[->,magenta] (14.1,0) to [ out =200,in=160] node[left,pos=.5]{étape 2} (14.1,-8.18);   
+  \draw[->,magenta] (12 ,-11.1) to [ out =110,in=70] node[above,pos=.5]{étape 3} (4.2,-11.1); 
+  \end{tikzpicture}
+\end{center}
+
+\newpage 
+
+Pour tracer des courbes en 2D en contournant ces problèmes, un moyen simple offert par \TIKZ, est d'utiliser \tkzname{gnuplot}. 
+
+ \tkzname{tkz-fct.sty}  s'appuie sur le programme \tkzname{gnuplot} et le package  \tkzname{fp.sty}. Le premier est utilisé pour obtenir une liste de points, et le second pour évaluer ponctuellement des valeurs.
+ 
+ Vous devez donc installer \tkzname{Gnuplot},  son installation dépend de votre système, puis  il faudra que votre distribution trouve \tkzname{Gnuplot}, et que  \TeX\  autorise \tkzname{Gnuplot} à écrire un fichier.
+
+\begin{itemize}
+\item \textcolor{red}{\textbf{Étape 1}}
+
+On part du fichier \tkzname{sample.tex} suivant :
+
+\medskip    
+\begin{tkzltxexample}[]  
+\documentclass{article}
+\usepackage{tikz}
+\begin{document}
+\begin{tikzpicture}
+\draw plot[id=f1,samples=200,domain=-2:2] function{x*x};
+\end{tikzpicture}
+\end{document}
+\end{tkzltxexample} 
+ \tkzActivOn
+
+La compilation de ce fichier créé avec \TIKZ, produit un fichier nommé    \tkzname{sample.f1.gnuplot}. Le nom du fichier est obtenu à partir de \tkzcname{jobname} et de l'option \tkzname{id}. Ainsi un même fichier peut créer plusieurs fichiers distincts. C'est un fichier texte ordinaire, affecté de l'extension \tkzname{gnuplot}. Il contient un préambule indiquant à \tkzname{gnuplot} qu'il doit créer une table contenant les coordonnées d'un certain nombre de points obtenu par la fonction définie par $x\longrightarrow x^2$. Ce nombre de points est défini par l'option \tkzname{samples}. Cette étape ne présente aucune difficulté particulière. Le fichier obtenu peut être traité manuellement avec \tkzname{gnuplot}.  Le résultat est le fichier suivant : 
+
+\begin{tkzltxexample}[]  
+set table; set output "sample.f1.table"; set format "%.5f"
+set samples 200; plot [x=-2:2] x*x  
+\end{tkzltxexample} 
+
+Une table sera créée et enregistrée dans un fichier texte nommé "sample.f1.table". Les nombres seront formatés pour ne contenir que 5 décimales.
+La table contiendra 201 couples de coordonnées. 
+ 
+\item  \textcolor{red}{\textbf{Étape 2}} 
+
+Elle est la plus délicate car  le fichier \tkzname{sample.f1.gnuplot} doit être ouvert par \tkzname{gnuplot}. Cela implique d'une part, que   \TEX\  autorise l'ouverture\footnote{c'est ici que l'on parle des options \tkzname{--shell-escape} et \tkzname{--enable-write18}}
+   du  fichier \tkzname{sample.f1.gnuplot} par \tkzname{gnuplot} et d'autre part, que   \TEX\ puisse trouver \tkzname{gnuplot}\footnote{c'est ici que l'on parle de \tkzname{PATH}}. 
+
+Si \tkzname{gnuplot} trouve \tkzname{sample.f1.gnuplot} alors il produit un fichier texte \tkzname{sample.f1.table}, évidemment s'il ne trouve d'erreur de syntaxe dans l'expression de la fonction.
+
+\tkzHandBomb Malheureusement, une incompréhension peut surgir entre \TIKZ\ et  \tkzname{gnuplot}.  \TIKZ\ jusqu'à sa version 2.00 officielle, est conçu pour fonctionner avec \tkzname{gnuplot} version 4.0 et malheureusement, \tkzname{gnuplot} a changé de syntaxe. la documentation de gnuplot indique :
+
+\medskip\hspace{1cm}    
+\begin{tkzltxexample}[]
+	Features, changes and fixes in gnuplot version 4.2 (and >)
+'set table "outfile"; ---.; unset table' replaces 'set term table'  
+\end{tkzltxexample}
+
+
+La version 2.1 de \TIKZ\ a adopté   \tkzname{set table} et il n'y a plus d'incompatibilité entre \TIKZ\ et les versions récentes de \tkzname{gnuplot} (v>4.2). 
+   
+ \item \textcolor{red}{\textbf{Étape 3}} 
+ 
+ Le fichier \tkzname{sample.f1.table} obtenu à l'étape précédente est utilisé par \TIKZ\ pour tracer la courbe.
+ 
+\medskip\hspace{1cm}    
+\begin{tkzltxexample}[]   
+# Curve 0 of 1, 201 points
+# Curve title: "x*x"
+# x y type
+-2.00000 4.00000  i
+-1.98000 3.92040  i
+-1.96000 3.84160  i
+---.
+1.98000 3.92040  i
+2.00000 4.00000  i 
+\end{tkzltxexample} 
+\end{itemize}
+
+\begin{enumerate}
+
+\item  Il faut remarquer qu'au cours d'une seconde compilation, si le fichier  \tkzname{sample.f1.gnuplot} ne change pas, alors \tkzname{gnuplot} n'est pas lancé et le fichier présent \tkzname{sample.f1.table} est utilisé.
+
+\item On peut aussi remarquer  que si vous êtes paranoïaque et que vous n'autorisez pas le lancement de gnuplot, alors un première compilation permettra de créer le fichier \tkzname{sample.f1.table}, ensuite manuellement, vous pourrez lancer gnuplot  et obtenir le fichier \tkzname{sample.f1.table}.
+
+\item Il est aussi possible de créer manuellement ou encore avec un quelconque programme, un fichier data.table que \TIKZ\ pourra lire avec
+
+\begin{tkzltxexample}[]
+  \draw plot[smooth] file {data.table};  
+\end{tkzltxexample}
+\end{enumerate}
+
+
+
+\subsection{Installation de \tkzname{Gnuplot}} 
+
+Gnuplot est proposé avec la plupart des distributions Linux, et existe pour OS X ainsi que pour Windows. 
+
+\begin{enumerate}
+  \item \tkzname{Ubuntu}\NameSys{Linux Ubuntu} ou un autre système Linux: on l'installe en suivant la procédure classique d'installation d'un nouveau paquetage. 
+  \item \tkzname{Windows}\NameSys{Windows XP}  Les utilisateurs de Windows doivent se méfier, après avoir téléchargé la bonne version et installé \tkzname{gnuplot} alors il faudra  renommé wgnuplot en gnuplot. Ensuite il faudra modifier le \tkzname{path}. Si le chemin du programme est \shorthandoff{:}\tkzname{C:\textbackslash gnuplot} alors il faudra ajouter   \tkzname{{C:}\textbackslash gnuplot\textbackslash bin\textbackslash}\shorthandon{:}  aux variables environnement (Aller à "Poste de Travail" puis faire "propriétés", dans l'onglet "Avancé", cliquer sur "Variables d'environnement". ). 
+Ensuite pour compiler sous latex, il faudra ajouter au script de compilation l'option  \tkzname{--enable-write18 }. 
+  \item  \tkzname{OS X}\NameSys{OS X}  C'est le système en version Snow Leopard  qui pose le plus  de problème, car il faut compiler les sources.
+  Si vous n'utilisez \tkzname{gnuplot} qu'en collaboration avec \TIKZ\ alors il vous suffit de compiler les sources ainsi :
+ 
+ \begin{enumerate}
+
+\item  Télécharger les sources de \tkzname{gnuplot}, déposer les sources sur le bureau.
+\item Ouvrir un terminal puis taper cd et glisser le dossier des sources après cd (en laissant un espace)
+Cela doit donner
+
+\begin{tkzltxexample}[] 
+$ cd /Users/ego/Desktop/gnuplot-4.4.2 
+\end{tkzltxexample}
+
+\item ensuite taper la ligne suivante et valider
+ \begin{tkzltxexample}[]
+$ ./configure --with-readline=builtin
+\end{tkzltxexample}
+  \item puis
+\begin{tkzltxexample}[]
+$ make\end{tkzltxexample} 
+  \item et enfin 
+   \begin{tkzltxexample}[]
+$ sudo make install
+\end{tkzltxexample}  
+ \end{enumerate}
+\end{enumerate}
+
+
+\subsection{ Test de l'installation de tkz-base}
+Enregister le code suivant dans un fichier avec le nom test.tex, puis compiler avec pdflatex ou bien la chaîne dvi-->ps-->pdf. Vous devez obtenir cela :
+   
+
+\begin{tkzltxexample}[]
+\documentclass{scrartcl}
+\usepackage[usenames,dvipsnames]{xcolor}
+ \usepackage{tkz-fct}
+  \begin{document}
+    \begin{tikzpicture}
+      \tkzInit[xmin=-5,xmax=5,ymax=2]
+      \tkzGrid
+      \tkzAxeXY
+     \end{tikzpicture}
+ \end{document}    
+\end{tkzltxexample}
+
+\begin{tkzexample}[vbox,small]
+	\begin{tikzpicture}
+	    \tkzInit[xmin=-5,xmax=5,ymax=2]  
+	    \tkzGrid
+	    \tkzAxeXY
+	 \end{tikzpicture} 
+\end{tkzexample}
+
+
+\subsection{ Test de l'installation de tkz-fct}
+Il suffit d'ajouter une ligne pour tracer la représentation graphique d'une fonction.
+
+\begin{tkzltxexample}[]
+\documentclass{scrartcl}
+\usepackage[usenames,dvipsnames]{xcolor}
+ \usepackage{tkz-fct}
+  \begin{document}
+    \begin{tikzpicture}[scale=1.25]
+      \tkzInit[xmin=-5,xmax=5,ymax=2]
+      \tkzGrid
+      \tkzAxeXY
+      \tkzFct[color=red]{2*x**2/(x**2+1)}
+     \end{tikzpicture}
+ \end{document}
+\end{tkzltxexample}
+
+\begin{tkzexample}[] 
+\begin{tikzpicture}[scale=1.25]
+    \tkzInit[xmin=-5,xmax=5,ymax=2]
+    \tkzGrid
+    \tkzAxeXY
+    \tkzFct[color=red]{2*x**2/(x**2+1)}
+ \end{tikzpicture}     
+\end{tkzexample} 
+\endinput
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-compilation.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-example.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-example.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,121 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex     
+\section{Quelques exemples}      
+
+\subsection{Variante intermédiaire : \TIKZ\ + \tkzname{tkz-fct}}
+Les codes de \TIKZ\ et de \tkzname{tkz-fct} peuvent se compléter. Ainsi les axes et les textes sont gérés par \tkzname{tkz-fct} mais la courbe est laissée à \TIKZ\ et \tkzname{gnuplot}.
+
+\bigskip
+
+\begin{center}
+	\begin{tkzexample}[]
+	 \begin{tikzpicture}[scale=3]
+	  \tkzInit[xmin=0,xmax=4,ymin=-1.5,ymax=1.5]
+	  \tkzAxeY[label=$f(x)$]
+	  \tkzDefPoint(1,0){x} \tkzDrawPoint[color=blue,size=0.6pt](x)
+	  \shade[top color=gray!80,bottom color=gray!20] (1,0)%
+	         plot[id=ln,domain=1:2.718] function{log(x)} |-(1,0);
+	  \draw[color=blue] plot[id=ln,domain=0.2:4,samples=200]function{log(x)};
+	  \tkzAxeX
+	  \tkzText[draw,color= black,fill=brown!50](2,-1)%
+	          {$\mathcal{A} = \int_1^{\text{e}}\ln(x)\text{d}x =%
+	            \big[x\ln(x)\big]_{1}^{\text{e}} = \text{e}$}
+	  \tkzText[draw,color= black,fill=brown!50](2,0.3){$\mathcal{A}$}   
+	 \end{tikzpicture}
+	\end{tkzexample} 
+\end{center}
+
+ \newpage  
+ \subsection{Courbes de \tkzname{Lorentz}}
+
+ $f(x)=\dfrac{\text{e}^x-1}{\text{e}-1}$ et $g(x)=x^3$ 
+ 
+
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1]
+  \tkzInit[xmax=1,ymax=1,xstep=0.1,ystep=0.1]
+  \tkzGrid(0,0)(1,1)
+  \tkzAxeXY
+  \tkzFct[color   = red,domain = 0:1]{(exp(\x)-1)/(exp(1)-1)}
+  \tkzDrawTangentLine[kl=0,kr=0.4,color=red](0)
+  \tkzDrawTangentLine[kl=0.2,kr=0,color=red](1)
+  \tkzText[draw,color  = red,fill = brown!30](0.4,0.6)%
+          {$f(x)=\dfrac{\text{e}^x-1}{\text{e}-1}$}
+  \tkzFct[color   = blue,domain = 0:1]{\x*\x*\x}
+  \tkzDrawTangentLine[kl=0,kr=0.4,color=blue](0)
+  \tkzDrawTangentLine[kl=0.2,kr=0,color=blue](1)
+  \tkzText[draw,color = blue,fill = brown!30](0.8,0.1){$g(x)=x^3$}
+  \tkzFct[color = orange,style = dashed,domain = 0:1]{\x}
+  \tkzDrawAreafg[between=c and b,color=blue!40,domain = 0:1]
+  \tkzDrawAreafg[between=c and a,color=red!60,domain = 0:1]
+\end{tikzpicture}
+\end{tkzexample}   
+\end{center}
+
+
+ \newpage  
+ \subsection{Courbe exponentielle}  
+   $f(x) = (-x^2+x+2)\exp(x)$ 
+   
+\begin{center}
+\begin{tkzexample}[small] 
+\begin{tikzpicture}[scale=1.25]   
+   \tkzInit[xmin=-6,xmax=4,ymin=-5,ymax=6]
+   \tkzGrid
+   \tkzAxeXY  
+   \tkzFct[color=red,thick,domain=-6:2.1785]{(-x*x+x+2)*exp(x)}
+   \tkzSetUpPoint[size=6]
+   \tkzDrawTangentLine[draw,kl=2](0)
+   \tkzDefPoint(2,0){b}  \tkzDrawPoint(b)
+   \tkzDefPoint(-1,0){c} \tkzDrawPoint(c)
+   \tkzText(2,4){($\mathcal{C}$)}
+   \tkzText(-2,-3){($\mathcal{T}$)}
+\end{tikzpicture}
+\end{tkzexample} 
+\end{center}
+
+
+ \subsection{Axe logarithmique} 
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=0.8]
+ \tkzInit[xmax=14,ymax=12]
+ \draw[thin,->] (0,0) -- (14,0) node[below left] {};
+ \draw[thin,->] (0,0) -- (0,12) node[below left] {};
+ \foreach \x/\xtext in {0/0,2/10,4/20,6/30,8/40,10/50,12/60,14/70}%
+     {\draw[shift={(\x,0)}] node[below] {$\xtext$ };}
+ \foreach \y/\z in {0/0,3/1,6/2,9/3,12/4}%
+     {\draw[shift={(0,\y)}] node[left] {$10^{\z}$};}
+ \foreach \x in {1,2,...,14}{\tkzVLine[gray,thin]{\x}}   
+ \foreach \y in {3,6,...,12}{\tkzHLine[gray,thin]{\y}}
+ \foreach \y in {0,3,...,9}{
+ \foreach \z in {0.903,1.431,1.806,2.097,2.334,2.535,2.709,2.863}%
+   {\tkzHLine[thin,gray,shift={(0,\y)}] {\z}}}  
+ \tkzDefPoint(0,6.90){a}
+ \tkzDefPoint(10,9.30){b}
+ \tkzDrawPoints(a,b)
+ \tkzLabelPoint(a){$M_{1}$}
+ \tkzLabelPoint(b){$M_{11}$}
+\end{tikzpicture}
+\end{tkzexample}
+
+ \subsection{Un peu de tout} 
+\begin{tkzexample}[vbox]   
+\begin{tikzpicture}[scale=.8]
+ \tkzInit[xmin=5,xmax=40,ymin=0,ymax=350,xstep=2.5,ystep=25]
+ \tkzDrawX[label=$q$]
+ \tkzDrawY[label=$C(q)$] 
+ \tkzLabelXY
+ \tkzGrid[orange]
+ \tkzFct[domain=5:40]{0.1*\x**2+2*\x+60}
+ \foreach \vv in {5,10,...,40}{%
+   \tkzDefPointByFct(\vv)
+    \tkzDrawPoint(tkzPointResult)}
+ \tkzFct[domain=5:40]{(108*log(\x)-158)}
+ \tkzText(37.5,285){$C$} 
+ \tkzText(37.5,220){$R$}
+ \tkzDefSetOfPoints{%
+ 5/15,10/90,15/135,20/170,25/190,30/200,35/230,40/240}
+\tkzDrawSetOfPoints[mark = x,mark size=3pt]   
+\end{tikzpicture}
+\end{tkzexample}   
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-example.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-faq.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-faq.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-faq.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,265 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\section{Quelques remarques}
+
+\begin{enumerate}
+\item Modification avec les anciennes versions~:
+  \begin{itemize}
+   \item \tkzcname{tkzTan} est devenu \tkzcname{tkzDrawTangentLine}
+   \item Désormais le domaine est donné comme avec \TIKZ\ et ce n'est plus
+    \parg{$x_a..x_b$}
+   \item \tkzcname{tkzFctPt} est devenu \tkzcname{tkzDefPointByFct}
+  \end{itemize}
+
+\item  Quand \tkzname{xstep} est différent de 1, la variable doit être \tkzcname{x}.
+\item Quand une fonction est passée en argument à la macro \tkzcname{tkzFct}, elle est stockée avec la syntaxe de \tkzname{gnuplot} dans la macro \tkzcname{tkzFctgnua}. \tkzname{tkzFctgnu} est un préfixe, « a » est la référence associée à la fonction, la fonction suivante dans le même environnement \tkzname{tikzpicture} sera référencée « b » et ainsi de suite...
+
+Elle est aussi stockée avec la syntaxe de \tkzname{fp.sty} dans la macro  \tkzcname{tkzFcta} avec le préfixe \tkzname{tkzFcta}.
+
+La dernière macro utilisée est également sauvegardée sous les deux syntaxes  avec \tkzcname{tkzFctgnuLast}   et \tkzcname{tkzFctLast}.
+\item Attention dans \tkzname{gnuplot} un quotient doit être entré sous la forme 1./3, car 1/3 donne le quotient d'une division euclidienne (ici 0).
+\item Problème avec gnuplot~:
+  \begin{itemize}
+   \item Si le fichier xxx.table n'est pas créé, la cause probable est~:
+     \begin{itemize}
+     \item  soit que \TEX\ ne trouve pas \tkzname{gnuplot}, c'est en général un problème de « PATH »,
+     \item  soit \TEX\  n'autorise pas le lancement de \tkzname{gnuplot} alors c'est que l'option \tkzname{shell-escape} n'est pas autorisé. 
+    \end{itemize} 
+ 
+Une autre possibilité est que le fichier xxx.gnuplot soit incorrect. Il suffit de l'ouvrir avec un éditeur pour lire les commandes passées à \tkzname{gnuplot}. Il est à remarquer un changement de syntaxe de \tkzname{gnuplot} autour de la version 4.2. La syntaxe pour créer une table avec des versions ultérieures (4.4 et bientôt 4.5), est désormais  \tkzname{set table}. 
+
+
+   \item $\pi$ est, avec \tkzname{gnuplot}, défini par \tkzname{pi}
+   \item  $\pi$ est, avec \tkzname{fp.sty} défini par \tkzcname{FPpi}.   
+   \item (set) samples =2 est suffisant pour tracer une droite.
+  \end{itemize}
+ 
+ \item La puissance $a^b$ est notée $a \wedge b$ avec fp et pgfmath mais $a**b$ avec gnuplot.
+ 
+ \item \tkzname{tkz-fct} modife FP at pow  (code modifié de Christian Tellechea 2009) afin d'autoriser les puissances entières de nombres  négatifs.
+
+
+\item ({1/exp(1)}) est correct mais (1/exp(1)) donne une erreur
+\end{enumerate}
+
+\subsection{Fonctions de \tkzname{gnuplot}}
+
+
+\begin{tabular}{lll}
+\toprule      
+Gnuplot&fp&Description \\
++  & +  &  addition\\
+-  & -   &  soustraction\\
+*  & *  &  multiplication\\
+/  & /  &  division\\ 
+**  & \upp  &  exponentiation\\ 
+\%  & absente & modulo \\
+pi  &  pi  &  constante 3.1415   \\
+abs(x) & abs  & Valeur absolue                              \\
+cos(x) & cos &  Arc -cosinus                                \\
+sin(x) & sin &  Arc -cosinus                                \\
+tan(x) & tan &  Arc -cosinus                                \\
+acos(x) & arccos &  Arc -cosinus                            \\
+asin(x) &  arcsin &  Arc-sinus                              \\
+atan(x) &  arctan &  Arc-tangente                           \\
+atan2(y,x) & absente & Arc-tangente                  \\ 
+\midrule
+cosh(x) & absente & Cosinus hyperbolique                       \\
+sinh(x) & absente & Sinus hyperbolique                         \\
+acosh(x) & absente & Arc-cosinus hyperbolique                  \\
+asinh(x) & absente & Arc-sinus hyperbolique                  \\
+atanh(x) & absente & Arc-tangente hyperbolique                 \\ 
+\midrule
+besj0(x) & absente  & Bessel j0                       \\
+besj1(x) & absente & Bessel j1                       \\
+besy0(x) & absente & Bessel y0                       \\
+besy1(x) & absente & Bessel y1                       \\
+\midrule  
+ceil(x) & absente &  Le plus petit entier plus grand que       \\
+floor(x) & absente &  Plus grand entier plus petit que         \\
+absente & trunc(x,n) &  troncature $n$ nombre de décimales        \\ 
+absente & round(x,n) &  arrondi $n$ nombre de décimales         \\ 
+exp(x) & exp  & Exponentielle                               \\
+log(x) & ln &  Logarithme népérien (base e)                 \\
+log10(x) & absente & Logarithme base 10                      \\
+norm(x) & absente & Distribution normale                       \\
+rand(x) & random &  Générateur de nombre pseudo-aléatoire     \\
+sgn(x) & absente & Signe                                       \\
+sqrt(x) & absente &  Racine carrée                             \\
+tanh(x) & absente & Tangente hyperbolique                      \\
+\bottomrule
+\end{tabular}  
+ \endinput 
+fp
+
+ fp.sty    ,neg,min,max,
+	   round,trunc,clip,e,pow,root     
+	   
+	   
+	    
+Toutes les fonctions qui prennent un angle en paramètre considèrent par défaut la valeur donnée comme étant en radians. Pour changer l'unité, il faut utiliser la commande set angles .
+Les fonctions ceil et floor renvoient un réel.
+ Les fonctions erf, erfc, gamma, ibeta, inverf, igamma, invnorm, lgamma et norm agissent sur la partie réelle de leur paramètre. Enfin, la fonction sgn ignore la partie imaginaire   
+ 
+
+
+
+
+   rand   random (renvoi un nombre entre 0 et 1)
+   real   partie real
+   sgn    renvoi 1 si l'argument est positif, 0 s'il
+          est nulle, et -1 s'il est négatif
+
+
+   help expressions functions pour avoir la liste totale
+
+
+     fp
+     
+     
+     
+     	 The following macros are public ones to be used in the document:
+	   %controlling messages
+	     \FPmessagestrue	% print standard FP-messages (default)
+	     \FPmessagesfalse   % suppress standard FP-messages
+	     \FPdebugtrue    	% print debug messages (mainly for upn)
+	     \FPdebugfalse	% suppress debug messages (default)
+	   %introduction of new values
+	     \FPset#1#2		% #1 := #2  (#1 may be macro or string)
+	   %print values
+	     \FPprint#1		% prints #1 (#1 may be macro or string)
+           %binary operations
+             \FPadd#1#2#3	% #1 := #2+#3
+             \FPdiv#1#2#3	% #1 := #2/#3
+             \FPmul#1#2#3	% #1 := #2*#3
+             \FPsub#1#2#3	% #1 := #2-#3
+           %unary operations
+             \FPabs#1#2		% #1 := abs(#2)
+             \FPneg#1#2		% #1 := -#2
+           %binary relations
+             \FPiflt#1#2...\else...\fi % #1 < #2 ?
+             \FPifeq#1#2...\else...\fi % #1 = #2 ?
+             \FPifgt#1#2...\else...\fi % #1 > #2 ?
+           %unary relations
+             \FPifneg#1 ...\else...\fi % #1 <  0 ?
+             \FPifpos#1 ...\else...\fi % #1 >= 0 ?
+             \FPifzero#1...\else...\fi % #1 =  0 ?
+             \FPifint#1 ...\else...\fi % #1 is integer ?
+           %repeat last test
+             \ifFPtest  ...\else...\fi % repeat last test
+     - fp-addons.sty
+	 The following macros are public ones to be used in the document:
+	   %binary operations
+	     \FPmin#1#2#3	% #1 = min(#2,#3)
+	     \FPmax#1#2#3	% #1 = max(#2,#3)
+     - fp-eqn.sty (No warranty on correctness and especially on numerical problems!)
+         The following macros are public ones to be used in the document:
+	   \FPlsolve#1#2#3           
+		% #1 := x with #2*x+#3=0
+	   \FPqsolve#1#2#3#4#5 
+		% #1,#2 := x with #3*x^2+#4*x+#5 = 0
+	   \FPcsolve#1#2#3#4#5#6#7
+		% #1,#2,#3 := x with #4*x^3+#5*x^2+#6*x+#7 = 0
+	   \FPqqsolve#1#2#3#4#5#6#7#8#9
+		% #1,#2,#3,#4 := x with #5*x^4+#6*x^3+#7*x^2+#8*x+#9 = 0
+	 The resulting solutions are all real values. If there do not
+	 exist as much solutions you get a warning message and some
+	 other solutions occur several times in the solution vector.
+     - fp-exp.sty
+         The following macros are public ones to be used in the document:
+           \FPe			% 2.718281828459045235
+	   \FPexp#1#2 		% #1 := e^(#2)
+	   \FPln#1#2		% #1 := ln(#2)
+	   \FPpow#1#2#3  	% #1 := (#2)^(#3)
+	   \FProot#1#2#3        % #1 := (#2)^(1/#3)
+     - fp-random.sty
+         The following macros are public ones to be used in the document:
+	   \FPseed=#1		% set seed counter for random number generation
+	   \FPrandom#1		% #1 := a random number between 0 and 1
+     - fp-pas.sty
+         The following macros are public ones to be used in the document:
+           \FPpascal#1#2 	% #1 := #2-th line of the pascal triangle
+     - fp-snap.sty:
+         The following macros are public ones to be used in the document:
+	   \FPround#1#2#3       % #1 := #2 rounded   to #3 digits after '.'
+	   \FPtrunc#1#2#3       % #1 := #2 truncated to #3 digits after '.'
+           \FPclip#1#2		% #1 := #2 with all unnecessary 0's removed
+     - fp-trigo.sty:
+         The following macros are public ones to be used in the document:
+	   \FPpi 		% 3.141592653589793238
+	   \FPsin#1#2		% #1 := sin(#2)
+	   \FPcos#1#2 		% #1 := cos(#2)
+	   \FPsincos#1#2#3	% #1 := sin(#3), #2 := cos(#3)
+	   \FPtan#1#2		% #1 := tan(#2)
+	   \FPcot#1#2 		% #1 := cot(#2)
+	   \FPtancot#1#2#3 	% #1 := tan(#3), #2 := cot(#3)
+   	   \FParcsin#1#2	% #1 := arcsin(#2)
+	   \FParccos#1#2     	% #1 := arccos(#2)
+	   \FParcsincos#1#2#3   % #1 := arcsin(#3), #2 := arccos(#3)
+	   \FParctan#1#2 	% #1 := arctan(#2)
+	   \FParccot#1#2 	% #1 := arccot(#2)
+	   \FParctancot#1#2#3	% #1 := arctan(#3), #2 := arccot(#3)
+     - fp-upn.sty:
+         The following macros are public ones to be used in the document:
+           \FPupn#1#2 		% #1 := eval(#2) where eval evaluates the
+	 upn-expression #2
+	 Known operations are:
+	   +,add,-,sub,*,mul,/,div,abs,neg,min,max,
+	   round,trunc,clip,e,exp,ln,pow,root,pi,sin,cos,
+	   sincos,tan,cot,tancot,arcsin,arccos,arcsincos,
+	   arctan,arccot,arctancot,pop,swap,copy
+	   where
+	     pop  removes the top element
+	     swap exchanges the first two elements
+	     copy copies the top element
+	 Example 1:
+	   The macro call
+             \FPupn\result{17 2.5 + 17.5 - 2 1 + * 2 swap /} 
+	   is equivalent to
+	     \result := ((17.5 - (17 + 2.5)) * (2 + 1)) / 2
+	   and evaluates to
+	     \def\result{-3.000000000000000000}
+	   Afterwards the macro call
+             \FPupn\result{\result{} -1 * 0.2 + sin 2 round}
+	                          ^^ the "{}" is necessary!
+	   is equivalent to
+	     \result := round_2(sin((\result * -1) + 0.2))
+	   and evaluates to
+             \def\result{-0.06}
+	 Example 2:
+	   As "result" is an abbreviation of "\result{}" you may
+	   write
+	     \FPupn{result}{17 2.5 + 17.5 - 2 1 + * 2 swap /}
+	   and
+	     \FPupn{result}{result -1 * 0.2 + sin 2 round}
+	   instead leading to the same results.
+	   This is even true for other macro names using e.g. "x" for "\x{}"
+	   and so on. But be careful with it. We may introduce new constants
+	   in further versions overwriting these abbreviations.
+     - fp-eval.sty:
+         The following macros are public ones to be used in the document:
+           \FPeval#1#2 		% #1 := eval(#2) where eval evaluates the
+	   					 expression #2
+	 ATTENTION: Do not use macro names with \. for its own
+	 Use only the name or the macro surrounded by (, and ) instead,
+	 i.e. do not write "\value{}" but "value" or "(\value)".
+	 This is needed to avoid problems with a prefix "-" of numbers.
+	 (I do not intend to write a more complex parsing routine in future.
+	  But if you do so, just send it to me.
+	 )
+	 Known infix operations are
+	   +, -, *, /, ^ for add, sub, mul, div, pow
+	 Each other operation is a prefix one that needs 
+	 a (comma or colon seperated) list of subexpressions.
+	 Exception: The unary prefix operation - is not known! 
+	 (Use the function neg instead.)
+	 Example 1:
+	   With
+	     \edef\result{11}
+	   and
+	     \FPeval\result{round(root(2,sin(result + 2.5)):2)}
+	   or
+	     \FPeval{result}{round(root(2,sin(result + 2.5)):2)}
+	   \result becomes the value 0.90
+	Example 2:
+	  \FPeval\result{clip(2*3+5*6)}   results to 36
+	  \FPeval\result{clip(2*(3+5)*6)} results to 96    
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-faq.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,174 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+\section{Les différentes macros}
+
+\tkzname{Gnuplot} détermine les points nécessaires pour tracer la courbe. Le nombre de points est fixé par l'option \tkzname{samples}; dans les premiers exemples la valeur du nombre de points est celle donnée par défaut. Ensuite  Tikz va utiliser cette table pour tracer la courbe. C'est donc \tkzname{Tikz} qui trace la courbe.
+
+\subsection{Tracé d'une fonction avec gnuplot \tkzcname{tkzFct}}
+Cette première macro est la plus importante car elle permet de tracer la représentation graphique d'une fonction continue .\hypertarget{tfct}{}
+
+\begin{NewMacroBox}{tkzFct}{\oarg{local options}\var{gnuplot expression}} 
+\emph{La fonction est donnée en utilisant la syntaxe de gnuplot. x est la variable sauf si \tkzname{xstep} est différent de 1, dans ce cas la variable est \tkzcname{x}.}
+
+\medskip
+\begin{tabular}{lll}
+\toprule
+ options             & exemple & explication  \\
+\midrule
+\TAline{gnuplot expression}{x**3}{** représente la puissance $\wedge$}
+\bottomrule
+\end{tabular}
+ 
+\emph{L'expression est de la forme 2*x+1 ; 3*log(x) ; x*exp(x) ; x*x*x+x*x+x. }
+
+Les options sont celles de \TIKZ.
+
+\begin{tabular}{lll}
+\toprule
+options             & défaut & définition     \\
+\midrule
+\TOline{domain}{xmin:xmax}{domaine de la fonction} 
+\TOline{samples}{200}{nombre de points utilisés}
+\TOline{id} {tkzfct}{permet d'identifier les noms des fichiers auxiliaires}
+\TOline{color}{black}{couleur de la ligne}
+\TOline{line width} {1pt}{épaisseur de la ligne}
+\TOline{style} {solid}{style de la ligne}
+\end{tabular}
+\end{NewMacroBox}
+
+\tkzBomb Lorsque \tkzname{xstep} est différent de $1$, il est nécessaire de remplacer $x$ par |\x|.
+\tkzHand Il faut bien évidemment avoir initialisé l'environnement à l'aide  \tkzcname{tkzInit} avant d'appeler \tkzcname{tkzFct}.
+\tkzBomb Attention à ne pas mettre d'espace entre les arguments.   
+%<--------------------------------------------------------------------------->
+\subsection{option : \tkzname{samples}}
+
+Il faut remarquer que pour tracer une droite seulement deux points sont nécessaires, ainsi le code~:
+
+\begin{tkzltxexample}[]
+\tkzFct[{-(},color=red,samples=2,domain =-1:2]{(8-1.5*\x)/2}
+\end{tkzltxexample}
+
+
+donne un fichier xxx.table qui contient ~:
+
+\begin{tkzltxexample}[]
+# Curve 0 of 1, 2 points
+# Curve title: "(8-1.5*x)/2"
+# x y type
+-1.00000 4.75000  i
+2.00000 2.50000  i
+\end{tkzltxexample}
+
+Ce qui est simplement suffisant. Plus simple est dans ce cas, de tracer un segment.
+
+On demande 400 valeurs pour la table qui va permettre le tracé. Par défaut, la valeur choisie est 200.
+
+\medskip
+\begin{tkzexample}[latex=7cm]
+\begin{tikzpicture}[scale=1]
+    \tkzInit[xmax=5,ymax=2]
+    \tkzGrid[sub]
+    \tkzAxeXY
+    \tkzFct[samples=400,domain=.5:5]{1/x}
+\end{tikzpicture}
+\end{tkzexample}
+
+%<--------------------------------------------------------------------------->
+\subsection{options : \tkzname{xstep, ystep}}
+
+
+\begin{tkzexample}[]
+\begin{tikzpicture}
+\tkzInit[xmax= 110,xstep=10,
+         ymax=6,ystep=1]
+\tkzDrawX[label={\textit{Age}},below= -18pt]
+\tkzLabelX
+\tkzDrawY[label={\textit{litres}}]
+\tkzFct[domain = 0.1:100 ]{50/\x}
+\end{tikzpicture} 
+\end{tkzexample}
+
+
+\subsection{Modification de \tkzname{xstep} et \tkzname{ystep}}
+
+Cette fois le domaine s'étend de 0 à 800, les valeurs prises par la fonction de $0$ à $\numprint{2000}$. \tkzname{xstep=100} donc il faut utiliser |\x| à la place de $x$. Une petite astuce au niveau de gnuplot, 1. et 113. permettent d'obtenir une division dans les décimaux sinon la division se fait dans les entiers.
+
+Ensuite, j'utilise les macros pour placer des points
+%<--------------------------------------------------------------------------->
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.5]
+ \tkzInit[xmax=700,xstep=100,ymax=1200,ystep=400]
+ \tkzGrid(0,0)(700,1200)  \tkzAxeXY
+ \tkzFct[color=red,samples=100,line width=0.8pt,domain =0:700]%
+        {(1./90000)*\x*\x*\x-(1./100)*\x*\x+(113./36)*\x}
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{\tkzname{ystep} et les fonctions constantes}
+
+Attention, ici  \tkzname{ystep=6} or \tkzname{gnuplot} donne $80\div=13$. il faut donc écrire $80.$
+
+% \begin{tkzexample}[vbox]
+%  \begin{tikzpicture}[scale=0.4]
+%  \tkzInit[xmax=30,ymax=90,ystep=6]
+%  \tkzAxeX[nograd,noticks,poslabel=right,label=$t$]
+%  \tkzAxeY[nograd,noticks,poslabel=above,label=$P$]
+%  \tkzFct[line width=1pt,color=red,dashed,domain=0:30]{80.0}
+%  \tkzFct[line width=1pt,color=blue,domain=0:30]{80/(1.0+4.0*exp(-0.21*x))}
+%  \tkzText[above,color=red](20,80){$P=80$}
+% \end{tikzpicture}
+% \end{tkzexample}
+
+\subsection{Les fonctions affines ou linéaires}
+Pour obtenir des droites, on peut utiliser \tkzname{gnuplot} même si l'outil est un peu lourd dans ce cas. Pour alléger les calculs, il est possible de ne demander que deux points !
+
+\begin{tkzexample}[vbox]
+ \begin{tikzpicture}[]
+ \tkzInit[ymax=20,ystep=5]
+ \tkzAxeXY
+ \tkzFct[color=red,domain=0:10,samples=2]{2*x+5}
+ \tkzFct[color=blue,domain=0:10,samples=2]{-x+15}
+ \tkzFct[color=green,domain=0:10,samples=2]{7} % 7/5=1
+ \tkzFct[color=purple,domain=0:10,samples=2]{7.}%7.0/5 =1.2  
+\end{tikzpicture}   
+\end{tkzexample}
+   %<--------------------------------------------------------------------------->
+\subsection{Sous-grille}
+ 
+   $y=(x-4)\text{e}^{-0.25x+5}$
+
+Il est possible de dessiner une autre grille.
+
+\begin{tkzexample}[latex=8cm]
+\begin{tikzpicture}
+ \tkzInit[xmin=4,xmax=18,xstep=2,
+          ymin=20,ymax=90,ystep=10]
+ \tkzFct[domain = 5:18]%
+        {(\x-4)*exp(-0.25*\x+5)}
+ \tkzGrid(4,20)(18,90)
+ \tkzAxeXY
+ \tkzGrid[sub,
+          subxstep=0.5,
+          subystep=2,
+          color=brown](6,60)(12,90)
+\end{tikzpicture}
+\end{tkzexample}
+%<--------------------------------------------------------------------------->
+\subsection{Utilisation des macros de \tkzname{tkz-base}}
+Toutes les macros de  \tkzname{tkz-base} sont bien sûr utilisables, en voici quelques exemples.
+
+\begin{center}
+	\begin{tkzexample}[vbox]
+	\begin{tikzpicture}[scale=2]
+	 \tkzInit[xmin=-3,xmax=3, ymin=-1,ymax=3]
+	 \tkzGrid[sub,subxstep=.5,subystep=.5]
+	 \tkzAxeXY
+	 \tkzFct[domain = -3:2]{(2-x)*exp(x)}
+	 \tkzText(-2,1.25){$\mathcal{C}_{f}$}
+	 \tkzDefPoint(2,0){A} \tkzDrawPoint(A)  \tkzLabelPoints(A)
+	 \end{tikzpicture}
+	\end{tkzexample}  
+\end{center}
+
+  
+%<--------------------------------------------------------------------------->
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fppgf.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fppgf.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fppgf.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,60 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+
+\section{Utilisation  \tkzname{pgfmath} et de \tkzname{fp.sty} }
+%--------------------------------------------------------------------------->
+\subsection{\tkzname{pgfmath}}
+
+On peut faire maintenant beaucoup de tracés sans Gnuplot, voici à titre d'exemple et d'après une idée d'Herbert Voss (le membre le plus actif de la communauté Pstricks) un exemple de courbes obtenues avec seulement Tikz.
+
+\begin{center}
+\begin{tkzexample}[]
+\begin{tikzpicture}
+  \def\Asmall{0.7 } \def\Abig{3 } \def\B{20}%Herbert Voss
+  \path[fill=blue!40!black,domain=-pi:pi,samples=500,smooth,variable=\t]%
+          plot({\Abig*cos(\t r)+\Asmall*cos(\B*\t r)},%
+               {0.5*\Abig*sin(\t r)+0.5*\Asmall*sin(\B*\t r)});
+  \def\Asmall{0.7 } \def\Abig{3 } \def\B{10}
+  \path[shift={(1,1)},fill=blue!40!black,%
+        domain=-pi:pi,samples=500,smooth,variable=\t]%
+        plot({\Abig*cos(\t r)+\Asmall*cos(\B*\t r)},%
+             {0.5*\Abig*sin(\t r)+0.5*\Asmall*sin(\B*\t r)});
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+
+\subsection{\tkzname{fp.sty}}
+
+Le principal problème  de \tkzname{fp.sty} se produit lors de l'évaluation par exemple de $(-4)^2$ ce qui peut se traduire avec fp par~: 
+
+\begin{tkzltxexample}[]
+\begin{tikzpicture}
+   \FPeval\result{(-4)^2}
+\end{tikzpicture}
+\end{tkzltxexample} 
+
+ce qui donne une erreur car fp utilise les logarithmes pour faire cette évaluation. \tkzname{tkz-fct.sty} modifie la macro \tkzcname{FP at pow} pour éviter cette erreur
+
+ Pour calculer les pentes des tangentes et pour placer des points sur les courbes, mon module traduit l'expression donnée pour Gnuplot et la stocke dans une commande \tkzcname{tkzFcta}, pour être utilisée ensuite avec les macros \tkzcname{tkzDefPointByFct}\ et \tkzcname{tkzDrawTangentLine}.
+% 
+
+mais si vous voulez placer un point de ce graphe ayant pour abscisse $x=2$, il est alors préférable de choisir la première méthode.
+
+Sinon pour une fonction polynômiale, il sera nécessaire pour utiliser les macros relatives aux images et aux tangentes de mettre le polynôme sous la forme d'Horner.
+Ainsi avec \tkzcname{tkzFct}, l'argument $x^4-2x^3+4x-5$ peut être écrit : |-5+x*(0.5+4*x*(x*(-2+x*1)))|.
+
+Voici ce qu'il faut donc faire :
+
+\begin{center}
+\begin{tkzexample}[]
+\begin{tikzpicture}
+ \tkzInit[xmin=-0.2,xmax=0.2,xstep=.1,
+          ymin=-12,ymax=6,ystep=2]
+ \tkzGrid
+ \tkzAxeXY 
+ \tkzFct[domain = -.1:.2]%
+ {-5+x*(0.5+4*x*(x*(-2+x*1)))}
+\end{tikzpicture}
+\end{tkzexample}
+\end{center} 
+
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fppgf.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-interpolation.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-interpolation.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-interpolation.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,97 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\subsection{Interpolation} 
+
+Il s'agit ici de trouver un polynôme d'interpolation sur l'intervalle $[-1~;~1]$ de la fonction $f$ définie par :
+\[
+  f(x)=\frac{1}{1+8x^2}
+\]
+ 
+Le polynôme d'interpolation est celui obtenu par la méthode de \tkzimp{Lagrange} :
+\begin{equation*}
+\begin{split}
+ P(x) = &1.000000000-0.0000000072x-7.991424876x^2+0.000001079x^3+62.60245358x^4\\
+ & -0.00004253x^5-444.2347594x^6+0.0007118x^7+ 2516.046396x^8 -0.005795x^9\\ &-10240.01777x^{10} +0.025404x^{11}+28118.29594x^{12} -0.05934x^{13} -49850.83249x^{14} \\
+& +0.08097x^{15}+54061.87086x^{16} -0.055620x^{17} -32356.67279x^{18} +0.015440x^{19}\\
+&+8140.046421x^{20}\\
+\end{split}
+\end{equation*}
+
+Ayant utilisé vingt et un points, le polynôme est de degré $20$. Celui-ci est écrit en utilisant la méthode de \tkzimp{Horner}. Dans un premier temps, on demande à gnuplot de tracer la courbe de f en rouge,  enfin on trace le polynôme d'interpolation en bleu. Les points utilisés sont en jaune. 
+
+\subsubsection{Le code}
+\begin{tkzexample}[code only]
+\begin{tikzpicture}
+\tkzInit[xmin=-1,xmax=1,ymin=-1.8,ymax=1.2,xstep=0.1,ystep=0.2]
+\tkzGrid    
+\tkzAxeXY 
+\tkzFct[samples = 400, line width=4pt, color = red,opacity=.5](-1---1){1/(1+8*\x*\x)}
+ \tkzFct[smooth,samples = 400, line width=1pt, color = blue,domain =-1:1]% 
+{1.0+((((((((((((((((((((
+                          8140.04642)*\x
+                            +0.01544)*\x
+                        -32356.67279)*\x
+                            -0.05562)*\x
+                        +54061.87086)*\x
+                            +0.08097)*\x
+                        -49850.83249)*\x
+                            -0.05934)*\x
+                        +28118.29594)*\x
+                            +0.02540)*\x
+                        -10240.01777)*\x
+                            -0.00580)*\x
+                         +2516.04640)*\x
+                            +0.00071)*\x
+                          -444.23476)*\x
+                            -0.00004)*\x
+                           +62.60245)*\x
+                            +0.00000)*\x
+                            -7.99142)*\x
+                            -0.00000)*\x}
+ \tkzSetUpPoint[size=16,color=black,fill=yellow]   
+ \foreach \v in {-1,-0.8,---.,1}{\tkzDefPointByFct[draw](\v)}
+\end{tikzpicture}
+\end{tkzexample}
+
+Le résultat est sur la page suivante où on peut constater le phénomène de \tkzimp{Runge}.
+\subsubsection{la figure}  
+
+\begin{sidewaysfigure}[htbp]
+\centering 
+\begin{tikzpicture}[scale=.75]
+\tkzInit[xmin=-1,xmax=1,ymin=-1.8,ymax=1.2,xstep=0.1,ystep=0.2]
+\tkzGrid
+\tkzAxeXY 
+\tkzFct[samples = 400, line width=4pt, color = red,opacity=.5,domain =-1:1]%
+{1/(1+8*\x*\x)}
+ \tkzFct[samples = 400, line width=1pt, color = blue,domain =-1:1]% 
+{1.0+
+((((((((((((((((((((
+           8140.04642)*\x
+             +0.01544)*\x
+         -32356.67279)*\x
+             -0.05562)*\x
+         +54061.87086)*\x
+             +0.08097)*\x
+         -49850.83249)*\x
+             -0.05934)*\x
+         +28118.29594)*\x
+             +0.02540)*\x
+         -10240.01777)*\x
+             -0.00580)*\x
+          +2516.04640)*\x
+             +0.00071)*\x
+           -444.23476)*\x
+             -0.00004)*\x
+            +62.60245)*\x
+             +0.00000)*\x
+             -7.99142)*\x
+             -0.00000)*\x}
+ \tkzSetUpPoint[size=8,color=black,fill=yellow]   
+ \foreach \v in {-1,-0.8,---.,1}%
+ {\tkzDefPointByFct[draw](\v)}           
+\end{tikzpicture}
+\caption{Interpolation : $\dfrac{1}{1+8x^2}$}
+\end{sidewaysfigure}
+
+\endinput 
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-interpolation.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-label.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-label.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-label.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,37 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+\section{Labels} 
+
+Ce qui est souhaitable, c'est de pouvoir nommer les courbes. Prenons comme exemple, la fonction $f$ définie par :
+
+\[
+   x>0\ \text{et}\ f(x)=\dfrac{x^2+1}{x^3} 
+\]
+
+Il est assez aisé de mettre un titre en utilisant la macro \tkzcname{tkzText} du package \tkzname{tkz-base}. Les coordonnées utilisées font référence aux unités des axes du repère. Pour placer un texte le long de la courbe, le plus simple est choisir un point de la courbe, puis d'utiliser celui-ci pour afficher le texte. 
+
+\begin{tkzltxexample}[num]
+  \tkzDefPointByFct(3)
+  \tkzText[above right](tkzPointResult){${\mathcal{C}}_f$}
+\end{tkzltxexample}
+
+La première ligne détermine un point de la courbe. Ce point est rangé dans \tkzname{tkzPointResult}. Il suffit d'utiliser \tkzcname{tkzText} avec ce point comme argument comme le montre la seconde ligne. Les options de \TIKZ\ permettent d'affiner le résultat.
+
+\subsection{Ajouter un label}
+ 
+\begin{center}
+\begin{tkzexample}[vbox]    
+\begin{tikzpicture}
+  \tkzInit[xmin=0,xmax=10,
+          ymin=0,ymax=1.2,ystep=0.2]
+  \tkzGrid
+  \tkzAxeXY
+  \tkzClip     
+  \tkzFct[thick,color=red,domain=0.55:10]{(\x*\x+\x-1)/(\x**3)}
+  \tkzText(3,-0.3){\textbf{Courbe de} $\mathbf{f}$}
+  \tkzDefPointByFct(3)
+  \tkzText[above right,text=red](tkzPointResult){${\mathcal{C}}_f$}
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-label.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-liste.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-liste.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-liste.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,41 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+\section{Liste de toutes les macros}
+
+\subsection{Liste de toutes les macros fournies par ce package} 
+
+\begin{itemize}
+\item \tkzhname{\hyperlink{tfct}{tkzFct}}[samples=200,domain=-5:5,color=black,id=tkzfct]\var{gnuplot's expression}
+\item \tkzhname{\hyperlink{tptfct}{tkzDefPointByFct}}[draw=false]\parg{point's name} --> tkzPointResult  
+\item \tkzhname{\hyperlink{tdtl}{tkzDrawTangentLine}}[draw=false,color=black,kr=1,kl=1,style=solid,with=a]\parg{point's name} 
+\item \tkzhname{\hyperlink{tda}{tkzDrawArea}}[domain=-5:5,color=lightgray,opacity=.5]
+\item \tkzhname{\hyperlink{tda}{tkzArea}}[domain=-5:5,color = lightgray,opacity=.5]
+\item \tkzhname{\hyperlink{tdafg}{tkzDrawAreafg}}[domain=-5:5,between= a and b]
+\item \tkzhname{\hyperlink{tdafg}{tkzAreafg}}[domain=-5:5,between= a and b]                                                
+\item \tkzhname{\hyperlink{tfpa}{tkzFctPar}}[samples=200,domain=-5:5,
+                             line width=1pt,id=tkzfctpar]{$x(t)$}{$y(t)$}
+\item \tkzhname{\hyperlink{tfpo}{tkzFctPolar}}[samples=200,domain=0:2*pi,
+                             line width=1pt,id=tkzfctpolar]{$\rho(t)$} 
+\item \tkzhname{\hyperlink{tdrs}{tkzDrawRiemannSum}}[interval=1:2,number=10,fill=gray]
+\item \tkzhname{\hyperlink{tdrsi}{tkzDrawRiemannSumInf}} [interval=1:2,opacity=.5,fill=gray]  
+\item \tkzhname{\hyperlink{tdrss}{tkzDrawRiemannSumSup}} [interval=1:2,number=10,fill=gray]  
+\item \tkzhname{\hyperlink{tdrsm}{tkzDrawRiemannSumMid}}[interval=1:2,opacity=1,fill=gray]  
+\end{itemize}  
+
+\subsection{Liste de toutes des macros essentielles de \tkzcname{tkz-base}} 
+
+\begin{itemize}
+\item \tkzcname{tkzInit}[xmin=0,xmax=10,xstep=1,ymin=0,ymax=10,ystep=1]
+\item \tkzcname{tkzAxeX}
+\item \tkzcname{tkzDrawX}
+\item \tkzcname{tkzLabelX}
+\item \tkzcname{tkzAxeY}
+\item \tkzcname{tkzDrawY}
+\item \tkzcname{tkzLabelY}
+\item \tkzcname{tkzGrid}
+\item \tkzcname{tkzClip}
+\item \tkzcname{tkzDefPoint}
+\item \tkzcname{tkzDrawPoint}
+\item \tkzcname{tkzPointShowCoord}
+\item \tkzcname{tkzLabelPoint}
+\end{itemize}  
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-liste.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-main.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-main.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-main.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,186 @@
+% Copyright (C)  2020 Alain Matthes
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+%   http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+% This work has the LPPL maintenance status `maintained'.
+% The Current Maintainer of this work is Alain Matthes
+
+% ``TKZdoc-fct-main '' is the french  documentation of tkz-fct.    
+
+\documentclass[DIV         = 14,
+               fontsize    = 10,
+               headinclude = false,
+               index       = totoc,
+               footinclude = false,
+               twoside,
+               headings    = small
+               ]{tkz-doc}
+\usepackage{etoc}
+\gdef\tkznameofpack{tkz-fct}
+\gdef\tkzversionofpack{2.3c}
+\gdef\tkzdateofpack{2020/04/11}
+\gdef\tkznameofdoc{doc-tkz-tab}
+\gdef\tkzdateofdoc{2020/04/11}
+\gdef\tkzversionofdoc{2.3c} 
+\gdef\tkzauthorofpack{Alain Matthes}
+\gdef\tkzadressofauthor{}
+\gdef\tkznamecollection{AlterMundus} 
+\gdef\tkzurlauthor{http://altermundus.fr}
+\gdef\tkzurlauthorcom{http://altermundus.fr}  
+\gdef\tkzengine{lualatex}
+\usepackage{tkz-tab,tkz-fct,alterqcm}
+\usepackage{tkz-euclide}
+\usetikzlibrary{shapes.geometric}
+\usepackage[colorlinks]{hyperref}
+\hypersetup{
+      linkcolor=Gray,
+      citecolor=Green,
+      filecolor=Mulberry,
+      urlcolor=NavyBlue,
+      menucolor=Gray,
+      runcolor=Mulberry,
+      linkbordercolor=Gray,
+      citebordercolor=Green,
+      filebordercolor=Mulberry,
+      urlbordercolor=NavyBlue,
+      menubordercolor=Gray,
+      runbordercolor=Mulberry,
+      pdfsubject={Graph function with gnuplot},
+      pdfauthor={\tkzauthorofpack},
+      pdftitle={\tkznameofpack},
+      pdfkeywords={tikz, pgf, pdf, pdflatex, graphic, euclide,lualatex,
+      points, maths, graph, gnuplot, angle ,function},
+      pdfcreator={\tkzengine}
+}
+\usepackage{url}
+\def\UrlFont{\small\ttfamily}
+
+\usepackage{fontspec}
+\setmainfont{texgyrepagella}[
+  Extension = .otf,
+  UprightFont = *-regular ,
+  ItalicFont  = *-italic  ,
+  BoldFont    = *-bold    ,
+  BoldItalicFont = *-bolditalic ,
+]
+\setsansfont{texgyreheros}[
+  Extension = .otf,
+  UprightFont = *-regular ,
+  ItalicFont  = *-italic  ,
+  BoldFont    = *-bold    ,
+  BoldItalicFont = *-bolditalic ,
+]
+\setmonofont{lmmono10-regular.otf}[
+  Numbers={Lining,SlashedZero},
+  ItalicFont=lmmonoslant10-regular.otf,
+  BoldFont=lmmonolt10-bold.otf,
+  BoldItalicFont=lmmonolt10-boldoblique.otf,
+]
+\newfontfamily\ttcondensed{lmmonoltcond10-regular.otf}
+%% (La)TeX font-related declarations:
+\linespread{1.05}      % Pagella needs more space between lines
+\usepackage{unicode-math}
+\usepackage{fourier-otf}
+\usepackage{tkzexample}    
+\usepackage{rotating,fancyvrb} 
+\usepackage[french]{babel}
+\usepackage[autolanguage]{numprint}
+
+\usepackage{microtype}  
+\DisableLigatures{encoding = T1,
+                  family   = tt*}   
+\usepackage[parfill]{parskip} 
+\usepackage{array,multirow,multido,booktabs}
+\usepackage{shortvrb,fancyvrb} 
+\usepackage{ipa}  
+\makeatletter
+\renewcommand*\l at subsubsection{\bprot at dottedtocline{3}{3.8em}{4em}}  
+\makeatother
+\AtBeginDocument{\MakeShortVerb{\|}}
+
+\RequirePackage{makeidx} 
+%\@twocolumnfalse
+\makeindex 
+\newcommand*{\E}{\ensuremath{\mathrm{e}}}
+\colorlet{graphicbackground}{white}
+\colorlet{codebackground}{Gray!20}
+% \usepackage[saved]{tkzexample}
+% \def\tkzFileSavedPrefix{tkzFct}
+\def\blue{\color{blue}}
+\def\red{\color{red}}
+\begin{document}
+
+%<--------------------- Première page présentation  ------------------------–>
+\title{\tkznameofpack}
+\date{\today}
+\clearpage
+\thispagestyle{empty}
+\maketitle 
+
+\clearpage
+
+
+\nameoffile{\tkznameofpack} 
+
+\defoffile{\textbf{tkz-fct.sty} est un package pour créer à l'aide de \TIKZ,  des représentations graphiques de fonctions en 2D le plus simplement possible. Il est dépendant de \TIKZ\ et fera partie d'une série de modules ayant comme point commun, la création de dessins utiles dans l'enseignement des mathématiques.}                                 
+
+\presentation
+
+\vspace*{24pt}  
+\noindent\lefthand\ Je souhaite remercier \tkzimp{Till Tantau} pour avoir créé le merveilleux outil \tkzname{\TIKZ}, ainsi que \tkzimp{Michel Bovani} pour \tkzname{fourier}, dont l'association avec \tkzname{utopia} est excellente.
+
+   
+\vspace*{12pt}
+\noindent\lefthand\ Je souhaite remercier aussi  \tkzimp{David Arnold} qui a corrigé un grand nombre d'erreurs et qui a testé de nombreux exemples,  \tkzimp{Wolfgang Büchel} qui a corrigé également des erreurs et a construit de superbes scripts pour obtenir les fichiers d'exemples,  \tkzimp{John Kitzmiller}  et ses exemples, et enfin  \tkzimp{Gaétan Marris} pour ses remarques.  
+
+\vspace*{12pt}
+\noindent\lefthand\ Vous trouverez de nombreux exemples sur mes sites~: 
+\href{http://altermundus.fr}{altermundus.fr}  
+
+\vfill   
+Vous pouvez envoyer vos remarques, et les rapports sur des erreurs que vous aurez constatées à l'adresse suivante~: \href{mailto:al.ma at mac.com}{\textcolor{blue}{Alain Matthes}}.
+ 
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3
+of this license or (at your option) any later version.
+
+
+
+\clearpage
+\tableofcontents
+
+\clearpage
+\newpage
+
+\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}  
+%<---------------------------- the files ------------------------------------>
+
+\include{TKZdoc-fct-why}
+%\include{TKZdoc-fct-installation}
+\include{TKZdoc-fct-compilation}
+\include{TKZdoc-fct-fonctions}
+\include{TKZdoc-fct-point}
+\include{TKZdoc-fct-label}
+\include{TKZdoc-fct-tangent}
+\include{TKZdoc-fct-area}
+\include{TKZdoc-fct-riemann}
+\include{TKZdoc-fct-asymptote}
+\include{TKZdoc-fct-param}
+\include{TKZdoc-fct-polar}
+\include{TKZdoc-fct-symbol}
+\include{TKZdoc-fct-example}
+\include{TKZdoc-fct-interpolation}
+\include{TKZdoc-fct-VDW}
+\include{TKZdoc-fct-bac}
+\include{TKZdoc-fct-fppgf}
+\include{TKZdoc-fct-faq}
+\include{TKZdoc-fct-liste}
+%<--------------------------------------------------------------------------->
+
+\clearpage\newpage
+\printindex
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-main.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-param.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-param.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-param.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,180 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\section{Courbes avec équations paramétrées}
+ \hypertarget{tfpa}{} 
+\begin{NewMacroBox}{tkzFctPar}{\oarg{local options}\marg{$x(t)$}\marg{$y(t)$}}                                                 
+  \emph{$x(t)$ et $y(t)$ sont des expressions utilisant la syntaxe de \tkzname{gnuplot}. La variable est $t$.} 
+
+\medskip
+\begin{tabular}{lll}
+ \toprule
+ options             & exemple & explication                         \\ 
+ \midrule
+\TAline{$x(t)$,$y(t)$}{\tkzcname{tkzFctPar[0:1]}\{\tkzcname{t**3}\}\{\tkzcname{t**2}\}}{$x(t)=t^3$,$y(t)=t^2$ }  
+ \bottomrule
+\end{tabular}  
+
+Les options sont celles de \TIKZ.
+
+\begin{tabular}{lll}
+\toprule
+options             & défaut & définition                         \\ 
+\midrule
+\TOline{domain}{-5:5}{domaine de la fonction}  
+\TOline{samples}{200}{nombre de points utilisés}
+\TOline{id} {tkzfonct}{permet d'identifier les noms des fichiers auxiliaires}
+\TOline{color}{black}{couleur de la ligne}
+\TOline{line width} {0.4pt}{épaisseur de la ligne}
+\TOline{style} {solid}{style de la ligne}
+\bottomrule
+\end{tabular}
+ \end{NewMacroBox}
+
+\subsection{Courbe paramétrée exemple 1}
+
+\begin{align*} 
+x(t) &=t- \sin(t)\\
+y(t) &=1-\cos(t)\\ 
+\end{align*} 
+
+\begin{center}
+\begin{tkzexample}[]
+\begin{tikzpicture}
+  \tkzInit[ymax=2.25,ystep=.5]  \tkzGrid
+  \tkzAxeXY   
+  \tkzFctPar[samples=400,domain=0:2*pi]{(t-sin(t))}{(1-cos(t))}
+\end{tikzpicture} 
+\end{tkzexample}
+\end{center}
+
+
+\newpage
+\subsection{Courbe paramétrée exemple 2}
+
+\begin{align*} 
+x(t) &=t\times \sin(t)\\
+y(t) &=t\times \cos(t)\\ 
+\end{align*}  
+
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmin=-50,xmax=50,xstep=10,
+           ymin=-50,ymax=50,ystep=10]
+  \tkzGrid
+  \tkzAxeXY   
+  \tkzFctPar[smooth,samples=200,domain=0:50]{t*sin(t)}{t*cos(t)} 
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+
+
+\newpage
+\subsection{Courbe paramétrée exemple 3}
+\begin{align*} 
+x(t) &=\exp(t)\times \sin(t)\\
+y(t) &=\exp(t)\times \cos(t)\\ 
+\end{align*}  
+  
+\begin{center}
+\begin{tkzexample}[vbox]  
+\begin{tikzpicture}[scale=1.5]
+  \tkzInit[xmin=-2,xmax=10,xstep=2,ymin=-10,ymax=4,ystep=2]
+  \tkzGrid[sub]
+  \tkzAxeX[step=2] 
+  \tkzAxeY[step=2]  
+  \tkzFctPar[samples=400,domain=-pi:pi]{exp(t)*sin(t)}{exp(t)*cos(t)}
+\end{tikzpicture}
+\end{tkzexample} 
+\end{center}
+
+
+\newpage
+
+\subsection{Courbe paramétrée exemple 4}  
+\begin{align*} 
+x(t) &=\cos^3(t)\\
+y(t) &=\sin^3(t)\\ 
+\end{align*}
+
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmin=-1,xmax=1,xstep=.2,
+           ymin=-1,ymax=1,ystep=.2]
+  \tkzFctPar[color=red,
+      line width=2pt,
+      fill=orange,
+      opacity=.4,
+      samples=400,
+      domain=0:2*pi]{(cos(t))**3}{(sin(t))**3}
+\end{tikzpicture}
+\end{tkzexample} 
+\end{center}
+ 
+
+\newpage
+\subsection{Courbe paramétrée exemple 5}
+Saint Valentin version 1
+\begin{align*} 
+x(t) &=\sin^3(t)\\
+y(t) &=\cos(t)-\cos^4(t)\\ 
+\end{align*}
+
+ 
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=4]
+  \tkzInit[xmin=-1,xmax=1,ymin=-2,ymax=1]
+  \tkzClip 
+  \tkzFctPar[samples=500,smooth,domain=-pi:pi,
+             ball color=red,shading=ball]%
+            {(sin(t))**3}{cos(t)-(cos(t))**4}
+\end{tikzpicture}  
+\end{tkzexample} 
+\end{center}
+
+
+\newpage
+\subsection{Courbe paramétrée exemple 6}
+Saint Valentin version 2 from  \url{http://mathworld.wolfram.com/HeartCurve.html}
+
+\begin{align*} 
+x(t) &=\sin(t)\cos(t)\log(|t|)\\
+y(t) &=\sqrt{(|t|)\cos(t)}\\ 
+\end{align*}  
+
+ 
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.5]
+   \tkzInit[xmin=-.4,xmax=.4,xstep=.1,ymin=0,ymax=.7,ystep=.1]
+   \tkzClip
+   \tkzFctPar[samples=2000,smooth,domain=-1:1,
+             ball color=red,shading=ball]%
+   {sin(t)*cos(t)*log(abs(t))}{sqrt(abs(t))*cos(t)}
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+ 
+ 
+ \newpage
+\subsection{Courbe paramétrée exemple 7}
+Saint Valentin version 3 from  \url{http://en.wikipedia.org/wiki/Heart_(symbol)}
+
+\begin{align*} 
+x(t) &=16\sin^3(t)\\
+y(t) &=13\cos(t)-5\cos(2t)-2cos(3t)-cos(4t)\\ 
+\end{align*}  
+
+ 
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.75]
+  \tkzInit[xmin=-20,xmax=20,xstep=5,ymin=-25,ymax=15,ystep=5]  
+  \tkzClip
+  \tkzFctPar[samples=400,smooth,domain=0:6.28,
+             ball color=red,shading=ball]%
+   {16*(sin(t))**3}{13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t)}
+\end{tikzpicture} 
+\end{tkzexample}           
+\endinput
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-param.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-point.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-point.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-point.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,165 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex   
+
+\section{Placer un point sur une courbe} \hypertarget{tptfct}{} 
+
+\begin{NewMacroBox}{tkzDefPointByFct}{\parg{$decimal number$}} 
+\emph{Cette macro permet de calculer l'image par la fonction définie précédemment, d'un nombre décimal.}
+
+\medskip
+\begin{tabular}{lll}
+ \toprule
+ argument             & exemple & explication                         \\ 
+ \midrule
+ \TAline{decimal number}{\tkzcname{tkzDefPointByFct(0)}}{définit un point d'abscisse $0$} 
+ \bottomrule
+\end{tabular}
+
+\begin{tabular}{lll}
+ option             & defaut & explication                         \\ 
+ \midrule
+ \TOline{draw}{false}{permet de tracer le point avec le style courant} 
+ \TOline{with}{a}{permet de choisir la fonction}
+ \TOline{ref}{empty}{permet de donner une référence au point}
+ \bottomrule
+\end{tabular}
+
+\emph{C'est donc la dernière fonction définie qui est utilisée. Si une autre fonction, est utilisée alors il faut utiliser l'ancienne macro \tkzcname{tkzFctPt}. Le point est défini sous un nom générique \tkzname{tkzPointResult} mais non tracé. Afin de le tracer il faut utiliser la macro \tkzcname{tkzDrawPoint}.}
+\end{NewMacroBox}
+
+\subsection{Exemple avec \tkzcname{tkzGetPoint}}
+Cela permet de référencer le point créé par \tkzcname{tkzDefPointByFct}.
+
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmin=-2,xmax=2,xstep=1,
+           ymin=-8,ymax=24,ystep=8]
+  \tkzGrid  \tkzAxeXY
+  \tkzFct[domain =-1.5:1]{3.0-1.3125*x**5-2.5*x**3} 
+  \tkzDefPointByFct(.5)  \tkzGetPoint{A}\tkzDrawPoint(A)
+  \tkzLabelPoint[above right](A){$A_0$}
+\end{tikzpicture} 
+\end{tkzexample}
+\end{center}
+
+
+\newpage
+\subsection{Exemple avec \tkzcname{tkzGetPoint} et \tkzname{tkzPointResult}}
+Il est possible de ne pas référencer le point et d'utiliser la référence générique.
+
+\begin{tkzexample}[latex=7cm,small] 
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmin=-2,xmax=2,xstep=1,
+           ymin=-8,ymax=24,ystep=8]
+  \tkzGrid
+  \tkzAxeXY
+  \tkzFct[domain =-1.5:1]{3.0-1.3125*x**5-2.5*x**3} 
+  \tkzDefPointByFct(.5)
+  \tkzDrawPoint(tkzPointResult)
+  % ou bien \tkzDefPointByFct[draw](.5) 
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Options \tkzname{draw} et \tkzname{ref}} 
+Cela permet de tracer un point directement avec les options usuelles donc sans possibilités de personnaliser et d'attribuer une référence à ce point.
+
+\begin{tkzexample}[latex=7cm,small]
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmin=-2,xmax=2,xstep=1,
+           ymin=-8,ymax=24,ystep=8]
+  \tkzGrid
+  \tkzAxeXY
+  \tkzFct[domain =-1.5:1]{3.0-1.3125*x**5-2.5*x**3}
+  \tkzDefPointByFct[draw,ref=A](.5)
+  \tkzLabelPoint[above right](A){$a$}
+\end{tikzpicture} 
+\end{tkzexample} 
+
+\newpage
+\subsection{Placer des points sans courbe} 
+Attention, ceci est délicat. Il suffit de définir la macro \tkzcname{tkzFctLast} qui est la dernière expression traduite avec la syntaxe de \tkzname{fp.sty}. Les points sont donc déterminer avec \tkzname{fp.sty}.
+  
+\begin{tkzexample}[]
+\begin{tikzpicture}[xscale=3,yscale=2]
+  \tkzInit[xmin=-2,xmax=2,xstep=1,
+           ymin=-8,ymax=24,ystep=8]
+  \tkzGrid
+  \tkzAxeXY 
+  \global\edef\tkzFctLast{3.0-1.3125*x^5-2.5*x^3}
+  \foreach \va in {-1.5,-1.4,...,1}{%
+      \tkzDefPointByFct[draw](\va)}
+\end{tikzpicture} 
+\end{tkzexample}
+  
+\newpage\null
+\subsection{Placer des points sans se soucier des coordonnées}
+
+Cette fois le domaine s'étend de 0 à 800, les valeurs prises par la fonction de $0$ à $\numprint{2000}$. \tkzname{xstep=100} donc il faut utliser |\x| à la place de $x$. Une petite astuce au niveau de gnuplot, 1. et 113. permettent d'obtenir une division dans les décimaux sinon la division se fait dans les entiers.
+
+Ensuite, j'utilise les macros pour placer des points
+
+\begin{tkzexample}[]
+\begin{tikzpicture}[scale=1.6]
+  \tkzInit[xmin  = 0,  xmax  = 800,
+           ymin  = 0,  ymax  = 2000,
+           xstep = 100,ystep = 400]
+  \tkzGrid
+  \tkzAxeXY
+  \tkzFct[color  = blue, 
+          domain = 0:800]%
+        {(1./90000)*\x*\x*\x-(1./100)*\x*\x+(113./36)*\x}
+  \foreach \va in {0,450,800}{%
+     \tkzDefPointByFct[draw](\va)}
+\end{tikzpicture}
+\end{tkzexample}
+
+\newpage
+\subsection{Placer des points avec deux fonctions}
+
+\medskip
+Revoir \tkzcname{tkzSetUpPoint}  et \tkzcname{tkzText} du module \tkzname{tkz-base.sty}
+
+
+\begin{tkzexample}[code only]
+\begin{tikzpicture}[scale=4]
+  \tkzInit[xmax=3,ymax=2]
+  \tkzAxeX
+  \tkzAxeY
+  \tkzGrid(0,0)(3,2)
+  \tkzFct[color = red,domain = 1./3:3]{0.125*(3*x-1)+0.375*(3*x-1)/(x*x)}
+  \tkzFct[color = green,domain = 1./3:3]{0.125*(3*x-1)}
+  \tkzSetUpPoint[shape=circle,  size = 10, color=black, fill=lightgray]
+  \tkzDefPointByFct[draw,with = a](1) 
+  \tkzDefPointByFct[draw,with = a](2)
+  \tkzDefPointByFct[draw,with = a](3)
+  \tkzDefPointByFct[draw,with = b](3)
+  \tkzDefPointByFct[draw,with = b](1/3)
+  \tkzText[draw,color= red,fill=red!20](1,1.5) %
+          {$f(x)=\frac{1}{8}(3x-1)+\frac{3}{8}%
+           \left(\frac{3x-1}{x^2}\right)$}
+  \tkzText[draw,color= green!50!black,fill=green!20]%
+               (2,0.3){$g(x)=\frac{1}{8}(3x-1)$}
+\end{tikzpicture}
+\end{tkzexample}
+
+\begin{tikzpicture}[scale=4]
+  \tkzInit[xmax=3,ymax=2]
+  \tkzAxeX
+  \tkzAxeY
+  \tkzGrid(0,0)(3,2)
+  \tkzFct[color = red,domain = 1./3:3]{0.125*(3*x-1)+0.375*(3*x-1)/(x*x)}
+  \tkzFct[color = green,domain = 1./3:3]{0.125*(3*x-1)}
+  \tkzSetUpPoint[shape=circle,  size = 10, color=black, fill=lightgray]
+  \tkzDefPointByFct[draw,with = a](1) 
+  \tkzDefPointByFct[draw,with = a](2)
+  \tkzDefPointByFct[draw,with = a](3)
+  \tkzDefPointByFct[draw,with = b](3)
+  \tkzDefPointByFct[draw,with = b](1/3)
+  \tkzText[draw,color= red,fill=red!20](1,1.5) %
+          {$f(x)=\frac{1}{8}(3x-1)+\frac{3}{8}%
+           \left(\frac{3x-1}{x^2}\right)$}
+  \tkzText[draw,color= green!50!black,fill=green!20]%
+               (2,0.3){$g(x)=\frac{1}{8}(3x-1)$}
+\end{tikzpicture}  
+
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-point.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-polar.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-polar.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-polar.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,136 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\section{Courbes en coordonnées polaires}
+
+ \hypertarget{tfpo}{}   
+\begin{NewMacroBox}{tkzFctPolar}{\oarg{local options}\marg{$f(t)$}}                                                 
+  \emph{$f(t)$ est une expression utilisant la syntaxe de \tkzname{gnuplot}. } 
+
+\medskip
+\begin{tabular}{lll}
+ \toprule
+ options             & exemple & explication                         \\ 
+ \midrule
+\TAline{$x(t)$,$y(t)$}{\tkzcname{tkzFctPar[0:1]}\{\tkzcname{t**3}\}\{\tkzcname{t**2}\}}{$x(t)=t^3$,$y(t)=t^2$ }  
+ \bottomrule
+\end{tabular}
+
+Les options sont celles de \TIKZ.
+
+\begin{tabular}{lll}
+\toprule
+options             & défaut & définition                         \\ 
+\midrule
+\TOline{domain}{0:2*pi}{domaine de la fonction}  
+\TOline{samples}{200}{nombre de points utilisés}
+\TOline{id} {tkzfonct}{permet d'identifier les noms des fichiers auxiliaires}
+\TOline{color}{black}{couleur de la ligne}
+\TOline{line width} {0.4pt}{épaisseur de la ligne}
+\TOline{style} {solid}{style de la ligne}
+\bottomrule
+\end{tabular}
+
+\medskip
+\emph{ \tkzname{gnuplot} définit  $\pi$ avec \tkzname{pi} et \tkzname{fp.sty} avec \tkzcname{FPpi}. Les valeurs qui déterminent le domaine sont évaluées par \tkzname{fp.sty}. Il est possible d'utiliser soit \tkzname{pi}, soit  \tkzcname{FPpi}.}
+ \end{NewMacroBox}
+
+\subsection{Équation polaire exemple 1}
+
+$ \rho(t)= \cos(t)*\sin(t) $
+
+\begin{tkzexample}[latex=8cm]    
+\begin{tikzpicture}[scale=0.75] 
+ \tkzInit [xmin=-0.5,xmax=0.5,
+           ymin=-0.5,ymax=0.5,
+           xstep=0.1,ystep=.1]   
+ \tkzDrawX   \tkzDrawY
+ \tkzFctPolar[domain=-2*pi:2*pi]{cos(t)*sin(t)}
+\end{tikzpicture}    
+\end{tkzexample}
+
+\newpage
+\subsection{Équation polaire exemple 2} 
+$ \rho(t)= \cos(2*t)  $
+  
+\begin{center}
+\begin{tkzexample}[] 
+\begin{tikzpicture}[scale=1.25] 
+   \tkzInit [xmin=-1,xmax=1,
+             ymin=-1,ymax=1, 
+             xstep=.2,ystep=.2]
+  \tkzDrawX   \tkzDrawY
+  \tkzFctPolar[domain=0:2*pi]{cos(2*t)}
+\end{tikzpicture}    
+\end{tkzexample} 
+\end{center}
+
+ 
+ \newpage
+ \subsection{Équation polaire Heart} 
+From Mathworld :  \url{http://mathworld.wolfram.com/HeartCurve.html}
+
+ $\rho(t)= 2-2*\sin(t)+\sin(t)*\sqrt(|\cos(t)|)/(\sin(t)+1.4  $
+ 
+\vspace{2cm}
+\begin{center}
+\begin{tkzexample}[]    
+\begin{tikzpicture}[scale=3] 
+	\tkzInit[xmin=-5,xmax=5,ymin=-5,ymax=5]
+	\tkzFctPolar[domain     = -pi:pi,
+	             samples    = 800,
+	             ball color = red,
+	             shading    = ball]%
+	  {2-2*sin(t)+sin(t)*sqrt(abs(cos(t)))/(sin(t)+1.4)}
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+                   
+ \subsection{Équation polaire exemple 4}    
+ $\rho(t)= 1-sin(t)$
+
+\vspace{2cm}
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=4] 
+ \tkzInit [xmin=-5,xmax=5,ymin=-5,ymax=5,xstep=1,ystep=1]
+ \tkzFctPolar[domain=0:2*pi,samples=400]{ 1-sin(t) }
+\end{tikzpicture}
+\end{tkzexample} 
+\end{center}
+
+   
+   \newpage
+\subsection{Équation polaire Cannabis ou Marijuana Curve} 
+ Cannabis curve from mathworld : \url{http://mathworld.wolfram.com/CannabisCurve.html}
+ 
+$ \rho(t)=(1+.9*\cos(8*t))*(1+.1*\cos(24*t))*(1+.1*\cos(200*t))*(1+\sin(t)) $
+ 
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=2.5] 
+  \tkzInit [xmin=-5,xmax=5,ymin=-5,ymax=5,xstep=1,ystep=1]
+  \tkzFctPolar[domain=0:2*pi,samples=1000]%
+  { (1+.9*cos(8*t))*(1+.1*cos(24*t))*(1+.1*cos(200*t))*(1+sin(t)) }  
+\end{tikzpicture}  
+\end{tkzexample}
+\end{center}
+
+ 
+\newpage
+\subsection{Scarabaeus  Curve}
+From mathworld : \url{http://mathworld.wolfram.com/Scarabaeus.html}
+
+$\rho(t)=1.6*\cos(2*t)-3*\cos(t) $
+
+\vspace{2cm}
+\begin{center}
+\begin{tkzexample}[]   
+\begin{tikzpicture}[scale=2.5] 
+	\tkzInit [xmin=-5,xmax=5,ymin=-5,ymax=5,xstep=1,ystep=1]
+	\tkzFctPolar[domain=0:2*pi,samples=400]{1.6*cos(2*t)-3*cos(t) }  
+	\end{tikzpicture} 
+	\end{tkzexample}
+\end{center}
+
+
+\endinput
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-polar.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-riemann.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-riemann.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-riemann.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,86 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex  
+\section{Sommes de Riemann}
+ \hypertarget{tdrs}{}   
+ 
+\begin{NewMacroBox}{tkzDrawRiemannSum}{\oarg{local options}\marg{$f(t)$}}                                                 
+  Cette macro permet de représenter les rectangles intervenant dans une somme de Riemann. Les options sont celles de \TIKZ, plus 
+ 
+\begin{tabular}{lll}
+\toprule
+options             & défaut & définition                         \\ 
+\midrule
+\TOline{iterval}{1:2}{l'intervalle sur lequel est appliqué la méthode}  
+\TOline{number}{10}{nombre de sous-intervalles  utilisés}
+\bottomrule
+\end{tabular}
+
+Possible est de réunir les quatres macros et de choisir la méthode avec une option.
+\end{NewMacroBox}
+
+\subsection{Somme de Riemann}
+
+\begin{tkzexample}[vbox] 
+\begin{tikzpicture}[scale=3.5]
+\tkzInit[xmax=3,ymax=1.75]
+\tkzAxeXY 
+\tkzGrid(0,0)(3,2)
+\tkzFct[color = red, domain =1/3:3]{0.125*(3*x-1)+0.375*(3*x-1)/(x*x)}
+\tkzDrawRiemannSum[fill=green!40,opacity=.2,color=green,
+                   line width=1pt,interval=1./2:exp(1),number=10]
+\end{tikzpicture}  
+\end{tkzexample}
+
+\newpage 
+ \hypertarget{tdrsi}{}   
+ 
+\begin{NewMacroBox}{tkzDrawRiemannSumInf}{\oarg{local options}}                                                 
+C'est une variante de la macro précédente mais les rectangles sont toujours sous la courbe.
+ \end{NewMacroBox}  
+
+\subsection{Somme de Riemann Inf}
+
+\begin{tkzexample}[vbox]  
+\begin{tikzpicture}[scale=1.75]
+\tkzInit[xmin=-3,xmax=6,ymin=-2,ymax=14,ystep=2]
+\tkzDrawX \tkzDrawY
+\tkzFct[line width=2pt,color = red, domain =-3:6]{(-\x-2)*(\x-5)} 
+\tkzDrawRiemannSumInf[fill=green!40,opacity=.5,interval=-1:5,number=10] 
+\end{tikzpicture}   
+\end{tkzexample}
+
+\newpage 
+ \hypertarget{tdrss}{}   
+ \begin{NewMacroBox}{tkzDrawRiemannSumSup}{\oarg{local options}}                                                 
+C'est une variante de la macro précédente mais les rectangles sont toujours au-dessus de  la courbe. 
+ \end{NewMacroBox}
+
+\subsection{Somme de Riemann Inf et Sup} 
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.75]
+  \tkzInit[xmin=-3,xmax=6,ymin=-2,ymax=14,ystep=2]
+  \tkzDrawX \tkzDrawY
+  \tkzFct[line width=2pt,color = red, domain =-3:6]{(-\x-2)*(\x-5)}
+  \tkzDrawRiemannSumSup[fill=blue!40,opacity=.5,interval=-1:5,number=10] 
+  \tkzDrawRiemannSumInf[fill=green!40,opacity=.5,interval=-1:5,number=10] 
+\end{tikzpicture}
+\end{tkzexample}
+ 
+
+\newpage
+ \hypertarget{tdrsm}{}        
+ \begin{NewMacroBox}{tkzDrawRiemannSumMid}{\oarg{local options}}                                                 
+C'est une variante de la macro précédente mais les rectangles sont à cheval sur la courbe. 
+ \end{NewMacroBox}
+
+\subsection{Somme de Riemann Mid}
+
+\begin{tkzexample}[vbox] 
+ \begin{tikzpicture}[scale=1.75]
+\tkzInit[xmin=-3,xmax=6,ymin=-2,ymax=14,ystep=2]
+\tkzDrawX \tkzDrawY
+\tkzFct[line width=2pt,color = red, domain =-3:6]{(-\x-2)*(\x-5)}
+\tkzDrawRiemannSumMid[fill=blue!40,opacity=.5,interval=-1:5,number=10] 
+\end{tikzpicture}
+\end{tkzexample}
+
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-riemann.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-symbol.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-symbol.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-symbol.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,43 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+\section{Symboles}
+Certains ajoutent aux courbes des symboles afin de donner des indications supplémentaires au lecteur. Voici quelques exemples possibles~:
+
+\begin{tikzpicture} 
+\draw[thick,(-)](0,0)--(2,2); 
+\draw[thick,o-o](2,0)--(4,2);
+\draw[thick,)-(](4,0)--(6,2);   
+\draw[thick,*-*](6,0)--(8,2);   
+  \end{tikzpicture}
+  
+\newcommand{\cred}[1]{{\color{red}#1}}
+\newcommand{\cgreen}[1]{{\color{green!50!black}#1}}
+\newcommand{\cblue}[1]{{\color{blue}#1}} 
+
+L'exemple suivant est de \tkzname{Simon Schläpfer}~:
+
+On veut tracer
+\[
+y=\left\{\begin{array}{ll}
+    \cred{8-1.5x}&,\text{if }x<2\\
+    \cblue{4}&,\text{if }2 \leq x \leq 3\\
+    \cgreen{2x-4}&,\text{if } x>3
+  \end{array}
+\right.
+\]   
+
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}
+  \tkzInit[xmin=-1,xmax=6,ymin=0,ymax=10,xstep=1,ystep=1]
+  \tkzGrid[color=gray]
+  \tkzAxeXY 
+  \tkzFct[{-[},color=red,domain =-1:2,samples=2]{8-1.5*\x} 
+  \tkzFct[{[-]},color=blue,domain =2:3,samples=2]{4}
+  \tkzFct[{]-},color=green!50!black,domain =3:6,samples=2]{2*\x-4}
+\end{tikzpicture}
+\end{tkzexample}
+  
+\end{center}
+
+  
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-symbol.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-tangent.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-tangent.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-tangent.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,236 @@
+\section{Macros pour tracer des tangentes }
+
+Si une seule fonction est utilisée, elle est stockée avec comme nom
+\tkzcname{tkzFcta}, si une deuxième fonction est utilisée, elle sera stockée avec comme nom \tkzcname{tkzFctb}, et ainsi de suite\ldots Si plusieurs fonctions sont présentent dans un même environnement alors l'option \tkzname{with} permet de choisir celle qui sera mise à contribution.
+
+\tkzHandBomb Il faut bien évidemment, avoir initialisé l'environnement à l'aide \tkzcname{tkzInit}, avant d'appeler \tkzcname{tkzFct} et \tkzcname{tkzDrawTangentLine}. Pour la longueur des vecteurs représentants les demi-tangentes, il faut attribuer une valeur aux coefficients \tkzname{kl} et \tkzname{kr}. $kl=0$ ou $kr=0$ annule le dessin de la demi-tangente correspondante (l=left) et (r=right). Si \tkzname{xstep=1} et \tkzname{ystep=1} alors si la pente est égale à 1, la demi-tangente a pour mesure $\sqrt{2}$.
+Dans les autres cas si AT est la longueur de la demi-tangente et si $p$ est la pente alors $\vec{AT}$ a pour coordonnées (\tkzname{kl},\tkzname{kl*p}.) 
+
+
+\subsection{Représentation d'une tangente \tkzcname{tkzDrawTangentLine}}
+\hypertarget{tdtl}{} 
+\begin{NewMacroBox}{tkzDrawTangentLine}{\oarg{local options}\parg{a}} 
+\emph{On l'emploie soit juste après l'utilisation de \tkzcname{tkzFct}, sinon il faut donner la référence de la fonction à l'aide de l'option \tkzname{with}.}
+
+\medskip
+\begin{tabular}{lll}
+ \toprule
+ options             & exemple & explication    \\ 
+ \midrule
+ \TAline{a}{\tkzcname{tkzDrawTangentLine(0)}}{tangente au point d'abscisse $0$} 
+ \bottomrule
+\end{tabular}
+
+Les options sont celles de \TIKZ comme \tkzname{color} ou \tkzname{style} plus les options suivantes
+
+\begin{tabular}{lll}
+\toprule
+options             & défaut & définition                         \\ 
+\midrule
+\TOline{draw}{false}{booléen si true alors le point de contact est tracé} 
+\TOline{with}{a}{permet de choisir une fonction} 
+\TOline{kr}{1}{coefficient pour la longueur de la demi-tangente à droite}
+\TOline{kl} {1}{coefficient pour la longueur de la demi-tangente à gauche}
+\end{tabular}
+\end{NewMacroBox}
+%<--------------------------------------------------------------------------->
+\subsection{Tangente avec \tkzname{xstep} et \tkzname{ystep} différents de 1}
+
+\begin{tikzpicture}[xscale=1.5]
+ \tikzset{tan style/.style={-}}
+ \tkzInit[xmin=0,xmax=800,xstep=100,ymin=0,ymax=1800,ystep=400]
+ \tkzGrid[color=brown,sub,subxstep=50,subystep=200](0,0)(800,1800)
+ \tkzAxeXY
+ \tkzFct[color=red,samples=100,domain = 0:800]%
+    {(1./90000)*\x*\x*\x-(1./100)*\x*\x+(113./36)*\x}
+ \tkzDrawTangentLine[draw,color=blue,kr=300,kl=450](450)
+  \tkzText[draw,color = black,fill = brown!50,opacity  = 0.8](300,1200)%
+ {$f(x)=\dfrac{1}{90000}x^3 -\dfrac{1}{{100}}x^2 +\dfrac{113}{36}x$}
+ \end{tikzpicture}
+
+Il faut remarquer qu'il n'est point nécessaire  de faire des calculs. Il suffit d'utiliser les valeurs qui correspondent aux graduations.
+
+On peut changer le style des tangentes avec,  par exemple,
+
+\tkzcname{tikzset\{tan style/.style=\{-\}\}}  par défaut  on a :
+
+\tkzcname{tikzset\{tan style/.style=\{->,>=latex\}\}}    
+
+\begin{tkzexample}[code only]  
+\begin{tikzpicture}[xscale=1.5]
+ \tikzset{tan style/.style={-}} 
+ \tkzInit[xmin=0,xmax=800,xstep=100,
+          ymin=0,ymax=1800,ystep=400]
+ \tkzGrid[color=brown,sub,subxstep=50,subystep=200](0,0)(800,1800)
+ \tkzAxeXY
+ \tkzFct[color=red,samples=100,domain = 0:800]%
+    {(1./90000)*\x*\x*\x-(1./100)*\x*\x+(113./36)*\x}
+ \tkzDrawTangentLine[color=blue,kr=300,kl=450,coord](450)
+ \tkzText[draw, color    = black,%
+           fill     = brown!50, opacity  = 0.8](300,1200)%
+ {$f(x)=\dfrac{1}{90000}x^3 -\dfrac{1}{{100}}x^2 +\dfrac{113}{36}x$}
+ \end{tikzpicture}
+ \end{tkzexample}
+%<--------------------------------------------------------------------------->     
+\subsection{Les options \tkzname{kl}, \tkzname{kr} et l'option \tkzname{draw}}
+Si l'un des deux nombres \tkzname{kl} ou \tkzname{kr} est nul alors seulement une demi-tangente est tracée sinon ces nombres représentent un pourcentage de la longueur initiale de la tangente. L'option \tkzname{draw} permet de tracer le point de contact.
+
+\begin{tkzexample}[]
+  \begin{tikzpicture}[scale=1.5]
+   \tkzInit[xmin=-3,xmax=4,ymin=-4,ymax=2]
+   \tkzGrid   \tkzDrawXY \tkzClip
+   \tkzFct[domain = -2.15:3.2]{(-x*x)+2*x}
+   \tkzDefPointByFct[draw](2)
+   \tkzDrawTangentLine[kl=0,draw](-1) 
+   \tkzDrawTangentLine[draw](1) 
+   \tkzDrawTangentLine[kr=0,draw](3)  
+   \tkzRep
+ \end{tikzpicture} 
+\end{tkzexample}
+
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+\subsection{Tangente et l'option \tkzname{with}}
+Soit on place la macro  \tkzcname{tkzDrawTangentLine}    après la ligne
+ qui définit la première fonction $(a)$, soit  on trace une autre fonction avant, et dans ce cas, il est nécessaire de préciser quelle fonction sera utilisée. pour se faire, on utilise l'option \tkzname{with}.
+
+\begin{tkzexample}[]  
+\begin{tikzpicture}[scale=4]
+ \tkzInit[xmax=3,ymax=2]
+ \tkzAxeXY 
+ \tkzGrid(0,0)(3,2)
+ \tkzFct[color   = red, domain = 1/3:3]{0.125*(3*x-1)+0.375*(3*x-1)/(x*x)}
+ \tkzFct[color   = blue, domain = 1/3:3]{0.125*(3*x-1)}
+ \tkzDrawTangentLine[with=a,
+                     color=blue](1)
+ \tkzText[draw,
+          color= red,
+          fill=brown!50](1,1.5)%
+          {$f(x)=\frac{1}{8}(3x-1)+\frac{3}{8}\left(\frac{3x-1}{x^2}\right)$}
+ \tkzText[draw,
+          color= green!50!black,
+          fill=brown!50](2,0.3)%
+          {$g(x)=\frac{1}{8}(3x-1)$}
+\end{tikzpicture}
+\end{tkzexample}
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+\subsection{Quelques tangentes }
+
+\begin{tkzexample}[]
+\begin{tikzpicture}[scale=2]
+  \tkzInit[xmin=-5,xmax=2,ymin=-1, ymax=3]
+  \tkzDrawX
+  \tkzDrawY
+  \tkzText[draw,color = red,fill = orange!20]( 1.5,1.5){$y = xe^x$}
+  \tkzFct[color = red, domain = -5:1]{x*exp(x)}%
+  \tkzDrawTangentLine[color=blue,kr=2,kl=2](-2)
+  \tkzDrawTangentLine[color=green,kr=2,kl=2](-1)
+  \tkzDrawTangentLine[color=blue](0)
+  \tkzDrawTangentLine[color=blue,kr=0](1)
+\end{tikzpicture}
+\end{tkzexample}
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+\subsection{Demi-tangentes }
+Il faut remarquer que les tangentes sont en réalité deux demi-tangentes ce qui permet d'obtenir simplement le résultat ci-dessous.
+
+Poosible sont les écritures \tkzname{(((x+1)*x)*x)**0.5},   \tkzname{(x**3+x**2)**0.5} et \tkzname{(x*x*x+x*x)**(0.5)}.
+
+Dans cet exemple, les deux demi-tangentes sont obtenues automatiquement :
+
+\begin{tkzexample}[]
+ \begin{tikzpicture}[scale=2.75]
+     \tkzInit[xmin=-2,xmax=3,ymax=3]
+     \tkzGrid[color=orange](-2,0)(3,3)
+     \tkzAxeX
+     \tkzAxeY
+     \tkzFct[color = red ,domain = -1:2]{(((x+1)*x)*x)**0.5}        
+     \tkzDrawTangentLine(0)
+     \tkzText[draw,color = red,fill = orange!20](2,1){$f(x)=\sqrt{x^3+x^2}$}
+ \end{tikzpicture}
+\end{tkzexample}
+%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
+\subsection{Demi-tangentes Courbe de Lorentz }
+
+Ici, on ne veut que les demi-tangentes comprises entre 0 et 1, pour cela il suffit dans un cas de donner la valeur 0 à \tkzname{kr} et dans l'autre à \tkzname{kl}.
+
+\begin{center}
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.25]
+  \tkzInit[xmax=1,ymax=1,xstep=0.1,ystep=0.1]
+  \tkzGrid(0,0)(1,1)
+  \tkzAxeXY
+  \tkzFct[color = red,thick, domain =0:1]{(exp(\x)-1)/(exp(1)-1)}
+  \tkzSetUpPoint[size=4]
+  \tkzDrawTangentLine[draw, kl = 0,  kr = 0.4](0)
+  \tkzDrawTangentLine[draw, kl = 0.4,kr = 0  ](1)   
+  \tkzText[draw,color = red,fill = orange!20](0.5,0.6)%
+          {$f(x)=\dfrac{\text{e}^x-1}{\text{e}-1}$}
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+%<--------------------------------------------------------------------------->
+\subsection{Série de tangentes}
+
+
+\begin{tkzexample}[vbox]  
+\begin{tikzpicture}[scale=2]
+  \tikzstyle{tan style}=[-]
+  \tkzInit[xmin=-5,xmax=2,ymin=-1,ymax=3]
+  \tkzDrawXY
+  \tkzText[draw,color = red, fill = orange!20](1.5,1.5){$y = xe^x$}
+  \tkzFct[line width = 0.01 pt,color = red, domain = -5:1]{x*exp(x)}
+  \foreach \x in {-4,-3.8,...,0}{%
+    \tkzDrawTangentLine[color=blue,line width=.4pt,kr=1,kl=0.5](\x)}
+  \foreach \x in {0.6,0.8,1}{% 
+     \tkzDrawTangentLine[color=blue,line width=.4pt, kr=0,kl=0.5](\x)} 
+\end{tikzpicture}
+\end{tkzexample}
+%<--------------------------------------------------------------------------->
+\subsection{Série de tangentes sans courbe}
+
+Pour cela, il faut définir la dernière expression avec la syntaxe de \tkzname{fp.sty}.
+
+Définition de \tkzcname{tkzFctLast}
+\begin{tkzltxexample}[]
+	 \global\edef\tkzFctLast{x*exp(x)} 
+\end{tkzltxexample}
+	    
+\subsubsection{Utilisation de \tkzcname{tkzFctLast}} 
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=2]
+  \tikzstyle{tan style}=[-]
+  \tkzInit[xmin=-5,xmax=2,ymin=-1,ymax=3]
+  \tkzDrawXY
+  \tkzText[draw,color = red, fill = orange!20](1.5,1.5){$y = xe^x$}
+  \global\edef\tkzFctLast{x*exp(x)}% c'est la ligne importante 
+  \foreach \v in {-4,-3.8,...,0}{%
+    \tkzDrawTangentLine[color=blue,line width=.4pt,kl=1](\v)}
+  \foreach \v in {0.6,0.8,1}{% 
+    \tkzDrawTangentLine[color=blue,line width=.4pt,kr=0,kl=.75](\v)} 
+\end{tikzpicture} 
+\end{tkzexample}
+
+
+\newpage
+\subsection{Calcul de l'antécédent}
+  
+Un problème surgit si on emploie une expression contenant des parenthèses dans l'argument, ainsi \tkzname{(\{1/exp(1)\})} est correct  mais \tkzname{(1/exp(1))} donne une erreur. Il est aussi possible d'évaluer l'antécédent postérieurement comme cela~:
+\subsubsection{Valeur numérique de l'antécédent}  
+\begin{tkzltxexample}[]  \FPeval\vx{1/exp(1)}
+\end{tkzltxexample} 
+
+\subsubsection{utilisation de la valeur numérique} 
+\begin{center}
+\begin{tkzexample}[]  
+\begin{tikzpicture}[scale=1]
+  \tkzInit[xmax=1,xstep=0.1,ymin=0.5,ymax=1,ystep=0.1]
+  \tkzGrid      \tkzAxeXY
+  \tkzFct[domain = 0.00001:1]{(\x**\x)}
+  \tkzDrawTangentLine[draw,color = red, kr = 0.2,kl = 0.2]({1/exp(1)}) 
+\end{tikzpicture}
+\end{tkzexample}
+\end{center}
+
+
+
+\endinput
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-tangent.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-why.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-why.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-why.tex	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,46 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex    
+\section{Fonctionnement}
+
+\TIKZ\ apporte différentes possibilités pour obtenir les représentations graphiques des fonctions. J'ai privilégié l'utilisation de \tkzname{gnuplot}, car je trouve \tkzname{pgfmath} trop lent et les résultats trop imprécis. 
+
+Avec \TIKZ\ et \tkzname{gnuplot}, on obtient la représentation d'une fonction à l'aide de
+\begin{tkzltxexample}[]
+  \draw[options] plot function {gnuplot expression};
+\end{tkzltxexample}
+
+ Dans cette nouvelle version de \tkzname{tkz-fct}, la macro \tkzcname{tkzFct} reprend le code précédent avec les mêmes options que celles de \TIKZ. Parmi les options, les plus importantes sont \tkzname{domain}  et \tkzname{samples}.
+
+La macro \tkzcname{tkzFct} remplace \tkzcname{draw plot function} mais exécute deux tâches supplémentaires, en plus du tracé. Tout d'abord, l'expression de la fonction est sauvegardée avec la syntaxe de \tkzname{gnuplot} et également  sauvegardée avec la syntaxe de  \tkzname{fp} pour une utilisation ultérieure. Cela permet, sans avoir à redonner l'expression, de placer par exemple, des points sur la courbe (les images sont calculées à l'aide de  \tkzname{fp}), ou bien encore, de tracer des tangentes.
+
+Ensuite, et c'est le plus important, \tkzcname{tkzFct} tient compte des unités utilisées pour l'axe des abscisses et celui des ordonnées. Ces unités sont définies en utilisant la macro \tkzcname{tkzInit} du package \tkzname{tkz-base} avec les options \tkzname{xstep} et \tkzname{ystep}. 
+
+La macro \tkzcname{tkzFct} intercepte les valeurs données à l'option \tkzname{domain} et évidemment l'expression mathématique de la fonction;
+si \tkzname{xstep} et \tkzname{ystep} diffèrent de 1 alors il est tenu compte de ces valeurs pour le domaine, ainsi que pour les calculs d'images. Lorsque \tkzname{xstep} diffère de 1 alors l'expression donnée, doit utiliser uniquement \tkzcname{x} comme variable, c'est ainsi qu'il est possible d'ajuster les valeurs.  Cela permet d'éviter des débordements dans les calculs.
+
+Par exemple, soit à tracer le graphe de la fonction $f$  définie par :
+
+\[
+ 0\leq x\leq 100 \ \text{et}\ f(x)=x^3
+\]
+
+Les valeurs de $f(x)$ sont comprises entre 0 et $\numprint{1000000}$. En choisissant \tkzname{xstep=10} et \tkzname{ystep=100000}, les axes auront environ $10$ cm de longueur (sans mise à l'échelle).
+
+Les valeurs du domaine seront comprises entre $0$ et $10$, mais l'expression donnée à \tkzname{gnuplot}, comportera des  \tkzcname{x} équivalents à $x \times 10$, enfin, la valeur finale  sera divisée par \tkzname{ystep=100000}. Les valeurs de $f(x)$ resteront ainsi  comprises entre $0$ et $10$.
+ 
+ \begin{tkzexample}[latex=10cm,small]
+\begin{tikzpicture}[scale=.5]
+  \tkzInit[xmax=100,xstep=10,
+           ymax=1000000,
+           ystep=100000]
+  \tkzAxeX[right]
+  \tkzAxeY[above]
+  \tkzGrid 
+  \tkzFct[color=red,
+          domain=0:100]{\x**3}
+\end{tikzpicture}
+\end{tkzexample}
+
+
+
+
+\endinput


Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-why.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct.pdf	2020-04-12 21:31:37 UTC (rev 54702)
+++ trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct.pdf	2020-04-12 21:33:18 UTC (rev 54703)

Property changes on: trunk/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tkz-fct/tkz-fct.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tkz-fct/tkz-fct.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tkz-fct/tkz-fct.sty	2020-04-12 21:33:18 UTC (rev 54703)
@@ -0,0 +1,703 @@
+% Copyright (C)  2020 Alain Matthes
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+%   http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+% This work has the LPPL maintenance status `maintained'.
+% The Current Maintainer of this work is Alain Matthes
+
+% Objet :  fonctions numériques en 2D with gnuplot 
+% constants from tkz-base 
+% \tkz at init@xstep
+% \tkz at init@ystep
+\typeout{2020/04/11 1.3c function tkz-fct}
+%<--------------------------------------------------------------------------->
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{tkz-fct}[2020/04/11 1.3c function ] 
+\newcount\tkz at tkzf@fct
+\edef\tkzTWOPTCode{\the\catcode`\:} 
+\tkz at tkzf@fct=0 % 
+\def\tkzfctloaded{} 
+%<--------------------------------------------------------------------------->
+%                          Initialisation
+%<--------------------------------------------------------------------------->
+\RequirePackage{tkz-base,fp}
+% % Code from Christian Tellechea 2009 % modified by AM
+% modified \FP at pow from fp.sty
+\def\FP at pow#1#2#3{%
+ \FP at beginmessage{POW}%
+ {\def\FP at beginmessage##1{}%
+ \def\FP at endmessage##1{}%
+ \FPifzero{#2}%
+     \expandafter\@firstoftwo
+ \else
+     \expandafter\@secondoftwo
+ \fi
+ {\FP at pow@zero{#3}}%
+ {\FPifint{#3}%
+     \expandafter\@firstoftwo
+ \else
+    \expandafter\@secondoftwo
+ \fi  
+{\FPifneg{#2}%
+ \FPneg\FP at tmpd{#2}%
+ \FPln\FP at tmpd\FP at tmpd
+ \FPmul\FP at tmpd\FP at tmpd{#3}%
+ \FPexp\FP at tmpd\FP at tmpd
+ \FPtrunc\FP at tmp{#3}0%
+ \ifodd\FP at tmp
+     \FPneg\FP at tmp\FP at tmpd
+ \else
+     \let\FP at tmp\FP at tmpd
+ \fi
+\else
+ \FPln\FP at tmpd{#2}%
+ \FPmul\FP at tmpd\FP at tmpd{#3}%
+ \FPexp\FP at tmp\FP at tmpd
+\fi
+}% 
+{\FPln\FP at tmpd{#2}%
+ \FPmul\FP at tmpd\FP at tmpd{#3}%
+ \FPexp\FP at tmp\FP at tmpd}%
+}%
+\global\let\FP at tmp\FP at tmp}%
+\FP at endmessage{}%
+\let#1\FP at tmp}
+%<--------------------------------------------------------------------------->
+%                               Styles 
+%<--------------------------------------------------------------------------->
+\def\tkzfctset#1{\pgfkeys{/tkztan/.cd,#1}}
+
+\tkzfctset{tan style/.style={->,>=latex}}                %<--------------------------------------------------------------------------->
+%                               tkzFct 
+%<--------------------------------------------------------------------------->
+\newif\iftkz at draw 
+\newif\iftkz at fp
+\def\tkz at dmin{-5}\def\tkz at dmax{5} 
+\global\let\tkz at tmp@xa\tkz at init@xmin% modif  2016
+\global\let\tkz at tmp@xb\tkz at init@xmax% modif  2016
+\global\let\tkz at tmp@ya\tkz at init@ymin% modif  2016
+\global\let\tkz at tmp@yb\tkz at init@ymax% modif  2016 
+\catcode`\:=12
+\pgfkeys{/@tkzfct/.cd,
+			domain/.code args			= {#1:#2} {\FPeval\tkz at min{(#1)}
+                           				     \FPeval\tkz at max{(#2)}},
+ 		  domain      				  = \tkz at tmp@xa:\tkz at tmp@xb,
+ 			samples/.store in     = \tkz at fct@samples, 
+			id/.store in          = \tkz at fct@id,
+			fp/.is          if    = tkz at fp,
+			fp/.default           = false,
+			samples    				 	  = 200,
+			fp          				  = true,
+			id          				  = tkzfct,  
+		 /@tkzfct/.search also  = {/tikz},
+}%
+
+\def\tkzFct{\pgfutil at ifnextchar[{\tkzActivOff\tkz at fct}{\tkz at fct[]}} 
+\def\tkz at fct[#1]#2{%
+\pgfqkeys{/@tkzfct}{#1}%
+\iftkz at init@NO%
+  \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+  \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+\else
+  \FPset{\tkz at x@delta}{0}%
+  \FPset{\tkz at y@delta}{0}%
+\fi% 
+% stockage
+\advance\tkz at tkzf@fct by  1 %
+\FPdiv\tkz at ba{\tkz at min}{\tkz at init@xstep}%
+\FPdiv\tkz at bb{\tkz at max}{\tkz at init@xstep}%
+\def\x{(x*\tkz at init@xstep)}%
+\expandafter\edef\csname tkzFctgnu\@alph\tkz at tkzf@fct \endcsname{#2}%
+\expandafter\edef\csname tkzFctgnuLast\endcsname{#2}     
+% %%%%%%%
+\begin{scope}
+ 	\clip (\tkz at xa,\tkz at ya) rectangle (\tkz at xb,\tkz at yb);
+ 	\draw[#1,	xshift  = -\tkz at x@delta cm,yshift  = -\tkz at y@delta cm]%
+    	plot[		samples    = \tkz at fct@samples,id=\tkz at fct@id,
+			domain= \tkz at ba:\tkz at bb] function{(#2)/\tkz at init@ystep};%
+\end{scope}
+% %%%%%%%
+   \let\tkz at tmp@xstep\tkz at init@xstep
+   \def\tkz at init@xstep{1}
+\iftkz at fp%       
+   \ReplaceSubStrings{\tkz at tempa}{#2}{log}{ln}
+   \ReplaceSubStrings{\tkz at tempb}{\tkz at tempa}{**}{^}
+   \ReplaceSubStrings{\tkz at tempa}{\tkz at tempb}{\x}{x}
+   \ReplaceSubStrings{\tkz at tempb}{\tkz at tempa}{asin}{arcsin}
+   \ReplaceSubStrings{\tkz at tempa}{\tkz at tempb}{acos}{arccos}
+   \ReplaceSubStrings{\tkz at tempb}{\tkz at tempa}{atan}{arctan} 
+  \expandafter\edef\csname tkzFct\@alph\tkz at tkzf@fct\endcsname{\tkz at tempb}%
+  \expandafter\edef\csname tkzFctLast\endcsname{\tkz at tempb}%
+ \fi 
+  \let\tkz at init@xstep\tkz at tmp@xstep 
+ \catcode`\:=\tkzTWOPTCode\relax   
+}%
+%<--------------------------------------------------------------------------->
+%                            point d'une courbe (new method)
+%<--------------------------------------------------------------------------->
+\pgfkeys{/tkzfctpt/.cd, 
+			draw/.is if   		  = tkz at draw,
+			draw/.default 		  = true,
+			with/.store in      = \tkz at fct@used,
+			ref/.store in     	= \tkz at fct@ref,
+            draw  				= false,
+            with  				= {},
+            ref   				= {}
+			}
+                           
+\def\tkzDefPointByFct{\pgfutil at ifnextchar[{\tkz at fctpoint}{\tkz at fctpoint[]}}   
+\def\tkz at fctpoint[#1](#2){%
+\pgfqkeys{/tkzfctpt}{#1}
+   \FPeval\x{(#2)}%
+   \ifx\tkzutil at empty\tkz at fct@used
+       \FPeval\tkz at fx{\tkzFctLast}  
+   \else 
+      \edef\tkz at fct{\csname tkzFct\tkz at fct@used\endcsname}
+       \FPeval\tkz at fx{\tkz at fct}
+    \fi   
+  \tkzDefPoint(\x,\tkz at fx){tkzPointResult}%
+       \iftkz at draw
+     \tkzDrawPoint(tkzPointResult)
+     \fi
+\ifx\tkzutil at empty\tkz at fct@ref 
+\else
+  \tkzGetPoint{\tkz at fct@ref}
+\fi
+}%
+%<--------------------------------------------------------------------------->
+%                                  tangente \tkzDrawTangentLine
+%<--------------------------------------------------------------------------->
+\pgfkeys{/@tkztan/.cd,
+			with/.store in         	= \tkz at fct@used,
+			kr/.store in           	= \tkz at tan@kr,
+			kl/.store in           	= \tkz at tan@kl,
+			draw/.is if            	= tkz at draw,
+			draw/.default          	= true,
+            draw  					= false,
+            with  					= {},   
+            kr    					= 1,
+            kl    					= 1,
+			  /@tkztan/.search also  = {/tikz},
+}%
+%<--------------------------------------------------------------------------->
+\def\tkzDrawTangentLine{\pgfutil at ifnextchar[{\tkz at DrawTangentLine}{%
+                                             \tkz at DrawTangentLine[]}} 
+\def\tkz at DrawTangentLine[#1](#2){%
+\begingroup
+\pgfqkeys{/@tkztan}{#1}
+\FPeval\x{(#2)}%
+\ifx\tkzutil at empty\tkz at fct@used
+    \FPeval\tkz at img{\tkzFctLast}
+    \let\tkz at fct\tkzFctLast  
+\else 
+   \edef\tkz at fct{\csname tkzFct\tkz at fct@used\endcsname}
+      \FPeval\tkz at img{\tkz at fct}
+ \fi
+\let\tkz at old@img\tkz at img
+\let\tkz at old@x\x
+\tkzDefPoint(\tkz at old@x,\tkz at old@img){tkzPointResult}  
+\FPdiv{\tkz at krx}{\tkz at tan@kr}{\tkz at init@xstep}
+\FPdiv{\tkz at kry}{\tkz at tan@kr}{\tkz at init@ystep}
+\FPdiv{\tkz at klx}{\tkz at tan@kl}{\tkz at init@xstep}
+\FPdiv{\tkz at kly}{\tkz at tan@kl}{\tkz at init@ystep}
+ % demi tgt--> droite
+\FPifzero{\tkz at tan@kr}%
+\else
+\FPadd{\x}{\tkz at old@x}{0.000001}%
+\FPeval\tkz at img{\tkz at fct}% 
+\FPadd{\tkz at deltay}{\tkz at old@img}{-\tkz at img}%
+\FPmul{\tkz at slope}{\tkz at deltay}{1000000}%
+\protected at edef\tkz at temp{%
+\noexpand\draw[/tkztan/tan style,/@tkztan/.cd,#1]}\tkz at temp%
+      (tkzPointResult)--++(\tkz at krx,-\tkz at kry*\tkz at slope);
+\fi
+% demi tgt --> gauche
+\FPifzero{\tkz at tan@kl}%
+ \else
+\FPadd{\x}{\tkz at old@x}{-0.000001} 
+\FPeval\tkz at img{\tkz at fct}% 
+\FPadd{\tkz at deltay}{\tkz at old@img}{-\tkz at img}
+\FPmul{\tkz at slope}{\tkz at deltay}{-1000000}
+\protected at edef\tkz at temp{%
+\noexpand\draw[/tkztan/tan style,/@tkztan/.cd,#1]}\tkz at temp%
+     (tkzPointResult)--++(-\tkz at klx,\tkz at kly*\tkz at slope);
+  \fi
+     \iftkz at draw
+     \tkzDrawPoint(tkzPointResult)
+     \fi  
+\endgroup 
+}
+%<--------------------------------------------------------------------------->
+%                               tkzArea
+%<--------------------------------------------------------------------------->
+\pgfkeys{%
+/tkzarea/.cd,
+				domain/.code args={#1:#2}         {\FPeval\tkz at min{(#1)}
+				                                   \FPeval\tkz at max{(#2)}}, 
+				opacity/.store in              	=  \tkz at fct@opacity,
+				id/.store in                   	=  \tkz at fct@id,
+				color/.store in                	=  \tkz at fct@color,
+				samples/.store in             	=  \tkz at fct@samples,
+				domain    						= -5:5,   
+				color     						=  \tkz at otherlinecolor,
+				samples   						=  200,
+				id        						=  tkzfonct,
+				opacity   						=  .5,
+				  /tkzarea/.search also  = {/tikz}
+								   }
+\def\tkzArea{\pgfutil at ifnextchar[{\catcode`\:=12 \tkz at aire}{\tkz at aire[]}}
+\def\tkz at aire[#1]{%
+\begingroup   
+\pgfqkeys{/tkzarea}{#1}
+\iftkz at init@NO
+   \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+   \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+\else        
+   \FPset{\tkz at x@delta}{0}
+   \FPset{\tkz at y@delta}{0}%
+\fi%
+\def\x{(x*\tkz at init@xstep)}
+\FPdiv\tkz at ba{\tkz at min}{\tkz at init@xstep}%
+\FPdiv\tkz at bb{\tkz at max}{\tkz at init@xstep}%
+\begin{scope}[] 
+  \path[ fill,  
+         xshift       = -\tkz at x@delta cm,
+         yshift       = -\tkz at y@delta cm,
+         color        = \tkz at fct@color,%
+         fill opacity = \tkz at fct@opacity,#1,
+         domain       = \tkz at ba:\tkz at bb,
+         samples      = \tkz at fct@samples]%
+        (\tkz at ba,0)--plot [id = \tkz at fct@id]%
+       function{(\tkzFctgnuLast)/\tkz at init@ystep}--(\tkz at bb,0);
+   \end{scope}
+\endgroup
+}
+\let\tkzDrawArea\tkzArea 
+
+%<--------------------------------------------------------------------------->
+%                             tkzAreafg
+%<--------------------------------------------------------------------------->
+\pgfkeys{/@tkzareafg/.cd,
+		domain/.code args				  ={#1:#2} {\FPeval\tkz at min{(#1)}
+		                           				  \FPeval\tkz at max{(#2)}},
+		between/.code args				={#1 and #2}{\def\tkzfct at below{#1}
+		                               				 \def\tkzfct at above{#2}},
+		opacity/.store in         =  \tkz at fct@opacity,
+		id/.store in              =  \tkz at fct@id,
+		color/.store in           =  \tkz at fct@color,
+		samples/.store in         =  \tkz at fct@samples,
+		domain     						    =  -5:5,
+		between    						    =  a and b,
+		color      						    =  lightgray,
+		samples    						    =  200,
+		id         						    =  tkzfonct,
+		opacity    						    =  .5,
+  /@tkzareafg/.search also  = {/tikz}
+								   }
+
+\def\tkzAreafg{\pgfutil at ifnextchar[{\tkz at airefg}{\tkz at airefg[]}}
+\def\tkz at airefg[#1]{%
+\begingroup
+\pgfqkeys{/@tkzareafg}{#1}
+\def\tkz at fctsup{\csname tkzFctgnu\tkzfct at below\endcsname}
+\def\tkz at fctinf{\csname tkzFctgnu\tkzfct at above\endcsname}
+\iftkz at init@NO%
+   \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+   \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@xstep}%
+\else
+   \FPset{\tkz at x@delta}{0}
+   \FPset{\tkz at y@delta}{0}%
+\fi%
+% essai du test sur xstep
+\def\x{(x*\tkz at init@xstep)}
+\FPdiv\tkz at ba{\tkz at min}{\tkz at init@xstep}
+\FPdiv\tkz at bb{\tkz at max}{\tkz at init@xstep}
+\begin{scope}[domain  = \tkz at ba:\tkz at bb,
+              samples = \tkz at fct@samples,
+              id      = \tkz at fct@id]
+ \clip (\tkz at ba,\tkz at ya)--plot function{(\tkz at fctsup)/\tkz at init@ystep}%
+                        --(\tkz at bb,\tkz at ya);%
+ \clip (\tkz at ba,\tkz at yb)--plot function{(\tkz at fctinf)/\tkz at init@ystep}%
+                        --(\tkz at bb,\tkz at yb);
+  \fill [color        = \tkz at fct@color,
+         fill opacity = \tkz at fct@opacity,
+         /@tkzareafg/.cd,
+         #1]%
+        (\tkz at ba,\tkz at ya) rectangle (\tkz at bb,\tkz at yb);
+\end{scope}
+\endgroup
+}
+\let\tkzDrawAreafg\tkzAreafg
+\def\tkz at pamin{-5}\def\tkz at pamax{5}
+%<--------------------------------------------------------------------------->
+%                               tkzFctPar
+%<--------------------------------------------------------------------------->
+\def\tkzFctPar{\pgfutil at ifnextchar[{\catcode`\:=12 \tkz at fctp}{\tkz at fctp[]}}
+\def\tkz at fctp[#1]#2#3{%
+\begingroup
+\pgfkeys{/@tkzfct/.cd,
+			domain      = \tkz at pamin:\tkz at pamax,
+			samples     = 200,
+			fp          = true,
+			id          = tkzfct}
+\pgfqkeys{/@tkzfct}{#1}
+  \iftkz at init@NO%
+     \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+     \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+  \else
+     \FPset{\tkz at x@delta}{0}
+     \FPset{\tkz at y@delta}{0}%
+  \fi%
+ \begin{scope}[samples    = \tkz at fct@samples]
+  \tkzActivOff
+    \clip (\tkz at xa,\tkz at ya) rectangle (\tkz at xb,\tkz at yb);
+    \draw [xshift     = -\tkz at x@delta cm,%
+           yshift     = -\tkz at y@delta cm,
+           /@tkzfct/.cd, #1]%
+     plot [parametric,domain     = \tkz at min:\tkz at max,%
+           id         = tkzparfct]%
+         function {(#2)/\tkz at init@xstep,(#3)/\tkz at init@ystep};
+  \tkzActivOn
+  \end{scope}
+\endgroup
+}
+%<--------------------------------------------------------------------------->
+%                               tkzFctPolar
+%<--------------------------------------------------------------------------->
+\def\tkz at pomin{0}\def\tkz at pomax{2*pi}
+\def\tkzFctPolar{\pgfutil at ifnextchar[{%
+                 \catcode`\:=12 \tkz at FctPolar}{\tkz at FctPolar[]}}
+\def\tkz at FctPolar[#1]#2{%
+\begingroup
+\pgfkeys{/@tkzfct/.cd,
+			domain      = \tkz at pomin:\tkz at pomax,
+			fp          = true,
+			samples     = 200,
+			id          = tkzfctpolar
+			}
+\pgfqkeys{/@tkzfct}{#1}
+  \iftkz at init@NO%
+     \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+     \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+  \else
+     \FPset{\tkz at x@delta}{0}
+     \FPset{\tkz at y@delta}{0}%
+  \fi%
+
+  \begin{scope}
+  \tkzActivOff
+    \draw [xshift     = -\tkz at x@delta cm,%
+           yshift     = -\tkz at y@delta cm,
+           /@tkzfct/.cd, #1]%
+     plot [raw gnuplot,id = tkzpolarfct]%
+         function { set polar;set samples \tkz at fct@samples ; set trange  [\tkz at min:\tkz at max]; plot (#2)/\tkz at init@xstep};
+  \tkzActivOn
+  \end{scope}
+\endgroup
+}
+%<--------------------------------------------------------------------------->
+%                               tkzDrawRiemannSum
+%<--------------------------------------------------------------------------->
+\pgfkeys{/@tkzriemann/.cd,
+			interval/.code args={#1:#2} {\FPeval\tkz at min{(#1)}
+			                             \FPeval\tkz at max{(#2)}},
+			number/.store in                =  \tkz at fct@nb,
+			opacity/.store in               =  \tkz at fct@opacity,
+			color/.store in                 =  \tkz at fct@color,
+ /@tkzriemann/.search also  = {/tikz},
+}
+\def\tkzDrawRiemannSum{\pgfutil at ifnextchar[{%
+    \catcode`\:=12 \tkz at DrawRiemannSum}{\tkz at DrawRiemannSum[]}}
+\def\tkz at DrawRiemannSum[#1]{%
+\begingroup
+\pgfkeys{/@tkzriemann/.cd,
+		interval        = 1:2,
+		number          = 10,
+		opacity         = 0.5,
+		line width      = 1pt
+}
+\pgfqkeys{/@tkzriemann}{#1}
+  \iftkz at init@NO%
+     \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+     \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+  \else
+     \FPset{\tkz at x@delta}{0}
+     \FPset{\tkz at y@delta}{0}%
+  \fi%
+\FPadd\tkz at intwd{\tkz at max}{-\tkz at min}
+\FPdiv\tkz at delta{\tkz at intwd}{\tkz at fct@nb}
+\FPadd\tkz at fct@nb{\tkz at fct@nb}{-1}
+ \begin{scope}
+\foreach \i in {0,1,...,\tkz at fct@nb}{%
+  \FPeval\x{(\tkz at min+i*\tkz at delta)}
+  \FPeval\tkz at fx{\tkzFcta}
+  \FPadd\tkz at next{\x}{\tkz at delta}
+  \draw[ color=\tkz at fct@color,
+ 		 opacity=\tkz at fct@opacity,
+		 /@tkzriemann/.cd,#1] (\x ,0 ) rectangle (\tkz at next,
+		 \tkz at fx/\tkz at init@ystep );
+}
+   \end{scope}
+\endgroup
+}
+%<--------------------------------------------------------------------------->
+%                               tkzDrawRiemannSumInf
+%<--------------------------------------------------------------------------->
+\pgfkeys{/@tkzriemann/.cd,
+			interval/.code args={#1:#2} {\FPeval\tkz at min{(#1)}
+			                             \FPeval\tkz at max{(#2)}},
+			number/.store in                =  \tkz at fct@nb,
+			opacity/.store in               =  \tkz at fct@opacity,
+			color/.store in                 =  \tkz at fct@color,
+			/@tkzriemann/.search also   = {/tikz},
+								   }
+\def\tkzDrawRiemannSumInf{\pgfutil at ifnextchar[{%
+                 \catcode`\:=12 \tkz at DrawRiemannSumInf}{\tkz at DrawRiemannSumInf[]}}
+\def\tkz at DrawRiemannSumInf[#1]{%
+\begingroup
+\pgfkeys{/@tkzriemann/.cd,
+		interval        = 1:2,
+		number          = 10,
+		opacity         = 0.5,
+		line width      = 1pt
+		}
+\pgfqkeys{/@tkzriemann}{#1}
+  \iftkz at init@NO%
+     \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+     \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+  \else
+     \FPset{\tkz at x@delta}{0}
+     \FPset{\tkz at y@delta}{0}%
+  \fi%
+\FPadd\tkz at intwd{\tkz at max}{-\tkz at min}
+\FPdiv\tkz at delta{\tkz at intwd}{\tkz at fct@nb}
+\FPadd\tkz at fct@nb{\tkz at fct@nb}{-1}
+
+\begin{scope}
+\foreach \i in {0,1,...,\tkz at fct@nb}{%
+  \FPeval\x{(\tkz at min+i*\tkz at delta)}
+  \FPeval\tkz at fx{\tkzFcta}
+   \let\tkz at firstimg\tkz at fx
+   \let\tkz at firstx\x
+   \FPadd\tkz at next{\x}{\tkz at delta}
+   \let\tkzFctTmp\tkzFcta
+   \FPset\x{\tkz at next}
+   \FPeval\tkz at fxnext{\tkzFcta}
+   \ifdim \tkz at fx pt < \tkz at fxnext pt\relax
+   \draw[opacity=\tkz at fct@opacity,/@tkzriemann/.cd,#1] (\tkz at firstx ,0 ) rectangle (\tkz at next , \tkz at firstimg/\tkz at init@ystep );
+\else
+\draw[opacity=\tkz at fct@opacity,/@tkzriemann/.cd,#1] (\tkz at firstx ,0 ) rectangle (\tkz at next , \tkz at fxnext/\tkz at init@ystep );
+ \fi
+   }
+   \end{scope}
+\endgroup
+}
+%<--------------------------------------------------------------------------->
+%                               tkzDrawRiemannSumSup
+%<--------------------------------------------------------------------------->
+
+\def\tkzDrawRiemannSumSup{\pgfutil at ifnextchar[{%
+                 \catcode`\:=12 \tkz at DrawRiemannSumSup}{\tkz at DrawRiemannSumSup[]}}
+\def\tkz at DrawRiemannSumSup[#1]{%
+\begingroup
+\pgfkeys{/@tkzriemann/.cd,
+			interval        = 1:2,
+			number          = 10,
+			opacity         = 0.5,
+			line width      = 1pt
+			}
+\pgfqkeys{/@tkzriemann}{#1}
+  \iftkz at init@NO%
+     \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+     \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+  \else
+     \FPset{\tkz at x@delta}{0}
+     \FPset{\tkz at y@delta}{0}%
+  \fi%
+\FPadd\tkz at intwd{\tkz at max}{-\tkz at min}
+\FPdiv\tkz at delta{\tkz at intwd}{\tkz at fct@nb}
+\FPadd\tkz at fct@nb{\tkz at fct@nb}{-1}
+
+\begin{scope}
+\foreach \i in {0,1,...,\tkz at fct@nb}{%
+  \FPeval\x{(\tkz at min+i*\tkz at delta)}
+  \FPeval\tkz at fx{\tkzFcta}
+   \let\tkz at firstimg\tkz at fx
+    \let\tkz at firstx\x
+  \FPadd\tkz at next{\x}{\tkz at delta}
+  \let\tkzFctTmp\tkzFcta
+  \FPset\x{\tkz at next}
+  \FPeval\tkz at fxnext{\tkzFcta}
+\ifdim \tkz at fx pt > \tkz at fxnext pt\relax
+ \draw[opacity=\tkz at fct@opacity,/@tkzriemann/.cd,#1] (\tkz at firstx ,0 ) rectangle (\tkz at next , \tkz at firstimg/\tkz at init@ystep );
+\else
+\draw[opacity=\tkz at fct@opacity,/@tkzriemann/.cd,#1] (\tkz at firstx ,0 ) rectangle (\tkz at next , \tkz at fxnext/\tkz at init@ystep );
+ \fi
+   }
+   \end{scope}
+\endgroup
+}
+%<--------------------------------------------------------------------------->
+%                               tkzDrawRiemannSumMid
+%<--------------------------------------------------------------------------->
+
+\def\tkzDrawRiemannSumMid{\pgfutil at ifnextchar[{%
+                 \catcode`\:=12 \tkz at DrawRiemannSumMid}{\tkz at DrawRiemannSumMid[]}}
+\def\tkz at DrawRiemannSumMid[#1]{%
+\begingroup
+\pgfkeys{/@tkzriemann/.cd,
+		interval        = 1:2,
+		number          = 10,
+		opacity         = 0.5,
+		line width      = 1pt
+		}
+\pgfqkeys{/@tkzriemann}{#1}
+  \iftkz at init@NO%
+     \FPdiv{\tkz at x@delta}{\tkz at init@xorigine}{\tkz at init@xstep}%
+     \FPdiv{\tkz at y@delta}{\tkz at init@yorigine}{\tkz at init@ystep}%
+  \else
+     \FPset{\tkz at x@delta}{0}
+     \FPset{\tkz at y@delta}{0}%
+  \fi%
+\FPadd\tkz at intwd{\tkz at max}{-\tkz at min}
+\FPdiv\tkz at delta{\tkz at intwd}{\tkz at fct@nb}
+\FPadd\tkz at fct@nb{\tkz at fct@nb}{-1}
+
+\begin{scope}
+\foreach \i in {0,1,...,\tkz at fct@nb}{%
+  \FPeval\x{(\tkz at min+i*\tkz at delta)}
+  \FPeval\tkz at fx{\tkzFcta}
+   \let\tkz at firstimg\tkz at fx
+    \let\tkz at firstx\x
+  \FPadd\tkz at next{\x}{\tkz at delta}
+  \FPset\x{\tkz at next}
+  \FPeval\tkz at fxnext{\tkzFcta}
+  \FPeval\tkz at midimg{(\tkz at firstimg+\tkz at fxnext)/2}
+
+ \draw[opacity=\tkz at fct@opacity,/@tkzriemann/.cd,#1] (\tkz at firstx ,0 ) rectangle (\tkz at next , \tkz at midimg/\tkz at init@ystep );
+   }
+   \end{scope}
+\endgroup
+}
+
+%<--------------------------------------------------------------------------–>
+%                 tkzXH      F rien T et [ ou ]
+%<--------------------------------------------------------------------------–>
+\def\tkz at ComT{v}  % need
+
+\pgfkeys{/@tkzxh/.cd,
+ 		 posgrad/.store in  = \tkz at tkzXh@posgrad,
+ 		 left/.store in     = \tkz at tkzXh@left,
+ 		 right/.store in    = \tkz at tkzXh@right,
+ 		 color/.store in    = \tkz at tkzXh@color,
+ 		 posgrad = {below=6 pt},
+ 		 color   = \tkz at mainlinecolor,
+ 		 left    = {},
+ 		 right   = {},
+  }
+\def\tkzXH{\pgfutil at ifnextchar[{\tkz at xh}{\tkz at xh[]}}
+\def\tkz at xh[#1]#2{%
+ \pgfqkeys{/@tkzxh}{#1}
+\begingroup
+\foreach \xA/\RA/\sA/\xB/\RB/\sB in {#2}{%
+       \tkzDefPoint(\xA,0){deb}\tkzDefPoint(\xB,0){fin}
+       \begin{scope}[decoration={border,angle=-45,
+                    amplitude=0.3cm,segment length=2mm,raise=0.1cm}]
+         \draw[decorate,\tkz at tkzXh@color,thick] (deb) -- (fin);
+         \node at (deb) {\Large\textbf{\sA}};
+         \node at (fin) {\Large\textbf{\sB}};
+\ifx\RA\tkz at ComT
+ \protected at edef\tkz at temp{%
+  \noexpand\node[\tkz at tkzXh@posgrad]}\tkz at temp at (deb){%
+ \tkz at showgrad{\xA}$\numprint{\tkz at result}$};\fi
+
+\ifx\RB\tkz at ComT
+  \protected at edef\tkz at temp{\noexpand\node[\tkz at tkzXh@posgrad]}\tkz at temp%
+          at (fin){%
+   \tkz at showgrad{\xB}$\numprint{\tkz at result}$};\fi
+
+\protected at edef\tkz at temp{%
+          \noexpand\node[\tkz at tkzXh@posgrad]}\tkz at temp at (\tkz at xa,0) {\tkz at tkzXh@left};%
+\protected at edef\tkz at temp{\noexpand\node[\tkz at tkzXh@posgrad]}\tkz at temp%
+ at (\tkz at xb,0) {\tkz at tkzXh@right};
+\end{scope}
+}%
+\endgroup
+}%
+% %<--------------------------------------------------------------------------->
+% %                                  tangente  obsolete
+% %<--------------------------------------------------------------------------->
+% \def\tkzTan{\pgfutil at ifnextchar[{\tkz at Tan}{\tkz at Tan[]}}
+%
+% \def\tkz at Tan[#1]#2(#3)#{
+% \pgfkeys{/@tkztan/.cd,
+% 		draw 	= 	false,
+% 		with	=	{},
+% 		kr   	= 	1,
+% 		kl   	= 	1
+% 		}
+% \pgfqkeys{/@tkztan}{#1}
+%  \global\edef\tkz at opttan{#1}
+%   \FPeval\x{(#3)}%
+%   \FPeval\tkz at img{#2}
+%   \let\tkz at yy #2%
+%   \let\tkz at xx\x%
+%   \let\tkz at old@img\tkz at img
+%   \tkz@@Tan
+% }
+% \def\tkz@@Tan#1{%
+% \FPdiv{\tkz at old@x}{\x}{1}
+% \let\tkz at nexpty\tkz at img
+% \tkz at ptStar[](\tkz at old@x,\tkz at nexpty){#1}
+% \FPdiv{\tkz at krx}{\tkz at tan@kr}{\tkz at tmp@xstep}
+% \FPdiv{\tkz at kry}{\tkz at tan@kr}{\tkz at init@ystep}
+% \FPdiv{\tkz at klx}{\tkz at tan@kl}{\tkz at tmp@xstep}
+% \FPdiv{\tkz at kly}{\tkz at tan@kl}{\tkz at init@ystep}
+%  % demi tgt--> droite
+% \FPifzero{\tkz at tan@kr}%
+% \else
+% \FPadd{\x}{\tkz at xx}{0.000001}%
+% \FPeval\tkz at img{\tkz at yy}%
+% \FPadd{\tkz at deltay}{\tkz at old@img}{-\tkz at img}%
+% \FPmul{\tkz at slope}{\tkz at deltay}{1000000}%
+% \protected at edef\tkz at temp{
+%    \noexpand\draw[tan style,/@tkztan/.cd,\tkz at opttan,-]}\tkz at temp%
+%        (#1)--++(\tkz at krx,-\tkz at kry*\tkz at slope);
+% \fi
+% % demi tgt --> gauche
+% \FPifzero{\tkz at tan@kl}%
+%  \else
+% \FPadd{\x}{\tkz at xx}{-0.000001}
+% \FPeval\tkz at img{\tkz at yy}%
+% \FPadd{\tkz at deltay}{\tkz at old@img}{-\tkz at img}
+% \FPmul{\tkz at slope}{\tkz at deltay}{-1000000}
+%   \protected at edef\tkz at temp{
+%     \noexpand
+% \draw[tan style,/@tkztan/.cd,\tkz at opttan,-]}\tkz at temp%
+%        (#1)--++(-\tkz at klx,\tkz at kly*\tkz at slope);
+%   \fi
+% }
+%<--------------------------------------------------------------------------->
+%                            point d'une courbe   obsolete
+%<--------------------------------------------------------------------------->
+\def\tkzFctPt{\pgfutil at ifnextchar[{\tkz at fctpt}{\tkz at fctpt[]}}
+\def\tkz at fctpt[#1]#2(#3)#{%
+ \global\edef\tkz at optptfct{#1}
+  \FPeval\x{(#3)}%
+  \FPeval\tkz at y{#2}
+  \tkz at defpoint
+}
+\def\tkz at defpoint#1{
+  \tkzDefPoint(\x,\tkz at y){#1}
+\protected at edef\tkz at temp{
+   \noexpand  \tkzDrawPoint[\tkz at optptfct](#1)}\tkz at temp
+  \let\tkz at init@xstep\tkz at tmp@xstep
+}
+%<--------------------------  the end --------------------------------------->
+\endinput 
+
+ 
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/tex/latex/tkz-fct/tkz-fct.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2020-04-12 21:31:37 UTC (rev 54702)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2020-04-12 21:33:18 UTC (rev 54703)
@@ -725,7 +725,7 @@
     tikzpagenodes tikzpeople tikzpfeile tikzposter tikzscale tikzsymbols
     timbreicmc times timetable timing-diagrams tinos tipa tipa-de tipfr
     titlecaps titlefoot titlepages titlepic titleref titlesec titling
-    tkz-base tkz-doc tkz-euclide tkz-tab
+    tkz-base tkz-doc tkz-euclide tkz-fct tkz-tab
     tkz-orm tikz-page
     tlc-article tlc2 tlcockpit
     tocbibind tocdata tocloft tocvsec2 todo todonotes

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2020-04-12 21:31:37 UTC (rev 54702)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2020-04-12 21:33:18 UTC (rev 54703)
@@ -1260,7 +1260,7 @@
  'tkz-base',    "&MAKEtkz",
  'tkz-berge',   "die 'skipping, obsolete on ctan'", #"&MAKEtkz",
  'tkz-euclide', "&MAKEtkz",
- 'tkz-fct',     "die 'skipping, obsolete on ctan'", #"&MAKEtkz",
+ 'tkz-fct',     "&MAKEtkz",
  'tkz-graph',   "die 'skipping, obsolete on ctan'", #"&MAKEtkz",
  'tkz-kiviat',  "die 'skipping, obsolete on ctan'", #"&MAKEtkz",
  'tkz-linknodes',"die 'skipping, obsolete on ctan'",#"&MAKEtkz",

Modified: trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc	2020-04-12 21:31:37 UTC (rev 54702)
+++ trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc	2020-04-12 21:33:18 UTC (rev 54703)
@@ -185,6 +185,7 @@
 depend tkz-base
 depend tkz-doc
 depend tkz-euclide
+depend tkz-fct
 depend tkz-orm
 depend tkz-tab
 depend tsemlines

Added: trunk/Master/tlpkg/tlpsrc/tkz-fct.tlpsrc
===================================================================


More information about the tex-live-commits mailing list.