%!TEX root = /Users/ego/Boulot/TKZ/tkz-euclide/doc_fr/TKZdoc-euclide-main.tex \section{Définition aléatoire de points} Il y a pour le moment quatre possibilités : \begin{enumerate} \item point dans un rectangle, \item sur un segment, \item sur une droite, \item sur un cercle. \end{enumerate} \begin{NewMacroBox}{tkzGetRandPointOn}{\oarg{local options}\marg{name} } \medskip \begin{tabular}{lll} \toprule options & & définition \\ \midrule \TOline{rectangle = \#1 and \#2}{}{\#1 et \#2 sont des noms de points} \TOline{segment = \#1--\#2}{}{\#1 et \#2 sont des noms de points} \TOline{line = \#1--\#2}{}{\#1 et \#2 sont des noms de points} \TOline{circle = center \#1 radius \#1 }{}{\#1 est un point et \#1 une mesure} \bottomrule \end{tabular} \medskip \noindent\emph{Cette macro est assez simple à utiliser, voyez les exemples.} \end{NewMacroBox} \subsection{Point aléatoire dans un rectangle} \begin{center} \begin{tkzexample}[vbox] \begin{tikzpicture} \tkzInit[xmax=5,ymax=5] \tkzGrid \tkzDefPoint(0,0){A} \tkzDefPoint(2,2){B} \tkzDefPoint(5,5){C} \tkzGetRandPointOn[rectangle = A and B]{a} \tkzGetRandPointOn[rectangle = B and C]{d} \tkzDrawLine(a,d) \tkzDrawPoints(A,B,C,a,d) \tkzLabelPoints(A,B,C,a,d) \end{tikzpicture} \end{tkzexample} \end{center} \subsection{Point aléatoire sur un segment} \begin{tkzexample}[latex=6cm] \begin{tikzpicture} \tkzInit[xmax=5,ymax=5] \tkzGrid \tkzDefPoint(0,0){A} \tkzDefPoint(2,2){B} \tkzDefPoint(3,3){C} \tkzDefPoint(5,5){D} \tkzGetRandPointOn[segment = A--B]{a} \tkzGetRandPointOn[segment = C--D]{d} \tkzDrawPoints(A,B,C,D,a,d) \tkzLabelPoints(A,B,C,D,a,d) \end{tikzpicture} \end{tkzexample} \subsection{Point aléatoire sur une droite} \begin{tkzexample}[latex=6cm] \begin{tikzpicture} \tkzInit[xmax=5,ymax=5] \tkzGrid \tkzDefPoint(0,0){A} \tkzDefPoint(2,2){B} \tkzDefPoint(3,3){C} \tkzDefPoint(5,5){D} \tkzGetRandPointOn[line = A--B]{a} \tkzGetRandPointOn[line = C--D]{d} \tkzDrawPoints(A,B,C,D,a,d) \tkzLabelPoints(A,B,C,D,a,d) \end{tikzpicture} \end{tkzexample} \subsection{Point aléatoire sur un cercle} \begin{tkzexample}[latex=5cm] \begin{tikzpicture} \tkzInit[xmax=5,ymax=5] \tkzGrid \tkzDefPoint(3,2){A} \tkzDefPoint(1,1){B} \tkzCalcLength[cm](A,B) \tkzGetLength{rAB} \tkzDrawCircle[R](A,\rAB cm) \tkzGetRandPointOn[circle = center A radius \rAB cm]{a} \tkzDrawSegment(A,a) \tkzDrawPoints(A,B,a) \tkzLabelPoints(A,B,a) \end{tikzpicture} \end{tkzexample} \newpage \subsection{Milieu d'un segment au compas} Pour terminer cette section, voici un exemple plus complexe. Il s'agit de déterminer le milieu d'un segment, uniquement avec un compas. \begin{center} \begin{tkzexample}[vbox] \begin{tikzpicture}[scale=.75] \tkzDefPoint(0,0){A} \tkzGetRandPointOn[circle= center A radius 4cm]{B} \tkzDrawPoints(A,B) \tkzDefPointBy[rotation= center A angle 180](B) \tkzGetPoint{C} \tkzInterCC[R](A,4 cm)(B,4 cm) \tkzGetPoints{I}{I'} \tkzInterCC[R](A,4 cm)(I,4 cm) \tkzGetPoints{J}{B} \tkzInterCC(B,A)(C,B) \tkzGetPoints{D}{E} \tkzInterCC(D,B)(E,B) \tkzGetPoints{M}{M'} \tikzset{arc/.style={color=brown,style=dashed,delta=10}} \tkzDrawArc[arc](C,D)(E) \tkzDrawArc[arc](B,E)(D) \tkzDrawCircle[color=brown,line width=.2pt](A,B) \tkzDrawArc[arc](D,B)(M) \tkzDrawArc[arc](E,M)(B) \tkzCompasss[color=red,style=solid](B,I I,J J,C) \tkzDrawPoints(B,C,D,E,M) \end{tikzpicture} \end{tkzexample} \end{center} \endinput