summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tkz/tkz-elements/doc/latex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/tkz/tkz-elements/doc/latex')
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-circle.tex8
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-ellipse.tex133
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-line.tex70
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-point.tex1
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-regular.tex2
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-triangle.tex225
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-examples.tex308
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-main.tex30
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-organization.tex3
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-presentation.tex3
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-structure.tex2
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transfers.tex2
-rw-r--r--macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transferts.tex150
13 files changed, 496 insertions, 441 deletions
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-circle.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-circle.tex
index f84c58d941..7ae96c7ada 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-circle.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-circle.tex
@@ -121,9 +121,9 @@ Three attributes are used (south, west, radius).
\midrule
\textbf{Circles}& &\\
\midrule
-\Imeth{circle}{orthogonal\_from (pt)} & |C = C.OA: orthogonal_from (z.P)| & Refer to (\ref{ssub:altshiller} ; \ref{sub:common_tangent_orthogonality} ; \ref{sub:orthogonal_circles_v1} ; \ref{sub:pencil_v1}) \\
-\Imeth{circle}{orthogonal\_through (pta,ptb)} & |C = C.OA: orthogonal_through (z.z1,z.z2)| & Refer to (\ref{sub:orthogonal_circle_through})\\
-\Imeth{circle}{inversion (...)} & | C.AC: inversion (pt, pts, L or C )|& Refer to \ref{ssub:inversion}, \ref{ssub:inversion_point}, \ref{ssub:inversion_line}, \ref{ssub:inversion_circle}\\
+\Imeth{circle}{orthogonal\_from (pt)} &|C=C.OA:orthogonal_from (z.P)| & Refer to (\ref{ssub:altshiller} ; \ref{sub:common_tangent_orthogonality} ; \ref{sub:orthogonal_circles_v1} ; \ref{sub:pencil_v1}) \\
+\Imeth{circle}{orthogonal\_through (pta,ptb)}&|C=C.OA:orthogonal_through (z.z1,z.z2)| & Refer to (\ref{sub:orthogonal_circle_through})\\
+\Imeth{circle}{inversion (...)} &|C.AC:inversion (pt, pts, L or C)|& Refer to \ref{ssub:inversion}, \ref{ssub:inversion_point}, \ref{ssub:inversion_line}, \ref{ssub:inversion_circle}\\
\Imeth{circle}{midcircle (C)} & |C.inv = C.OA: midcircle (C.EF)| & Refer to \ref{ssub:midcircle} \\
\Imeth{circle}{radical\_circle (C1<,C2>)} & or only (C1) & Refer to \ref{sub:radical_circle}\\
\midrule
@@ -208,7 +208,7 @@ Three attributes are used (south, west, radius).
\begin{minipage}{.5\textwidth}
\begin{Verbatim}
\begin{tkzelements}
- scale = 1.6
+ scale = 1.25
z.A = point: new (1,0)
z.B = point: new (5,2)
z.C = point: new (1.2,2)
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-ellipse.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-ellipse.tex
index 5ea44a57b7..3146f73461 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-ellipse.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-ellipse.tex
@@ -56,23 +56,6 @@ The first attributes are the three points that define the ellipse: : the \Iattr
z.Co = E.covertex
z.Ve = E.vertex
\end{tkzelements}
-\begin{tikzpicture}
- \pgfkeys{/pgf/number format/.cd,fixed,precision=2}
- \tkzGetNodes
- \tkzDrawCircles[teal](C,A)
- \tkzDrawEllipse[red](C,\tkzUseLua{a},\tkzUseLua{b},
- \tkzUseLua{slope})
- \tkzDrawPoints(C,A,B,b,W,S,F1,F2)
- \tkzLabelPoints(C,A,B)
- \tkzDrawLine[add = .5 and .5](A,W)
- \tkzLabelSegment[pos=1.5,above,sloped](A,W){%
- slope = \pgfmathprintnumber{\tkzUseLua{slope}}}
- \tkzLabelPoint[below](S){South}
- \tkzLabelPoint[below left](F1){Focus 1}
- \tkzLabelPoint[below left](F2){Focus 2}
- \tkzLabelPoint[above right](Ve){Vertex ; East}
- \tkzLabelPoint[above right](Co){Covertex ; North}
-\end{tikzpicture}
\end{Verbatim}
\end{minipage}
\begin{minipage}{.5\textwidth}
@@ -96,9 +79,8 @@ The first attributes are the three points that define the ellipse: : the \Iattr
z.Co = E.covertex
z.Ve = E.vertex
\end{tkzelements}
- \hspace*{\fill}
\begin{tikzpicture}
- \pgfkeys{/pgf/number format/.cd,fixed,precision=2}
+\pgfkeys{/pgf/number format/.cd,fixed,precision=2}
\tkzGetNodes
\tkzDrawCircles[teal](C,A)
\tkzDrawEllipse[red](C,\tkzUseLua{a},\tkzUseLua{b},\tkzUseLua{slope})
@@ -113,6 +95,28 @@ The first attributes are the three points that define the ellipse: : the \Iattr
\tkzLabelPoint[above right](Co){Covertex ; North}
\end{tikzpicture}
\end{minipage}
+
+\begin{Verbatim}
+\begin{tikzpicture}
+ \pgfkeys{/pgf/number format/.cd,fixed,precision=2}
+ \tkzGetNodes
+ \tkzDrawCircles[teal](C,A)
+ \tkzDrawEllipse[red](C,\tkzUseLua{a},\tkzUseLua{b},
+ \tkzUseLua{slope})
+ \tkzDrawPoints(C,A,B,b,W,S,F1,F2)
+ \tkzLabelPoints(C,A,B)
+ \tkzDrawLine[add = .5 and .5](A,W)
+ \tkzLabelSegment[pos=1.5,above,sloped](A,W){%
+ slope = \pgfmathprintnumber{\tkzUseLua{slope}}}
+ \tkzLabelPoint[below](S){South}
+ \tkzLabelPoint[below left](F1){Focus 1}
+ \tkzLabelPoint[below left](F2){Focus 2}
+ \tkzLabelPoint[above right](Ve){Vertex ; East}
+ \tkzLabelPoint[above right](Co){Covertex ; North}
+\end{tikzpicture}
+\end{Verbatim}
+
+
% \caption{Class Ellipse}
% subsection attributes_of_an_ellipse (end)
@@ -202,46 +206,7 @@ The function \Igfct{package}{tkzUseLua (variable)} is used to transfer values to
The first two points are the foci of the ellipse, and the third one is the vertex. We can deduce all the other characteristics from these points.
\emph{The function launches the |new| method, defining all the characteristics of the ellipse.}
-\begin{tkzelements}
- scale =1
- z.A = point: new (0 , 0)
- z.B = point: new (5 , 1)
- L.AB = line : new (z.A,z.B)
- z.C = point: new (.8 , 3)
- T.ABC = triangle: new (z.A,z.B,z.C)
- z.N = T.ABC.eulercenter
- z.H = T.ABC.orthocenter
- z.O = T.ABC.circumcenter
- _,_,z.Mc = get_points (T.ABC: medial ())
- L.euler = line: new (z.H,z.O)
- C.circum = circle: new (z.O,z.A)
- C.euler = circle: new (z.N,z.Mc)
- z.i,z.j = intersection (L.euler,C.circum)
- z.I,z.J = intersection (L.euler,C.euler)
- E = ellipse: foci (z.H,z.O,z.I)
- L.AH = line: new (z.A,z.H)
- z.X = intersection (L.AH,C.circum)
- L.XO = line: new (z.X,z.O)
- z.R,z.S = intersection (L.XO,E)
- a,b = E.Rx,E.Ry
- ang = math.deg(E.slope)
-\end{tkzelements}
-\hspace*{\fill}
-\begin{tikzpicture}
-\tkzGetNodes
-\tkzDrawPolygon(A,B,C)
-\tkzDrawCircles[cyan](O,A N,I)
-\tkzDrawSegments(X,R A,X)
-\tkzDrawEllipse[red](N,\tkzUseLua{a},\tkzUseLua{b},\tkzUseLua{ang})
-\tkzDrawLines[add=.2 and .5](I,H)
-\tkzDrawPoints(A,B,C,N,O,X,H,R,S,I)
-\tkzLabelPoints[above](C,X)
-\tkzLabelPoints[above right](N,O)
-\tkzLabelPoints[above left](R)
-\tkzLabelPoints[left](A)
-\tkzLabelPoints[right](B,I,S,H)
-\end{tikzpicture}
-\hspace*{\fill}
+\begin{minipage}{.5\textwidth}
\begin{Verbatim}
\begin{tkzelements}
z.A = point: new (0 , 0)
@@ -267,6 +232,50 @@ The first two points are the foci of the ellipse, and the third one is the verte
ang = math.deg(E.slope)
\end{tkzelements}
\end{Verbatim}
+\end{minipage}
+\begin{minipage}{.5\textwidth}
+ \begin{tkzelements}
+ scale =1
+ z.A = point: new (0 , 0)
+ z.B = point: new (5 , 1)
+ L.AB = line : new (z.A,z.B)
+ z.C = point: new (.8 , 3)
+ T.ABC = triangle: new (z.A,z.B,z.C)
+ z.N = T.ABC.eulercenter
+ z.H = T.ABC.orthocenter
+ z.O = T.ABC.circumcenter
+ _,_,z.Mc = get_points (T.ABC: medial ())
+ L.euler = line: new (z.H,z.O)
+ C.circum = circle: new (z.O,z.A)
+ C.euler = circle: new (z.N,z.Mc)
+ z.i,z.j = intersection (L.euler,C.circum)
+ z.I,z.J = intersection (L.euler,C.euler)
+ E = ellipse: foci (z.H,z.O,z.I)
+ L.AH = line: new (z.A,z.H)
+ z.X = intersection (L.AH,C.circum)
+ L.XO = line: new (z.X,z.O)
+ z.R,z.S = intersection (L.XO,E)
+ a,b = E.Rx,E.Ry
+ ang = math.deg(E.slope)
+ \end{tkzelements}
+ \hspace*{\fill}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygon(A,B,C)
+ \tkzDrawCircles[cyan](O,A N,I)
+ \tkzDrawSegments(X,R A,X)
+ \tkzDrawEllipse[red](N,\tkzUseLua{a},\tkzUseLua{b},\tkzUseLua{ang})
+ \tkzDrawLines[add=.2 and .5](I,H)
+ \tkzDrawPoints(A,B,C,N,O,X,H,R,S,I)
+ \tkzLabelPoints[above](C,X)
+ \tkzLabelPoints[above right](N,O)
+ \tkzLabelPoints[above left](R)
+ \tkzLabelPoints[left](A)
+ \tkzLabelPoints[right](B,I,S,H)
+ \end{tikzpicture}
+ \hspace*{\fill}
+\end{minipage}
+
\begin{Verbatim}
\begin{tikzpicture}
\tkzGetNodes
@@ -283,11 +292,7 @@ The first two points are the foci of the ellipse, and the third one is the verte
\tkzLabelPoints[left](A)
\tkzLabelPoints[right](B,I,S,H)
\end{tikzpicture}
-\end{Verbatim}
-
-
-
-
+ \end{Verbatim}
% subsubsection function_tkzname_ellipse__foci (end)
\subsubsection{Method \Imeth{ellipse}{point} and \Imeth{ellipse}{radii}} % (fold)
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-line.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-line.tex
index 741938eb66..435ad9bcc6 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-line.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-line.tex
@@ -181,6 +181,7 @@ Here's the list of methods for the \tkzNameObj{line} object. The results can be
\Imeth{line}{\_north\_pb(d)} &|z.M=L.AB:_north_pb(2)| &|BM=2|; $BM\perp BA$ ; $\overrightarrow{BA},\overrightarrow{BM}$ clockwise \\
\Imeth{line}{\_south\_pb(d)} &|z.M=L.AB:_south_pb(2)| &|BM=2|; $BM\perp BA$ ; $\overrightarrow{AB},\overrightarrow{AM}$ counterclockwise \\
\Imeth{line}{report(d,pt)} &|z.M=L.AB:report(2,z.N)| &|MN=2|; $AB\parallel MN$ ; Refer to ex. (\ref{ssub:method_report})\\
+\Imeth{line}{colinear\_at(pt,k)} &|z.D=L.AB:colinear_at(z.C,2)| &|CD=2AB|; $AB\parallel CD$ ; Refer to ex. (\ref{ssub:method_imeth_line_colinear__at})\\
\midrule
\textbf{Lines} &&\\
\midrule
@@ -229,7 +230,7 @@ Here's the list of methods for the \tkzNameObj{line} object. The results can be
\midrule
\Imeth{line}{circle ()} & |C.AB = L.AB : circle ()| & center pa through pb \\
\Imeth{line}{circle\_swap ()} & |C.BA = L.AB : circle_swap ()|& center pb through pa \\
-\Imeth{line}{apollonius (r)} & |C.apo = L.AB : apollonius (2)|& Ensemble des points tq. |MA/MB = 2| \\
+\Imeth{line}{apollonius (r)} & |C.apo = L.AB : apollonius (2)|& Set of points tq. |MA/MB = 2| \\
\midrule
\textbf{Transformations} &&\\
\midrule
@@ -248,7 +249,7 @@ Here's the list of methods for the \tkzNameObj{line} object. The results can be
\egroup
\end{minipage}
-\subsubsection{Method report} % (fold)
+\subsubsection{Method \Imeth{line}{report}} % (fold)
\label{ssub:method_report}
|report (d,pt)| If the point is absent, the transfer is made from the first point that defines the line.
@@ -289,7 +290,7 @@ z.O = L.AB : report (3)
\end{minipage}
% subsubsection method_report (end)
-\subsubsection{Triangle with two\_angles} % (fold)
+\subsubsection{Method \Imeth{line}{two\_angles} } % (fold)
\label{ssub:triangle_with_two__angles}
The angles are on either side of the given segment
@@ -332,7 +333,7 @@ The angles are on either side of the given segment
\end{minipage}
% subsubsection triangle_with_two__angles (end)
-\subsubsection{Triangle with three given sides} % (fold)
+\subsubsection{Method \Imeth{line}{sss}} % (fold)
\label{ssub:triangle_with_three_given_sides}
In the following example, a small difficulty arises. The given lengths are not affected by scaling, so it's necessary to use the \Igfct{math}{value (r) } function, which will modify the lengths according to the scale.
@@ -498,7 +499,7 @@ The side lengths are proportional to the lengths given in the table. They depend
\end{minipage}
% subsubsection about_triangles (end)
-\subsubsection{Method point }% (fold)
+\subsubsection{Method \Imeth{line}{point} }% (fold)
\label{ssub:method_point}
This method is very useful. It allows you to place a point on the line under consideration.
If |r = 0| then the point is |pa|, if |r = 1| it's |pb|.
@@ -544,9 +545,50 @@ This method exists for all objects except quadrilaterals.
\end{minipage}
% subsubsection method_point (end)
-\subsubsection{Normalize} % (fold)
-\label{ssub:normalize}
+\subsubsection{Method \Imeth{line}{colinear\_at}} % (fold)
+\label{ssub:method_imeth_line_colinear__at}
+If the coefficient is missing then it defaults to $1$ and in the following example we obtain: $CE=AB$ and $(AB)\parallel (CE)$. For point $D$: $CD = .5AB$ and $(AB)\parallel (CD)$.
+\begin{minipage}{.5\textwidth}
+\begin{Verbatim}
+\begin{tkzelements}
+ z.A = point: new (0 , 0)
+ z.B = point: new (4 , 0)
+ z.C = point: new (1 , 3)
+ L.AB = line : new (z.A,z.B)
+ z.D = L.AB : colinear_at (z.C,.5)
+ z.E = L.AB : colinear_at (z.C)
+\end{tkzelements}
+\begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawSegments(A,B C,E)
+ \tkzDrawPoints(A,B,C,D,E)
+ \tkzLabelPoints(A,B,C,D,E)
+\end{tikzpicture}
+\end{Verbatim}
+\end{minipage}
+\begin{minipage}{.5\textwidth}
+\begin{tkzelements}
+ z.A = point: new (0 , 0)
+ z.B = point: new (4 , 0)
+ z.C = point: new (1 , 3)
+ L.AB = line : new (z.A,z.B)
+ z.D = L.AB : colinear_at (z.C,.5)
+ z.E = L.AB : colinear_at (z.C)
+\end{tkzelements}
+\begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawSegments(A,B C,E)
+ \tkzDrawPoints(A,B,C,D,E)
+ \tkzLabelPoints(A,B,C,D,E)
+\end{tikzpicture}
+\end{minipage}
+
+% subsubsection method_imeth_line_colinear__at (end)
+
+
+\subsubsection{Method \Imeth{line}{normalize}} % (fold)
+\label{ssub:normalize}
\begin{minipage}{.4\textwidth}
\begin{Verbatim}
@@ -586,7 +628,7 @@ This method exists for all objects except quadrilaterals.
% subsubsection normalize (end)
-\subsubsection{Barycenter with a line} % (fold)
+\subsubsection{Method \Imeth{line}{barycenter}} % (fold)
\label{ssub:barycenter_with_a_line}
\begin{minipage}{.4\textwidth}
@@ -621,7 +663,7 @@ This method exists for all objects except quadrilaterals.
\end{minipage}
% subsubsection barycenter_with_a_line (end)
-\subsubsection{Example: new line from a defined line} % (fold)
+\subsubsection{method \Imeth{line}{ll\_from}} % (fold)
\label{ssub:new_line_from_a_defined_line}
\begin{minipage}{0.5\textwidth}
\begin{Verbatim}
@@ -673,7 +715,7 @@ _,z.E = get_points ( L.CD: ll_from (z.B))
% subsubsection new_line_from_a_defined_line (end)
-\subsubsection{Example: projection of several points} % (fold)
+\subsubsection{Method \Imeth{line}{projection}} % (fold)
\label{ssub:example_projection_of_several_points}
\begin{minipage}{0.5\textwidth}
\begin{Verbatim}
@@ -788,7 +830,7 @@ z.a,z.b = L.ab.pa,L.ab.pb
% subsubsection example_combination_of_methods (end)
-\subsubsection{Example: translation} % (fold)
+\subsubsection{Method \Imeth{line}{translation}} % (fold)
\label{ssub:example_translation}
\begin{minipage}{0.6\textwidth}
@@ -830,7 +872,7 @@ z.a,z.b = L.ab.pa,L.ab.pb
% subsubsection example_translation (end)
-\subsubsection{Example: distance and projection} % (fold)
+\subsubsection{Method \Imeth{line}{distance}} % (fold)
\label{ssub:example_distance_and_projection}
\begin{minipage}{0.5\textwidth}
@@ -876,7 +918,7 @@ z.a,z.b = L.ab.pa,L.ab.pb
% \caption{Method distance with line object}
% subsubsection example_distance_and_projection (end)
-\subsubsection{Reflection of object} % (fold)
+\subsubsection{Method \Imeth{line}{reflection} of an object} % (fold)
\label{ssub:reflection_of_object}
\begin{minipage}{.5\textwidth}
@@ -924,7 +966,7 @@ z.a,z.b = L.ab.pa,L.ab.pb
% subsubsection reflection_of_object (end)
-\subsection{Apollonius circle MA/MB = k} % (fold)
+\subsection{Method \Imeth{line}{apollonius} Apollonius circle MA/MB = k} % (fold)
\label{sub:apollonius_circle_ma_mb_k}
\begin{Verbatim}
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-point.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-point.tex
index 68c5a73e5a..e404dc763b 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-point.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-point.tex
@@ -605,6 +605,7 @@ Rotate a triangle by an angle of $\pi/6$ around $O$.
\begin{minipage}{.5\textwidth}
\begin{Verbatim}
\begin{tkzelements}
+ scale = .75
z.O = point : new ( -1 , -1 )
z.A = point : new ( 2 , 0 )
z.B = point : new ( 5 , 0 )
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-regular.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-regular.tex
index 2413a97d91..3ec9e777a6 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-regular.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-regular.tex
@@ -81,7 +81,7 @@ z.H = RP.five.proj
\bgroup
\catcode`_=12
\small
-\captionof{table}{Circle methods.}\label{regular:met}
+\captionof{table}{regular\_polygon methods.}\label{regular:met}
\begin{tabular}{ll}
\toprule
\textbf{Methods} & \textbf{Comments} \\
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-triangle.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-triangle.tex
index f54a53f39e..80b711e46f 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-triangle.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-classes-triangle.tex
@@ -202,7 +202,9 @@ Through the Lemoine point draw lines parallel to the triangle's sides. The point
then lie on a circle known as the first Lemoine circle. } \\
\Imeth{triangle}{second\_lemoine\_circle ()} & Refer to example \ref{sub:antiparallel_through_lemoine_point}\\
\Imeth{triangle}{spieker\_circle ()} & The incircle of the medial triangle\\
-
+\Imeth{triangle}{cevian\_circle ()} & Circumscribed circle of a Cevian triangle Refer to (\ref{ssub:method_imeth_triangle_cevian})\\
+\Imeth{triangle}{pedal\_circle ()} & Circumscribed circle of the podar triangle Refer to (\ref{ssub:method_imeth_triangle_pedal})\\
+\Imeth{triangle}{conway\_circle ()} & Circumscribed circle of Conway points Refer to (\ref{ssub:method_imeth_triangle_conway})\\
\bottomrule
\end{tabular}
\end{minipage}
@@ -234,7 +236,8 @@ Remark: If you don't need to use the triangle object several times, you can obta
\Imeth{triangle}{tangential ()} & Triangle formed by the lines tangent to the circumcircle at the vertices\\
\Imeth{triangle}{feuerbach ()} & Triangle formed by the points of tangency of the euler circle with the excircles\\
\Imeth{triangle}{anti () }& Anticomplementary Triangle The given triangle is its medial triangle. \\
-\Imeth{triangle}{cevian (pt)} & Triangle formed with the endpoints of the three cevians with respect to |pt|.\\
+\Imeth{triangle}{cevian (pt)} & Triangle formed with the endpoints of the three cevians with respect to |pt|. refer to (\ref{ssub:method_imeth_triangle_cevian})\\
+\Imeth{triangle}{pedal (pt)} & Triangle formed by projections onto the sides of |pt| Refer to \ref{ssub:method_imeth_triangle_pedal}\\
\Imeth{triangle}{symmedian ()} & Triangle formed with the intersection points of the symmedians. \\
\Imeth{triangle}{euler ()} & Triangle formed with the euler points \\
\midrule
@@ -256,6 +259,171 @@ Remark: If you don't need to use the triangle object several times, you can obta
\egroup
% subsubsection methods_of_the_class_triangle (end)
+
+\subsubsection{Méthodes \Imeth{triangle}{cevian} et \Imeth{triangle}{cevian\_circle}} % (fold)
+\label{ssub:method_imeth_triangle_cevian}
+\begin{minipage}{.5\textwidth}
+\begin{Verbatim}
+\begin{tkzelements}
+ scale = 2
+ z.a = point: new (1,2)
+ z.b = point: new (5,1)
+ z.c = point: new (3,5)
+ T = triangle: new (z.a,z.b,z.c)
+ z.i = T.orthocenter
+ T.cevian = T : cevian (z.i)
+ z.ta,z.tb,z.tc = get_points (T.cevian)
+ C.cev = T : cevian_circle (z.i)
+ z.w = C.cev.center
+\end{tkzelements}
+\begin{tikzpicture}
+\tkzGetNodes
+\tkzDrawPolygons(a,b,c ta,tb,tc)
+\tkzDrawSegments(a,ta b,tb c,tc)
+\tkzDrawPoints(a,b,c,i,ta,tb,tc)
+\tkzLabelPoints(a,b,c,i)
+\tkzDrawCircles(w,ta)
+\end{tikzpicture}
+\end{Verbatim}
+\end{minipage}
+\begin{minipage}{.5\textwidth}
+\begin{tkzelements}
+scale = 2
+z.a = point: new (1,2)
+z.b = point: new (5,1)
+z.c = point: new (3,5)
+T = triangle: new (z.a,z.b,z.c)
+z.i = T.orthocenter
+T.cevian = T : cevian (z.i)
+z.ta,z.tb,z.tc = get_points (T.cevian)
+C.cev = T : cevian_circle (z.i)
+z.w = C.cev.center
+\end{tkzelements}
+\begin{tikzpicture}
+\tkzGetNodes
+\tkzDrawPolygons(a,b,c ta,tb,tc)
+\tkzDrawSegments(a,ta b,tb c,tc)
+\tkzDrawPoints(a,b,c,i,ta,tb,tc)
+\tkzLabelPoints(a,b,c,i)
+\tkzDrawCircles(w,ta)
+\end{tikzpicture}
+\end{minipage}
+% subsubsection method_imeth_triangle_cevian (end)
+
+
+\subsubsection{Méthodes \Imeth{triangle}{pedal} et \Imeth{triangle}{pedal\_circle}} % (fold)
+\label{ssub:method_imeth_triangle_pedal}
+
+\begin{minipage}{.5\textwidth}
+\begin{Verbatim}
+ \begin{tkzelements}
+ z.A = point: new(0,0)
+ z.B = point: new(5,0)
+ z.C = point: new(1.5,3)
+ z.O = point: new (2,1)
+ T.ABC = triangle: new (z.A,z.B,z.C)
+ T.pedal = T.ABC : pedal (z.O)
+ z.E,z.F,z.G = get_points(T.pedal)
+ C.pedal = T.ABC : pedal_circle (z.O)
+ z.w = C.pedal.center
+ z.T = C.pedal.through
+ \end{tkzelements}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygon(A,B,C)
+ \tkzDrawPolygon[red](E,F,G)
+ \tkzDrawCircle(w,T)
+ \tkzDrawPoints(A,B,C,E,F,G,O)
+ \tkzLabelPoints(A,B,C,E,F,G)
+ \tkzDrawSegments(O,E O,F O,G)
+ \end{tikzpicture}
+\end{Verbatim}
+\end{minipage}
+\begin{minipage}{.5\textwidth}
+ \begin{tkzelements}
+ z.A = point: new(0,0)
+ z.B = point: new(5,0)
+ z.C = point: new(1.5,3)
+ z.O = point: new (2,1)
+ T.ABC = triangle: new (z.A,z.B,z.C)
+ T.pedal = T.ABC : pedal (z.O)
+ z.E,z.F,z.G = get_points(T.pedal)
+ C.pedal = T.ABC : pedal_circle (z.O)
+ z.w = C.pedal.center
+ z.T = C.pedal.through
+ \end{tkzelements}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygon(A,B,C)
+ \tkzDrawPolygon[red](E,F,G)
+ \tkzDrawCircle(w,T)
+ \tkzDrawPoints(A,B,C,E,F,G,O)
+ \tkzLabelPoints(A,B,C,E,F,G)
+ \tkzDrawSegments(O,E O,F O,G)
+ \end{tikzpicture}
+\end{minipage}
+% subsubsection method_imeth_triangle_pedal (end)
+
+\subsubsection{Méthodes \Imeth{triangle}{conway\_points} et \Imeth{triangle}{conway\_circle}} % (fold)
+\label{ssub:method_imeth_triangle_conway}
+
+En géométrie plane, le théorème du cercle de Conway stipule que lorsque les côtés se rencontrant à chaque sommet d'un triangle sont prolongés par la longueur du côté opposé, les six points d'extrémité des trois segments de droite résultants se trouvent sur un cercle dont le centre est le centre d'incidence du triangle.
+
+\begin{minipage}{.5\textwidth}
+ \begin{Verbatim}
+ \begin{tkzelements}
+ z.A = point:new (0,0)
+ z.C = point:new (5,0)
+ z.B = point:new (1,3)
+ T.ABC = triangle : new (z.A,z.B,z.C)
+ C.conway = T.ABC : conway_circle ()
+ z.w,z.t = get_points(C.conway)
+ z.t1,z.t2,z.t3,z.t4,
+ z.t5,z.t6= T.ABC : conway_points ()
+ \end{tkzelements}
+ \hspace*{5cm}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygon(A,B,C)
+ \tkzDrawCircles(w,t)
+ \tkzDrawPoints(t1,t2,t3,t4,t5,t6)
+ \tkzLabelPoints(t1,t2,t3,t4,t5,t6)
+ \tkzDrawSegments[dashed](t1,A t2,A t3,B)
+ \tkzDrawSegments[dashed](t4,B t5,C t6,C)
+ \tkzMarkSegments(B,C t1,A t2,A)
+ \tkzMarkSegments[mark=||](A,C t3,B t4,B)
+ \tkzMarkSegments[mark=|||](A,B t5,C t6,C)
+ \end{tikzpicture}
+ \end{Verbatim}
+\end{minipage}
+\begin{minipage}{.5\textwidth}
+ \begin{tkzelements}
+ scale = .5
+ z.A = point:new (0,0)
+ z.C = point:new (5,0)
+ z.B = point:new (1,3)
+ T.ABC = triangle : new (z.A,z.B,z.C)
+ C.conway = T.ABC : conway_circle ()
+ z.w,z.t = get_points(C.conway)
+ z.t1,z.t2,z.t3,
+ z.t4,z.t5,z.t6= T.ABC : conway_points ()
+ \end{tkzelements}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygon(A,B,C)
+ \tkzDrawCircles(w,t)
+ \tkzDrawPoints(t1,t2,t3,t4,t5,t6)
+ \tkzLabelPoints(t1,t2,t3,t4,t5,t6)
+ \tkzDrawSegments[dashed](t1,A t2,A t3,B t4,B t5,C t6,C)
+ \tkzMarkSegments(B,C t1,A t2,A)
+ \tkzMarkSegments[mark=||](A,C t3,B t4,B)
+ \tkzMarkSegments[mark=|||](A,B t5,C t6,C)
+ \end{tikzpicture}
+\end{minipage}
+
+% subsubsection methode_imeth_triangle_conway (end)
+
+
\subsubsection{Euler line} % (fold)
\label{ssub:euler_line}
@@ -549,10 +717,61 @@ z.T2 = L.T2.pb
\tkzMarkSegments(B,E B,M B,F)
\end{tikzpicture}
\end{Verbatim}
+% subsection harmonic_division_and_bisector (end)
+
+\subsubsection{Method \Imeth{triangle}{cevan}} % (fold)
+\label{ssub:method_imeth_triangle_cevan}
+
+\begin{minipage}{.5\textwidth}
+ \begin{Verbatim}
+ \begin{tkzelements}
+ scale = 2
+ z.a = point: new (1,2)
+ z.b = point: new (5,1)
+ z.c = point: new (3,5)
+ T = triangle: new (z.a,z.b,z.c)
+ z.i = T.orthocenter
+ T.cevian = T : cevian (z.i)
+ z.ta,z.tb,z.tc = get_points (T.cevian)
+ C.cev = T : cevian_circle (z.i)
+ z.w = C.cev.center
+ \end{tkzelements}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygons(a,b,c ta,tb,tc)
+ \tkzDrawSegments(a,ta b,tb c,tc)
+ \tkzDrawPoints(a,b,c,i,ta,tb,tc)
+ \tkzLabelPoints(a,b,c,i)
+ \tkzDrawCircles(w,ta)
+ \end{tikzpicture}
+ \end{Verbatim}
+\end{minipage}
+\begin{minipage}{.5\textwidth}
+ \begin{tkzelements}
+ scale = 2
+ z.a = point: new (1,2)
+ z.b = point: new (5,1)
+ z.c = point: new (3,5)
+ T = triangle: new (z.a,z.b,z.c)
+ z.i = T.orthocenter
+ T.cevian = T : cevian (z.i)
+ z.ta,z.tb,z.tc = get_points (T.cevian)
+ C.cev = T : cevian_circle (z.i)
+ z.w = C.cev.center
+ \end{tkzelements}
+ \begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawPolygons(a,b,c ta,tb,tc)
+ \tkzDrawSegments(a,ta b,tb c,tc)
+ \tkzDrawPoints(a,b,c,i,ta,tb,tc)
+ \tkzLabelPoints(a,b,c,i)
+ \tkzDrawCircles(w,ta)
+ \end{tikzpicture}
+\end{minipage}
+% subsubsection method_imeth_triangle_cevan (end)
-% subsection harmonic_division_and_bisector (end)
% subsection methods_of_the_class_triangle (end)
% section class_triangle (end)
\endinput
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-examples.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-examples.tex
index 1b35c27263..4f46d4a127 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-examples.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-examples.tex
@@ -720,6 +720,7 @@ Same result using the function |T.ABC.ab : apollonius (k) |
\subsection{Orthogonal circle through} % (fold)
\label{sub:orthogonal_circle_through}
+\begin{minipage}{.5\textwidth}
\begin{Verbatim}
\begin{tkzelements}
z.O = point: new (0,1)
@@ -738,8 +739,8 @@ Same result using the function |T.ABC.ab : apollonius (k) |
\tkzLabelPoints[right](O,A,z1,z2,c)
\end{tikzpicture}
\end{Verbatim}
-
-\begin{tkzelements}
+\end{minipage}
+\begin{minipage}{.5\textwidth}\begin{tkzelements}
z.O = point: new (0,1)
z.A = point: new (1,0)
z.z1 = point: new (-1.5,-1.5)
@@ -748,7 +749,6 @@ Same result using the function |T.ABC.ab : apollonius (k) |
C = C.OA: orthogonal_through (z.z1,z.z2)
z.c = C.center
\end{tkzelements}
-
\hspace*{\fill}
\begin{tikzpicture}
\tkzGetNodes
@@ -758,6 +758,7 @@ Same result using the function |T.ABC.ab : apollonius (k) |
\tkzLabelPoints[right](O,A,z1,z2,c)
\end{tikzpicture}
\hspace*{\fill}
+\end{minipage}
% subsection orthogonal_circle_through (end)
\subsection{Divine ratio} % (fold)
@@ -1516,70 +1517,50 @@ z.O_0 = L.AB.mid
\begin{minipage}[t]{.4\textwidth}\vspace{0pt}%
\begin{Verbatim}
\begin{tkzelements}
- scale=.75
- z.A = point: new (0 , 0)
- z.B = point: new (4 , 0)
- z.D = point: new (12,0)
- L.AB = line : new (z.A,z.B)
- z.X = L.AB.north_pa
- L.XB = line : new (z.X,z.B)
- z.E = L.XB.mid
- L.DE = line : new (z.D,z.E)
- L.XA = line : new (z.X,z.A)
- z.F = intersection (L.DE,L.XA)
- L.AE = line : new (z.A,z.E)
- L.BF = line : new (z.B,z.F)
- z.G = intersection (L.AE,L.BF)
- L.XG = line : new (z.X,z.G)
-z.C = intersection (L.XG,L.AB)
+ scale=.75
+ z.A = point: new (0 , 0)
+ z.B = point: new (4 , 0)
+ z.G = point: new (2,2)
+ L.AG = line : new (z.A,z.G)
+ L.AB = line : new (z.A,z.B)
+ z.E = L.AG : colinear_at (z.B,.5)
+ L.GE = line : new (z.G,z.E)
+ z.D = intersection (L.GE,L.AB)
+ z.F = z.B : symmetry (z.E)
+ L.GF = line :new (z.G,z.F)
+ z.C = intersection (L.GF,L.AB)
\end{tkzelements}
\begin{tikzpicture}
- \tkzGetNodes
- \tkzDefPoints{0/0/A,4/0/B}
- \tkzDefPoints{2/2/G}
- \tkzDefLine[parallel=through B,K=.5](A,G) \tkzGetPoint{E}
- \tkzInterLL(G,E)(A,B) \tkzGetPoint{D}
- \tkzDefPointBy[symmetry= center B](E) \tkzGetPoint{F}
- \tkzInterLL(G,F)(A,B) \tkzGetPoint{C}
- \tkzDrawLines(A,D A,G F,E G,F G,D)
- \tkzDrawPoints(A,B,G,E,F,C,D)
- \tkzLabelPoints(A,B,G,E,F,C,D)
- \tkzMarkSegments(F,B B,E)
+ \tkzGetNodes
+ \tkzDrawLines(A,B A,G A,D A,G F,E G,F G,D)
+ \tkzDrawPoints(A,B,G,E,F,C,D)
+ \tkzLabelPoints(A,B,G,E,F,C,D)
+ \tkzMarkSegments(F,B B,E)
\end{tikzpicture}
\end{Verbatim}
\end{minipage}
\begin{minipage}[t]{.6\textwidth}\vspace{0pt}%
\begin{tkzelements}
-scale=.75
-z.A = point: new (0 , 0)
-z.B = point: new (4 , 0)
-z.D = point: new (12,0)
-L.AB = line : new (z.A,z.B)
-z.X = L.AB.north_pa
-L.XB = line : new (z.X,z.B)
-z.E = L.XB.mid
-L.DE = line : new (z.D,z.E)
-L.XA = line : new (z.X,z.A)
-z.F = intersection (L.DE,L.XA)
-L.AE = line : new (z.A,z.E)
-L.BF = line : new (z.B,z.F)
-z.G = intersection (L.AE,L.BF)
-L.XG = line : new (z.X,z.G)
-z.C = intersection (L.XG,L.AB)
+ scale=.75
+ z.A = point: new (0 , 0)
+ z.B = point: new (4 , 0)
+ z.G = point: new (2,2)
+ L.AG = line : new (z.A,z.G)
+ L.AB = line : new (z.A,z.B)
+ z.E = L.AG : colinear_at (z.B,.5)
+ L.GE = line : new (z.G,z.E)
+ z.D = intersection (L.GE,L.AB)
+ z.F = z.B : symmetry (z.E)
+ L.GF = line :new (z.G,z.F)
+ z.C = intersection (L.GF,L.AB)
\end{tkzelements}
\hspace*{\fill}
\begin{tikzpicture}
-\tkzGetNodes
-\tkzDefPoints{0/0/A,4/0/B}
-\tkzDefPoints{2/2/G}
-\tkzDefLine[parallel=through B,K=.5](A,G) \tkzGetPoint{E}
-\tkzInterLL(G,E)(A,B) \tkzGetPoint{D}
-\tkzDefPointBy[symmetry= center B](E) \tkzGetPoint{F}
-\tkzInterLL(G,F)(A,B) \tkzGetPoint{C}
-\tkzDrawLines(A,D A,G F,E G,F G,D)
-\tkzDrawPoints(A,B,G,E,F,C,D)
-\tkzLabelPoints(A,B,G,E,F,C,D)
-\tkzMarkSegments(F,B B,E)
+ \tkzGetNodes
+ \tkzDrawLines(A,B A,G A,D A,G F,E G,F G,D)
+ \tkzDrawPoints(A,B,G,E,F,C,D)
+ \tkzLabelPoints(A,B,G,E,F,C,D)
+ \tkzMarkSegments(F,B B,E)
\end{tikzpicture}
\hspace*{\fill}
\end{minipage}
@@ -1590,22 +1571,22 @@ z.C = intersection (L.XG,L.AB)
\begin{minipage}[t]{.5\textwidth}\vspace{0pt}%
\begin{Verbatim}
\begin{tkzelements}
- scale = .5
- z.A = point: new (0 , 0)
- z.B = point: new (6 , 0)
- z.D = point: new (12 , 0)
- L.AB = line: new (z.A,z.B)
- z.X = L.AB.north_pa
- L.XB = line: new (z.X,z.B)
- z.E = L.XB.mid
- L.ED = line: new (z.E,z.D)
- L.AX = line: new (z.A,z.X)
- L.AE = line: new (z.A,z.E)
- z.F = intersection (L.ED,L.AX)
- L.BF = line: new (z.B,z.F)
- z.G = intersection (L.AE,L.BF)
- L.GX = line: new (z.G,z.X)
- z.C = intersection (L.GX,L.AB)
+scale = .5
+z.A = point: new (0 , 0)
+z.B = point: new (6 , 0)
+z.D = point: new (12 , 0)
+L.AB = line: new (z.A,z.B)
+z.X = L.AB.north_pa
+L.XB = line: new (z.X,z.B)
+z.E = L.XB.mid
+L.ED = line: new (z.E,z.D)
+L.AX = line: new (z.A,z.X)
+L.AE = line: new (z.A,z.E)
+z.F = intersection (L.ED,L.AX)
+L.BF = line: new (z.B,z.F)
+z.G = intersection (L.AE,L.BF)
+L.GX = line: new (z.G,z.X)
+z.C = intersection (L.GX,L.AB)
\end{tkzelements}
\begin{tikzpicture}
\tkzGetNodes
@@ -2015,7 +1996,7 @@ z.H = L.OOp : projection (z.X)
\begin{minipage}[t]{.5\textwidth}\vspace{0pt}%
\begin{Verbatim}
\begin{tkzelements}
- scale = .25
+ scale = .5
z.A = point: new (0,0)
z.B = point: new (6,0)
z.C = point: new (0.8,4)
@@ -2039,7 +2020,8 @@ z.H = L.OOp : projection (z.X)
\end{tikzpicture}
\end{Verbatim}
\end{minipage}
-\begin{minipage}[t]{.5\textwidth}\vspace{0pt}%
+
+
\begin{tkzelements}
scale = .5
z.A = point: new (0,0)
@@ -2066,7 +2048,7 @@ z.H = L.OOp : projection (z.X)
\tkzLabelPoints(A,B,C)
\end{tikzpicture}
\hspace*{\fill}
-\end{minipage}
+
% subsection radical_circle (end)
\subsection{Euler ellipse} % (fold)
@@ -2112,44 +2094,44 @@ _,z.W = intersection (L.ZO,E)
\begin{minipage}{.4\textwidth}
\begin{Verbatim}
\begin{tkzelements}
- scale = 1.3
- z.A = point: new (0 , 0)
- z.B = point: new (5 , 1)
- L.AB = line : new (z.A,z.B)
- z.C = point: new (.8 , 3)
- T.ABC = triangle: new (z.A,z.B,z.C)
- z.N = T.ABC.eulercenter
- z.G = T.ABC.centroid
- z.O = T.ABC.circumcenter
- z.H = T.ABC.orthocenter
+ scale = 1.3
+ z.A = point: new (0 , 0)
+ z.B = point: new (5 , 1)
+ L.AB = line : new (z.A,z.B)
+ z.C = point: new (.8 , 3)
+ T.ABC = triangle: new (z.A,z.B,z.C)
+ z.N = T.ABC.eulercenter
+ z.G = T.ABC.centroid
+ z.O = T.ABC.circumcenter
+ z.H = T.ABC.orthocenter
z.Ma,z.Mb,
- z.Mc = get_points (T.ABC : medial ())
+ z.Mc = get_points(T.ABC:medial ())
z.Ha,z.Hb,
- z.Hc = get_points (T.ABC : orthic ())
+ z.Hc = get_points(T.ABC:orthic ())
z.Ea,z.Eb,
- z.Ec = get_points (T.ABC: extouch())
- L.euler = T.ABC : euler_line ()
- C.circum = T.ABC : circum_circle ()
- C.euler = T.ABC : euler_circle ()
- z.I,z.J = intersection (L.euler,C.euler)
- E = ellipse: foci (z.H,z.O,z.I)
- a = E.Rx
- b = E.Ry
- ang = math.deg(E.slope)
- L.AH = line: new (z.A,z.H)
- L.BH = line: new (z.B,z.H)
- L.CH = line: new (z.C,z.H)
- z.X = intersection (L.AH,C.circum)
- _,z.Y = intersection (L.BH,C.circum)
- _,z.Z = intersection (L.CH,C.circum)
- L.BC = line: new (z.B,z.C)
- L.XO = line: new (z.X,z.O)
- L.YO = line: new (z.Y,z.O)
- L.ZO = line: new (z.Z,z.O)
- z.x = intersection (L.BC,L.XO)
- z.U = intersection (L.XO,E)
- _,z.V = intersection (L.YO,E)
- _,z.W = intersection (L.ZO,E)
+ z.Ec = get_points(T.ABC:extouch())
+ L.euler = T.ABC : euler_line ()
+ C.circum = T.ABC : circum_circle ()
+ C.euler = T.ABC : euler_circle ()
+ z.I,z.J = intersection (L.euler,C.euler)
+ E = ellipse: foci (z.H,z.O,z.I)
+ a = E.Rx
+ b = E.Ry
+ ang = math.deg(E.slope)
+ L.AH = line: new (z.A,z.H)
+ L.BH = line: new (z.B,z.H)
+ L.CH = line: new (z.C,z.H)
+ z.X = intersection (L.AH,C.circum)
+ _,z.Y = intersection (L.BH,C.circum)
+ _,z.Z = intersection (L.CH,C.circum)
+ L.BC = line: new (z.B,z.C)
+ L.XO = line: new (z.X,z.O)
+ L.YO = line: new (z.Y,z.O)
+ L.ZO = line: new (z.Z,z.O)
+ z.x = intersection (L.BC,L.XO)
+ z.U = intersection (L.XO,E)
+ _,z.V = intersection (L.YO,E)
+ _,z.W = intersection (L.ZO,E)
\end{tkzelements}
\end{Verbatim}
\end{minipage}
@@ -2169,7 +2151,6 @@ _,z.W = intersection (L.ZO,E)
\tkzDrawPoints(A,B,C,N,G,H,O,X,Y,Z,Ma,Mb,Mc,Ha,Hb,Hc)
\tkzDrawEllipse[blue](N,\tkzUseLua{a},\tkzUseLua{b},\tkzUseLua{ang})
\end{tikzpicture}
-\hspace*{\fill}
\end{minipage}
\begin{Verbatim}
@@ -3539,24 +3520,24 @@ z.Cp,_ = intersection (L.GD,C.xD)
\begin{minipage}[t]{.5\textwidth}\vspace{0pt}%
\begin{Verbatim}
- \begin{tikzpicture}
- \tkzGetNodes
- \tkzDrawCircles(O,B)
- \tkzDrawCircles[cyan](P,B)
- \tkzDrawCircles[red](w,E)
- \tkzDrawCircles[new](x,F)
- \tkzDrawSegments(A,G E,G C,G)
- \tkzDrawPolygons[new](A,E,C A',E',C')
- \tkzDrawPoints(A,...,G,A',E',C',O,P)
- \begin{scope}[font=\scriptsize]
- \tkzLabelPoints(A,...,F)
- \tkzLabelPoints[above left](G,A',E',C')
- \tkzLabelCircle[left](O,B)(30){$(\beta)$}
- \tkzLabelCircle[below](P,A)(40){$(\gamma)$}
- \tkzLabelCircle[right](w,C)(90){$(\alpha)$}
- \tkzLabelCircle[left](x,B)(-230){$((\delta))$}
- \end{scope}
- \end{tikzpicture}
+\begin{tikzpicture}
+ \tkzGetNodes
+ \tkzDrawCircles(O,B)
+ \tkzDrawCircles[cyan](P,B)
+ \tkzDrawCircles[red](w,E)
+ \tkzDrawCircles[new](x,F)
+ \tkzDrawSegments(A,G E,G C,G)
+ \tkzDrawPolygons[new](A,E,C A',E',C')
+ \tkzDrawPoints(A,...,G,A',E',C',O,P)
+ \begin{scope}[font=\scriptsize]
+ \tkzLabelPoints(A,...,F)
+ \tkzLabelPoints[above left](G,A',E',C')
+ \tkzLabelCircle[left](O,B)(30){$(\beta)$}
+ \tkzLabelCircle[below](P,A)(40){$(\gamma)$}
+ \tkzLabelCircle[right](w,C)(90){$(\alpha)$}
+ \tkzLabelCircle[left](x,B)(-230){$((\delta))$}
+ \end{scope}
+\end{tikzpicture}
\end{Verbatim}
\end{minipage}
\begin{minipage}[t]{.5\textwidth}\vspace{0pt}%
@@ -3639,7 +3620,6 @@ L.TA = C.wE : tangent_at (z.A)
L.TC = C.xE : tangent_at (z.C)
z.I = intersection (L.TA,L.TC)
\end{tkzelements}
-
\hspace*{\fill}
\begin{tikzpicture}
\tkzGetNodes
@@ -3652,6 +3632,7 @@ z.I = intersection (L.TA,L.TC)
\tkzLabelPoints[above right](E,F)
\tkzLabelPoints[below](C)
\end{tikzpicture}
+\hspace*{\fill}
\end{minipage}
% subsection three_tangents (end)
@@ -3802,7 +3783,7 @@ z.B = point: new (5,1)
z.C = point: new (2,3)
T = triangle: new (z.A,z.B,z.C)
z.O = T.circumcenter
-z.o,z.w = get_points (T : first_lemoine_circle ())
+z.o,z.w = get_points(T:first_lemoine_circle())
z.L = T : lemoine_point ()
\end{tkzelements}
\hspace*{\fill}
@@ -3813,7 +3794,6 @@ z.L = T : lemoine_point ()
\tkzLabelPoints(A,B,C,o,w,O,L)
\tkzDrawCircles(o,w O,A)
\end{tikzpicture}
-\hspace*{\fill}
\end{minipage}
% subsection first_lemoine_circle (end)
@@ -4233,61 +4213,10 @@ z.Xip,z.Yip,z.Zip = C.ins : inversion (z.xi,z.yi,z.zi)
\tkzLabelPoints(A,B,C,E,F,G)
\end{tikzpicture}
\end{Verbatim}
-
-
% subsection soddy_circle_with_function (end)
-\subsubsection{Pappus chain} % (fold)
-\label{ssub:pappus_chain}
- Soit le point $D$ appartenant à la droite $(AC)$ tel que
- \[ DB \cdot DA = AC^2\]
- alors $B$ est l'image de $D$ dans l'inversion de centre $A$ et puissance $AC^2$.
- Les demi-cercles de diamètre $[AB]$ et$[AC]$ passent par le pôle $A$. Ils ont pour images les demi-droites $\mathcal{L'}$ et $\mathcal{L}$.
-
-Les cercles de centre $J_i$ et de diamètre $S_iT_i$ ont pour images les cercles de diamètre $S'_iT'_i$.
-
- \pgfmathsetmacro{\xB}{6}%
- \pgfmathsetmacro{\xC}{9}%
- \pgfmathsetmacro{\xD}{(\xC*\xC)/\xB}%
- \pgfmathsetmacro{\xJ}{(\xC+\xD)/2}%
- \pgfmathsetmacro{\r}{\xD-\xJ}%
- \pgfmathsetmacro{\nc}{2}%
-
-\begin{tikzpicture}[scale=1,ultra thin]
- \tkzDefPoints{0/0/A,\xB/0/B,\xC/0/C,\xD/0/D}
- \tkzDefPointBy[rotation = center C angle -90](B) \tkzGetPoint{c}
- \tkzDefPointBy[rotation = center A angle 90](C) \tkzGetPoint{a}
- \tkzDefPointBy[rotation = center D angle -90](C) \tkzGetPoint{d}
- \tkzDrawLines[add=0 and 2.25](C,c)
- \tkzDrawLines[add=0 and 1.5](D,d)
- \tkzDefCircle[diameter](A,C) \tkzDrawSemiCircle(tkzPointResult,C)
- \tkzDefCircle[diameter](A,B) \tkzDrawSemiCircle(tkzPointResult,B)
- \tkzDefCircle[diameter](B,C) \tkzDrawSemiCircle(tkzPointResult,C)
- \tkzDefCircle[diameter](C,D) \tkzDrawSemiCircle(tkzPointResult,D)
- \tkzDrawArc[red](A,C)(a)
- \tkzDrawPoints(A,B,C,D)
- \tkzLabelPoints(A,B,C,D)
- \tkzLabelLine[left,pos=3](C,c){$\mathcal{L}$}
- \tkzLabelLine[right,pos=2.5](D,d){$\mathcal{L'}$}
- \foreach \i in {1,...,\nc}
-{\tkzDefPoint(\xJ,2*\r*\i){J}
- \tkzDefPoint(\xJ,2*\r*\i-\r){H}
- \tkzDefCircleBy[inversion = center A through C](J,H)\tkzGetPoints{J'}{H'}
- \tkzInterLC(A,J)(J,H) \tkzGetPoints{S}{T}
- \tkzDefPointsBy[inversion = center A through C](S,T){S',T'}
- \tkzDrawCircle(J,H)
- \tkzDefCircle[diameter](S',T') \tkzGetPoint{I'}
- \tkzDrawCircle(I',T')
- \tkzDrawLines[dashed,add = 0 and .15](A,T A,S A,H)
- \tkzDrawPoints(J,H,H',S,S',T,T')
- \tkzLabelPoint(J){$J_\i$}
- \tkzLabelPoint(S){$S_\i$}
- \tkzLabelPoint(T){$T_\i$}
- \tkzLabelPoint(H){$H_\i$}
- \tkzLabelPoint(S'){$S'_\i$}
- \tkzLabelPoint(T'){$T'_\i$}
- \tkzLabelPoint(H'){$H'_\i$}}
-\end{tikzpicture}
+\subsection{Pappus chain} % (fold)
+\label{sub:pappus_chain}
\begin{tkzelements}
scale =.75
@@ -4374,7 +4303,7 @@ Les cercles de centre $J_i$ et de diamètre $S_iT_i$ ont pour images les cercles
\end{tikzpicture}
\vfill
\end{minipage}
-% subsubsection pappus_chain (end)
+% subsection pappus_chain (end)
\subsection{Three Circles} % (fold)
\label{sub:three_circles}
@@ -4449,7 +4378,7 @@ z.O_2 = L.CB.mid
C.O0B = circle: new ( z.O_0, z.B)
C.O1C = circle: new ( z.O_1, z.C)
C.O2B = circle: new ( z.O_2, z.B)
-z.M_0 = C.O1C : external_similitude (C.O2B)
+z.M_0 = C.O1C:external_similitude(C.O2B)
L.O0C = line:new(z.O_0,z.C)
T.golden = L.O0C : golden ()
z.L = T.golden.pc
@@ -4488,7 +4417,7 @@ z.D_2,z.E_2,z.F_2,z.G_2 = z.M_0 : homothety (kk,z.D_1,z.E_1,z.F_1,z.G_1)
C.O0B = circle: new ( z.O_0, z.B)
C.O1C = circle: new ( z.O_1, z.C)
C.O2B = circle: new ( z.O_2, z.B)
- z.M_0 = C.O1C : external_similitude (C.O2B)
+ z.M_0 = C.O1C:external_similitude(C.O2B)
L.O0C = line:new(z.O_0,z.C)
T.golden = L.O0C : golden ()
z.L = T.golden.pc
@@ -4514,6 +4443,7 @@ z.D_2,z.E_2,z.F_2,z.G_2 = z.M_0 : homothety (kk,z.D_1,z.E_1,z.F_1,z.G_1)
\end{Verbatim}
\end{minipage}
\begin{minipage}{.5\textwidth}
+ \hfill
\begin{tikzpicture}[scale=.7]
\tkzGetNodes
\tkzDrawPolygon[red](O_2,O_0,I,D,H)
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-main.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-main.tex
index cd967f1af0..55608bb26b 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-main.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-main.tex
@@ -1,7 +1,7 @@
% !TEX TS-program = lualatex
% encoding : utf8
-% Documentation of tkz-elements v2.20c
-% Copyright 2023 Alain Matthes
+% Documentation of tkz-elements v2.25c
+% Copyright 2024 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.
@@ -21,10 +21,10 @@
headings = small
]{tkz-doc}
\gdef\tkznameofpack{tkz-elements}
-\gdef\tkzversionofpack{2.20c}
+\gdef\tkzversionofpack{2.25c}
\gdef\tkzdateofpack{\today}
\gdef\tkznameofdoc{tkz-elements.pdf}
-\gdef\tkzversionofdoc{2.20c}
+\gdef\tkzversionofdoc{2.25c}
\gdef\tkzdateofdoc{\today}
\gdef\tkzauthorofpack{Alain Matthes}
\gdef\tkzadressofauthor{}
@@ -33,11 +33,12 @@
\gdef\tkzengine{lualatex}
\gdef\tkzurlauthorcom{http://altermundus.fr}
\nameoffile{\tkznameofpack}
+
% -- Packages ---------------------------------------------------
\usepackage[dvipsnames,svgnames]{xcolor}
\usepackage{calc}
\usepackage{tkz-base}
-\usepackage{tkz-euclide}
+\usepackage[mini]{tkz-euclide}
\usepackage{tkz-elements}
\usepackage{pgfornament}
\usetikzlibrary{backgrounds}
@@ -144,6 +145,7 @@ sharp corners
\newcommand*{\IEmacro}[1]{\index{#1_1@\texttt{\textbackslash#1}}\texttt{#1}}
\newcommand*{\tkzimpbf}[1]{\texttt{\textbf{#1}}}
\newcommand*{\tkzEHand}{\textcolor{red}{\lefthand}}
+\newcommand*{\ItkzPopt}[2]{\texttt{#2}\index{#1_3@\texttt{#1: options}!\texttt{#2}}}
%<--------------------------------------------------------------------------->
% settings styles
@@ -181,8 +183,7 @@ sharp corners
This document compiles some notes about \tkzname{\tkznameofpack}, the initial version of a \code{Lua} library designed to perform all the necessary calculations for defining objects in Euclidean geometry figures. Your document must be compiled using Lua\LaTeX.\\
With \pkg{tkz-elements}, definitions and calculations are exclusively conducted using \pkg{Lua}. \\
The primary programming approach offered is oriented towards \code{object programming}, utilizing object classes such as point, line, triangle, circle, and ellipse. Currently, after the calculations are completed, \pkg{tkz-euclide} or \pkg{TikZ} is used for drawing purposes.\\
- I discovered Lua and object-oriented programming while developing this package, so it's highly likely that I've made a few mistakes. If you'd like to contribute to the development of this package or provide advice on how to proceed, please contact me via email. \\
-Please note: English is not my native language, so there may be some errors."
+ I discovered Lua and object-oriented programming while developing this package, so it's highly likely that I've made a few mistakes. If you'd like to contribute to the development of this package or provide advice on how to proceed, please contact me via email.
}
\presentation
@@ -197,8 +198,8 @@ Special thanks to \tkzimp{Wolfgang Büchel} for his invaluable contribution in c
\href{http://mathworld.wolfram.com/about/author.html}{MathWorld}.
\vspace*{12pt}
-\lefthand\ You can find some examples on my site:
-\href{http://altermundus.fr}{altermundus.fr}. \hspace{2cm} under construction!
+\lefthand\ You can find some examples on my site and a french documentation:
+\href{http://altermundus.fr}{altermundus.fr}.
\vfill
Please report typos or any other comments to this documentation to: \href{mailto:al.ma@mac.com}{\textcolor{blue}{Alain Matthes}}.
@@ -248,7 +249,6 @@ Project Public License Distributed from \href{http://www.ctan.org/}{CTAN}\ arch
|r| denotes a real number, |cx| complex number, |d| a positive real number, |n| an integer, |an| an angle, |b| a boolean, |s| a character string, |pt| a point, |t| a table, |m| a matrix, |v| variable, |L| a straight line, |C| a circle, |T| a triangle, |E| an ellipse, |V| a vector,|Q| a quadrilateral, |P| a parallelogram, |R| a rectangle, |S| a square, |RP| a regular polygon, |M| a matrix, |O| an object (pt, L,C,T), . . a list of points or an object, < > optional argument.
\begin{multicols}{3}
-
\fbox{\textbf{point}}\\
\textbf{Attributes} table(\ref{point:att}) \\
|re -> r| \\
@@ -320,7 +320,9 @@ Project Public License Distributed from \href{http://www.ctan.org/}{CTAN}\ arch
|_south_pa (d) -> pt| \\
|_south_pb (d) -> pt| \\
|_east (d) -> pt| \\
-|_west (d) -> pt| \\
+|_west (d) -> pt| \\
+|report (r,pt) -> pt| \\
+|colinear_at (pt,k) -> pt| \\
|translation (...) -> O| \\
|projection (...) -> O| \\
|reflection (...) -> O| \\
@@ -348,7 +350,6 @@ Project Public License Distributed from \href{http://www.ctan.org/}{CTAN}\ arch
|sublime () -> T| \\
|egyptian () -> T| \\
|square (<swap>) -> T| \\
-|report (r,pt) -> T| \\
\\
\fbox{\textbf{triangle}} \\
\textbf{Attributes} table(\ref{triangle:att}) \\
@@ -387,6 +388,7 @@ Project Public License Distributed from \href{http://www.ctan.org/}{CTAN}\ arch
|nine_points () -> pt| \\
|point (t) -> pt| \\
|soddy_center () -> pt| \\
+|conway_points () -> pts| \\
|euler_line () -> L| \\
|symmedian_line (n) -> L| \\
|altitude (n) -> L| \\
@@ -401,6 +403,9 @@ Project Public License Distributed from \href{http://www.ctan.org/}{CTAN}\ arch
|second_lemoine_circle() -> C| \\
|spieker_circle() -> C| \\
|soddy_circle () -> C| \\
+|conway_circle () -> C| \\
+|pedal_circle () -> C| \\
+|cevian_circle () -> C| \\
|orthic() -> T| \\
|medial() -> T| \\
|incentral() -> T| \\
@@ -414,6 +419,7 @@ Project Public License Distributed from \href{http://www.ctan.org/}{CTAN}\ arch
|cevian (pt) -> T| \\
|symmedian () -> T| \\
|euler () -> T| \\
+|pedal (pt) -> T| \\
|projection (pt) -> pt,pt,pt| \\
|parallelogram () -> pt| \\
|area () -> d| \\
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-organization.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-organization.tex
index 13b17d6a5d..1778a7c8fb 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-organization.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-organization.tex
@@ -5,6 +5,7 @@ Here's a sample organization.
The line |% !TEX TS-program = lualatex| ensures that you compile with Lua\LATEX{}. The \code{standalone} class is useful, as all you need to do here is create a figure.
+You can load \tkzname{tkz-euclide} in three different ways. The simplest is |\usepackage[mini]{tkz-euclide}| and you have full access to the package. You also have the option to use the \ItkzPopt{tkz-euclide}{lua} option. This will allow you, if you want to perform calculations outside of \tkzname{\tkznameofpack}, to obtain them using \code{lua}. Finally, the recommended method is to use the \ItkzPopt{tkz-euclide}{mini} option. This allows you to load only the modules necessary for drawing. You can still optionally draw using \TIKZ.
The package \pkg{ifthen} is useful if you need to use some Boolean.
@@ -25,7 +26,7 @@ A third advantage is that the code can be reused.
% Created by Alain Matthes on 2024-01-09.
\documentclass[margin = 12pt]{standalone}
-\usepackage{tkz-euclide}
+\usepackage[mini]{tkz-euclide}
\usepackage{tkz-elements,ifthen}
\begin{document}
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-presentation.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-presentation.tex
index 2687f9debe..f0689fcc74 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-presentation.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-presentation.tex
@@ -148,7 +148,8 @@ C.QA = circle: new ( z.Q, z.A)
z.P_0 = intersection (C.PC,C.AB) -- search for intersections of two circles.
z.P_1 = intersection (C.PC,C.AC) -- idem
_,z.P_2 = intersection (C.QA,C.CB) -- idem
-z.O_3 = triangle: new ( z.P_0, z.P_1, z.P_2).circumcenter -- circumcenter attribute of “triangle”
+z.O_3 = triangle: new ( z.P_0, z.P_1, z.P_2).circumcenter
+ -- circumcenter attribute of “triangle”
\end{tkzelements}
\end{Verbatim}
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-structure.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-structure.tex
index 15b167a793..d1958d4763 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-structure.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-structure.tex
@@ -1,6 +1,6 @@
\section{Structure} % (fold)
\label{sec:structure}
-\tkzNamePack{tkz-elements.sty} loads the \tkzNamePack{luacode} package to create the \tkzNameEnv{tkzelements} environment, which is based on the \tkzNameEnv{luacode} environment.
+\tkzNamePack{tkz-elements} loads the \tkzNamePack{luacode} package to create the \tkzNameEnv{tkzelements} environment, which is based on the \tkzNameEnv{luacode} environment.
Within the \tkzNameEnv{tkzelements} environment, the scale is initialized to 1, and then all values in various tables are cleared.
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transfers.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transfers.tex
index a66f493604..264097e9b8 100644
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transfers.tex
+++ b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transfers.tex
@@ -2,7 +2,7 @@
\newpage
\section{Transfers} % (fold)
\label{sec:transfers}
-\subsection{Fom Lua to tkz-euclide or TikZ} % (fold)
+\subsection{From Lua to tkz-euclide or TikZ} % (fold)
\label{sub:fom_lua_to_tkz_euclide_or_tikz}
In this section, we'll explore how to transfer points, Booleans, and numerical values.
diff --git a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transferts.tex b/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transferts.tex
deleted file mode 100644
index 39d5940e72..0000000000
--- a/macros/latex/contrib/tkz/tkz-elements/doc/latex/TKZdoc-elements-transferts.tex
+++ /dev/null
@@ -1,150 +0,0 @@
-
-\newpage
-\section{Transfers} % (fold)
-\label{sec:transfers}
-\subsection{Fom Lua to tkz-euclide or TikZ} % (fold)
-\label{sub:fom_lua_to_tkz_euclide_or_tikz}
-
-In this section, we'll look at how to transfer points, Booleans and numerical values.
-
-\subsubsection{Points transfer} % (fold)
-\label{ssub:points_transfer}
-We use an environment \tkzname{tkzelements} outside an environment \tkzname{tikzpicture} which allows us to carry out all the necessary calculations, then we launch the macro \Imacro{tkzGetNodes} which transforms the affixes of the table \tkzname{z} into \tkzname{Nodes}. It only remains to draw.
-
-Currently the drawing program is either \TIKZ\ or \pkg{tkz-euclide}. You have the possibility to use another package to trace but for that you have to create a macro similar to \tkzcname{tkzGetNodes}. Of course, this package must be able to store the points as does \TIKZ\ or \pkg{tkz-euclide}.
-
-\vspace*{1em}
-
-\begin{mybox}
-\begin{verbatim}
-\def\tkzGetNodes{\directlua{%
- for K,V in pairs(z) do
- local n,sd,ft
- n = string.len(K)
- if n >1 then
- _,_,ft, sd = string.find( K , "(.+)(.)" )
- if sd == "p" then K=ft.."'" end
- _,_,xft, xsd = string.find( ft , "(.+)(.)" )
- if xsd == "p" then K=xft.."'".."'" end
- end
- tex.print("\\coordinate ("..K..") at ("..V.re..","..V.im..") ;\\\\")
-end}
-}
-\end{verbatim}
-\end{mybox}
-See the section In-depth Study \ref{sec:in_depth_study} for an explanation of the previous code.
-
-The environment \tkzNameEnv{tkzelements} allows to use the underscore |_| and the macro \tkzcname{tkzGetNodes} allows to obtain names of nodes containing \tkzname{prime} or \tkzname{double prime}. (see the next example)
-
-\begin{minipage}{0.5\textwidth}
-\begin{verbatim}
-\begin{tkzelements}
- scale = 1.2
- z.o = point: new (0,0)
- z.a_1 = point: new (2,1)
- z.a_2 = point: new (1,2)
- z.ap = z.a_1 + z.a_2
- z.app = z.a_1 - z.a_2
-\end{tkzelements}
-\begin{tikzpicture}
- \tkzGetNodes
- \tkzDrawSegments(o,a_1 o,a_2 o,a' o,a'')
- \tkzDrawSegments[red](a_1,a' a_2,a')
- \tkzDrawSegments[blue](a_1,a'' a_2,a'')
- \tkzDrawPoints(a_1,a_2,a',o,a'')
- \tkzLabelPoints(o,a_1,a_2,a',a'')
-\end{tikzpicture}
-\end{verbatim}
-\end{minipage}
-\begin{minipage}{0.5\textwidth}
-\begin{tkzelements}
- scale = 1.2
- z.o = point: new (0,0)
- z.a_1 = point: new (2,1)
- z.a_2 = point: new (1,2)
- z.ap = z.a_1 + z.a_2
- z.app = z.a_1 - z.a_2
-\end{tkzelements}
-\hspace{\fill}
-\begin{tikzpicture}
- \tkzGetNodes
- \tkzDrawSegments(o,a_1 o,a_2 o,a' o,a'')
- \tkzDrawSegments[red](a_1,a' a_2,a')
- \tkzDrawSegments[blue](a_1,a'' a_2,a'')
- \tkzDrawPoints(a_1,a_2,a',o,a'')
- \tkzLabelPoints(o,a_1,a_2,a',a'')
-\end{tikzpicture}
-\hspace{\fill}
-\end{minipage}%
-
-\newpage
-% subsection fom_lua_to_tkz_euclide_or_tikz (end)
-\subsubsection{Other transfers} % (fold)
-\label{ssub:other_transfers}
-
-Sometimes it's useful to transfer angle, length measurements or boolean. For this purpose, I have created the macro (see \ref{sub:transfer_from_lua_to_tex})
-\IEmacro{tkzUseLua(value)}
-
-\begin{verbatim}
-\begin{tkzelements}
- z.b = point: new (1,1)
- z.a = point: new (4,2)
- z.c = point: new (2,2)
- z.d = point: new (5,2)
- L.ab = line : new (z.a,z.b)
- L.cd = line : new (z.c,z.d)
- det = (z.b-z.a)^(z.d-z.c)
- if det == 0 then bool = true
- else bool = false
- end
- x = intersection (L.ab,L.cd)
-\end{tkzelements}
-
-The intersection of the two lines lies at
- a point whose affix is:\tkzUseLua{x}
-
-\begin{tikzpicture}
- \tkzGetNodes
- \tkzDrawPoints(a,...,d)
- \ifthenelse{\equal{\tkzUseLua{bool}}{true}}{
- \tkzDrawSegments[red](a,b c,d)}{%
- \tkzDrawSegments[blue](a,b c,d)}
- \tkzLabelPoints(a,...,d)
-\end{tikzpicture}
-\end{verbatim}
-
- \begin{tkzelements}
- z.b = point: new (1,1)
- z.a = point: new (4,2)
- z.c = point: new (2,2)
- z.d = point: new (5,1)
- L.ab = line : new (z.a,z.b)
- L.cd = line : new (z.c,z.d)
- det = (z.b-z.a)^(z.d-z.c)
- if det == 0 then bool = true
- else bool = false
- end
- x = intersection (L.ab,L.cd)
- \end{tkzelements}
-
- The intersection of the two lines lies at
- a point whose affix is: \tkzUseLua{x}
-
-\vspace{1em}
-\hspace{\fill}
-\begin{tikzpicture}
- \tkzGetNodes
- \tkzInit[xmin =-1,ymin=-1,xmax=6,ymax=3]
- \tkzGrid\tkzAxeX\tkzAxeY
- \tkzDrawPoints(a,...,d)
- \ifthenelse{\equal{\tkzUseLua{bool}}{true}}{
- \tkzDrawSegments[red](a,b c,d)}{%
- \tkzDrawSegments[blue](a,b c,d)}
- \tkzLabelPoints(a,...,d)
- \end{tikzpicture}
- \hspace{\fill}
-% subsubsection other_transfers (end)
-% subsubsection points_transfer (end)
-% section transferts (end)
-
-\endinput \ No newline at end of file