I need your kind help to convert this doc using TikZ/PGF not pstricks, if possible:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{mathrsfs}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{ifthen}
\usepackage{fp}
\usepackage{pstricks-add}
\usepackage[frenchb]{babel}
\usepackage[colorlinks]{hyperref}
%% macro trace tangente
\def\traceTangente(#1,#2,#3,#4){%
\ifthenelse{\lengthtest{#4pt>0pt}}{\FPeval\DemiTangenteV{(#3)*(#4)}
\FPeval\TangentXa{(#1)-(#4)}
\FPeval\TangentXb{(#1)+(#4)}
\FPeval\TangentYa{(#2)-(\DemiTangenteV)}
\FPround\TangentYa\TangentYa{3}
\FPeval\TangentYb{(#2)+(\DemiTangenteV)}
\FPround\TangentYb\TangentYb{3}
\psline{<->,linecolor=orange!50!red}(\TangentXa,\TangentYa)(\TangentXb,\TangentYb)}{}}
\makeatletter
%% macro interpolation
\def\Interpolation(#1,#2,#3)(#4,#5,#6){%
\edef\PolyInterp{(x+(-1)*(#4))^2*((1+(-2)*(x+(-1)*(#1))*(#1+(-1)*
(#4))/((#1+(-1)*(#4))^2))*#2+(x+(-1)*(#1))*#3)/((#1+(-1)*(#4))^2)+(x+
(-1)*(#1))^2*((1+(-2)*(x+(-1)*(#4))*(#4+(-1)*(#1))/((#1+(-1)*(#4))^2))
*#5+(x+(-1)*(#4))*#6)/((#1+(-1)*(#4))^2)}%
\psplot[algebraic=true,linecolor=cyan!50!blue,linewidth=1.2pt]{#1}{#4}{\PolyInterp}}
%% la macro principale
\def\HermiteDDL(#1,#2,#3,#4){\def\Hermite@xa{#1}\def\Hermite@ya{#2}\def\Hermite@za{#3}
\psdot(#1,#2)
\traceTangente(#1,#2,#3,#4)\Hermite@next}
\def\Hermite@next{\@ifnextchar ({\Hermite@job}{\Hermite@end}}
\def\Hermite@job(#1,#2,#3,#4){%
\psdot(#1,#2)
\Interpolation(\Hermite@xa,\Hermite@ya,\Hermite@za)(#1,#2,#3)
\def\Hermite@xa{#1}\def\Hermite@ya{#2}\def\Hermite@za{#3}
\traceTangente(#1,#2,#3,#4)\Hermite@next}
\def\Hermite@end{}
\makeatother
\begin{document}
\begin{center}
\begin{pspicture*}(-5,-5.5)(10.5,4.5)
\psgrid[gridlabels=0,subgriddiv=1,griddots=7](0,0)(-5,-5)(10,5)
\psaxes{->}(0,0)(-5,-5.5)(10,5)
\psaxes(0,0)(-5,-3)(9,5)
\HermiteDDL(-5,1,1,1)(-3,2,-2,1)(-1,-2,3,1)(0,2,1,1)(2,1,0,1)(4,0,0.666,3)(6,-2,-2,1)(9,2,0.5,1)(10,-1,-4,0)
\end{pspicture*}
\end{center}
\end{document}
! Undefined control sequence. <recently read> \c@lor@to@ps
! Undefined control sequence. <recently read> \c@lor@to@ps
is just an alternative spelling for "please use latex not pslatex":-)pdflatex
, adding\usepackage{auto-pst-pdf}
under MiKTeX.auto-pst-pdf
?