summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-04-11 22:43:09 +0000
committerKarl Berry <karl@freefriends.org>2020-04-11 22:43:09 +0000
commitbaea2de648941d9a729477cbdcbcbfb096253dde (patch)
tree83506f7bffef0a91b77444d9514624aa6cacfb5c /Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex
parent225c9a6864c8945d937da8f9c458f6bc5eacb6bb (diff)
tkz-euclide (6apr20)
git-svn-id: svn://tug.org/texlive/trunk@54669 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex')
-rw-r--r--Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex429
1 files changed, 429 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex b/Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex
new file mode 100644
index 00000000000..d63e31fdea0
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tkz-euclide/TKZdoc-euclide-polygons.tex
@@ -0,0 +1,429 @@
+\section{Definition of polygons}
+\subsection{Defining the points of a square} \label{def_square}
+We have seen the definitions of some triangles. Let us look at the definitions of some quadrilaterals and regular polygons.
+
+\begin{NewMacroBox}{tkzDefSquare}{\parg{pt1,pt2}}%
+The square is defined in the forward direction. From two points, two more points are obtained such that the four taken in order form a square. The square is defined in the forward direction. The results are in \tkzname{tkzFirstPointResult} and \tkzname{tkzSecondPointResult}.\\
+We can rename them with \tkzcname{tkzGetPoints}.
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+Arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2}}{\tkzcname{tkzDefSquare}\parg{A,B}}{The square is defined in the direct direction.}
+\end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{Using \tkzcname{tkzDefSquare} with two points}
+Note the inversion of the first two points and the result.
+
+\begin{tkzexample}[latex=4cm,small]
+\begin{tikzpicture}[scale=.5]
+ \tkzDefPoint(0,0){A} \tkzDefPoint(3,0){B}
+ \tkzDefSquare(A,B)
+ \tkzDrawPolygon[color=red](A,B,tkzFirstPointResult,%
+ tkzSecondPointResult)
+ \tkzDefSquare(B,A)
+ \tkzDrawPolygon[color=blue](B,A,tkzFirstPointResult,%
+ tkzSecondPointResult)
+\end{tikzpicture}
+\end{tkzexample}
+
+ We may only need one point to draw an isosceles right-angled triangle so we use \tkzcname{tkzGetFirstPoint} or \tkzcname{tkzGetSecondPoint}.
+
+\subsubsection{Use of \tkzcname{tkzDefSquare} to obtain an isosceles right-angled triangle}
+\begin{tkzexample}[latex=7cm,small]
+\begin{tikzpicture}[scale=1]
+ \tkzDefPoint(0,0){A}
+ \tkzDefPoint(3,0){B}
+ \tkzDefSquare(A,B) \tkzGetFirstPoint{C}
+ \tkzDrawPolygon[color=blue,fill=blue!30](A,B,C)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsubsection{Pythagorean Theorem and \tkzcname{tkzDefSquare} }
+\begin{tkzexample}[latex=8cm,small]
+\begin{tikzpicture}[scale=.5]
+\tkzInit
+\tkzDefPoint(0,0){C}
+\tkzDefPoint(4,0){A}
+\tkzDefPoint(0,3){B}
+\tkzDefSquare(B,A)\tkzGetPoints{E}{F}
+\tkzDefSquare(A,C)\tkzGetPoints{G}{H}
+\tkzDefSquare(C,B)\tkzGetPoints{I}{J}
+\tkzFillPolygon[fill = red!50 ](A,C,G,H)
+\tkzFillPolygon[fill = blue!50 ](C,B,I,J)
+\tkzFillPolygon[fill = purple!50](B,A,E,F)
+\tkzFillPolygon[fill = orange,opacity=.5](A,B,C)
+\tkzDrawPolygon[line width = 1pt](A,B,C)
+\tkzDrawPolygon[line width = 1pt](A,C,G,H)
+\tkzDrawPolygon[line width = 1pt](C,B,I,J)
+\tkzDrawPolygon[line width = 1pt](B,A,E,F)
+\tkzLabelSegment[](A,C){$a$}
+\tkzLabelSegment[](C,B){$b$}
+\tkzLabelSegment[swap](A,B){$c$}
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Definition of parallelogram}
+
+\subsection{Defining the points of a parallelogram}
+It is a matter of completing three points in order to obtain a parallelogram.
+\begin{NewMacroBox}{tkzDefParallelogram}{\parg{pt1,pt2,pt3}}%
+From three points, another point is obtained such that the four taken in order form a parallelogram. The result is in \tkzname{tkzPointResult}. \\
+We can rename it with the name \tkzcname{tkzGetPoint}...
+
+\begin{tabular}{lll}%
+\toprule
+arguments & default & definition \\
+\midrule
+\TAline{\parg{pt1,pt2,pt3}}{no default}{Three points are necessary}
+\bottomrule
+\end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{Example of a parallelogram definition}
+
+\begin{tkzexample}[latex=7 cm,small]
+\begin{tikzpicture}[scale=1]
+ \tkzDefPoints{0/0/A,3/0/B,4/2/C}
+ \tkzDefParallelogram(A,B,C)
+ \tkzGetPoint{D}
+ \tkzDrawPolygon(A,B,C,D)
+ \tkzLabelPoints(A,B)
+ \tkzLabelPoints[above right](C,D)
+ \tkzDrawPoints(A,...,D)
+\end{tikzpicture}
+\end{tkzexample}
+
+
+
+\subsubsection{Simple example}
+Explanation of the definition of a parallelogram
+\begin{tkzexample}[latex=7 cm,small]
+\begin{tikzpicture}[scale=1]
+ \tkzDefPoints{0/0/A,3/0/B,4/2/C}
+ \tkzDefPointWith[colinear= at C](B,A)
+ \tkzGetPoint{D}
+ \tkzDrawPolygon(A,B,C,D)
+ \tkzLabelPoints(A,B)
+ \tkzLabelPoints[above right](C,D)
+ \tkzDrawPoints(A,...,D)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsubsection{Construction of the golden rectangle }
+
+\begin{tkzexample}[latex=8cm,small]
+\begin{tikzpicture}[scale=.5]
+ \tkzInit[xmax=14,ymax=10]
+ \tkzClip[space=1]
+ \tkzDefPoint(0,0){A}
+ \tkzDefPoint(8,0){B}
+ \tkzDefMidPoint(A,B)\tkzGetPoint{I}
+ \tkzDefSquare(A,B)\tkzGetPoints{C}{D}
+ \tkzDrawSquare(A,B)
+ \tkzInterLC(A,B)(I,C)\tkzGetPoints{G}{E}
+ \tkzDrawArc[style=dashed,color=gray](I,E)(D)
+ \tkzDefPointWith[colinear= at C](E,B)
+ \tkzGetPoint{F}
+ \tkzDrawPoints(C,D,E,F)
+ \tkzLabelPoints(A,B,C,D,E,F)
+ \tkzDrawSegments[style=dashed,color=gray]%
+(E,F C,F B,E)
+\end{tikzpicture}
+\end{tkzexample}
+
+
+
+
+\subsection{Drawing a square}
+\begin{NewMacroBox}{tkzDrawSquare}{\oarg{local options}\parg{pt1,pt2}}%
+The macro draws a square but not the vertices. It is possible to color the inside. The order of the points is that of the direct direction of the trigonometric circle.
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2}}{|\tkzcname{tkzDrawSquare}|\parg{A,B}}{|\tkzcname{tkzGetPoints\{C\}\{D\}}|}
+\bottomrule
+\end{tabular}
+
+\medskip
+\begin{tabular}{lll}%
+options & example & explication \\
+\midrule
+\TOline{Options TikZ}{|red,line width=1pt|}{}
+\end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{The idea is to inscribe two squares in a semi-circle.}
+
+\begin{tkzexample}[latex=6 cm,small]
+\begin{tikzpicture}[scale=.75]
+ \tkzInit[ymax=8,xmax=8]
+ \tkzClip[space=.25] \tkzDefPoint(0,0){A}
+ \tkzDefPoint(8,0){B} \tkzDefPoint(4,0){I}
+ \tkzDefSquare(A,B) \tkzGetPoints{C}{D}
+ \tkzInterLC(I,C)(I,B) \tkzGetPoints{E'}{E}
+ \tkzInterLC(I,D)(I,B) \tkzGetPoints{F'}{F}
+ \tkzDefPointsBy[projection=onto A--B](E,F){H,G}
+ \tkzDefPointsBy[symmetry = center H](I){J}
+ \tkzDefSquare(H,J) \tkzGetPoints{K}{L}
+ \tkzDrawSector[fill=yellow](I,B)(A)
+ \tkzFillPolygon[color=red!40](H,E,F,G)
+ \tkzFillPolygon[color=blue!40](H,J,K,L)
+ \tkzDrawPolySeg[color=red](H,E,F,G)
+ \tkzDrawPolySeg[color=red](J,K,L)
+ \tkzDrawPoints(E,G,H,F,J,K,L)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{The golden rectangle}
+ \begin{NewMacroBox}{tkzDefGoldRectangle}{\parg{point,point}}%
+The macro determines a rectangle whose size ratio is the number $\Phi$. The created points are in \tkzname{tkzFirstPointResult} and \tkzname{tkzSecondPointResult}. They can be obtained with the macro \tkzcname{tkzGetPoints}. The following macro is used to draw the rectangle.
+
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2}}{\parg{A,B}}{If C and D are created then $AB/BC=\Phi$.}
+ \end{tabular}
+\end{NewMacroBox}
+
+ \begin{NewMacroBox}{tkzDrawGoldRectangle}{\oarg{local options}\parg{point,point}}
+\begin{tabular}{lll}%
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2}}{\parg{A,B}}{Draws the golden rectangle based on the segment $[AB]$}
+\end{tabular}
+
+\medskip
+\begin{tabular}{lll}%
+options & example & explication \\
+\midrule
+\TOline{Options TikZ}{|red,line width=1pt|}{}
+\end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{Golden Rectangles}
+\begin{tkzexample}[latex=6 cm,small]
+\begin{tikzpicture}[scale=.6]
+ \tkzDefPoint(0,0){A} \tkzDefPoint(8,0){B}
+ \tkzDefGoldRectangle(A,B) \tkzGetPoints{C}{D}
+ \tkzDefGoldRectangle(B,C) \tkzGetPoints{E}{F}
+ \tkzDrawPolygon[color=red,fill=red!20](A,B,C,D)
+ \tkzDrawPolygon[color=blue,fill=blue!20](B,C,E,F)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Drawing a polygon}
+ \begin{NewMacroBox}{tkzDrawPolygon}{\oarg{local options}\parg{points list}}%
+Just give a list of points and the macro plots the polygon using the \TIKZ\ options present. You can replace $(A,B,C,D,E)$ by $(A,...,E)$ and $(P_1,P_2,P_3,P_4,P_5)$ by $(P_1,P...,P_5)$
+
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2,pt3,...}}{|\BS tkzDrawPolygon[gray,dashed](A,B,C)|}{Drawing a triangle}
+ \end{tabular}
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+options & default & example \\
+\midrule
+\TOline{Options TikZ}{...}{|\BS tkzDrawPolygon[red,line width=2pt](A,B,C)|}
+ \end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{\tkzcname{tkzDrawPolygon}}
+
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture} [rotate=18,scale=1.5]
+ \tkzDefPoint(0,0){A}
+ \tkzDefPoint(2.25,0.2){B}
+ \tkzDefPoint(2.5,2.75){C}
+ \tkzDefPoint(-0.75,2){D}
+ \tkzDrawPolygon[fill=black!50!blue!20!](A,B,C,D)
+ \tkzDrawSegments[style=dashed](A,C B,D)
+\end{tikzpicture}\end{tkzexample}
+
+\subsection{Drawing a polygonal chain}
+ \begin{NewMacroBox}{tkzDrawPolySeg}{\oarg{local options}\parg{points list}}%
+Just give a list of points and the macro plots the polygonal chain using the \TIKZ\ options present.
+
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2,pt3,...}}{|\BS tkzDrawPolySeg[gray,dashed](A,B,C)|}{Drawing a triangle}
+ \end{tabular}
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+options & default & example \\
+\midrule
+\TOline{Options TikZ}{...}{|\BS tkzDrawPolySeg[red,line width=2pt](A,B,C)|}
+ \end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{Polygonal chain}
+
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture}
+ \tkzDefPoints{0/0/A,6/0/B,3/4/C,2/2/D}
+ \tkzDrawPolySeg(A,...,D)
+ \tkzDrawPoints(A,...,D)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsubsection{Polygonal chain: index notation}
+
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture}
+\foreach \pt in {1,2,...,8} {%
+\tkzDefPoint(\pt*20:3){P_\pt}}
+\tkzDrawPolySeg(P_1,P_...,P_8)
+\tkzDrawPoints(P_1,P_...,P_8)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Clip a polygon}
+ \begin{NewMacroBox}{tkzClipPolygon}{\oarg{local options}\parg{points list}}%
+This macro makes it possible to contain the different plots in the designated polygon.
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2}}{\parg{A,B}}{}
+%\bottomrule
+ \end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{\tkzcname{tkzClipPolygon}}
+\begin{tkzexample}[latex=7 cm,small]
+\begin{tikzpicture}[scale=1.25]
+ \tkzInit[xmin=0,xmax=4,ymin=0,ymax=3]
+ \tkzClip[space=.5]
+ \tkzDefPoint(0,0){A} \tkzDefPoint(4,0){B}
+ \tkzDefPoint(1,3){C} \tkzDrawPolygon(A,B,C)
+ \tkzDefPoint(0,2){D} \tkzDefPoint(2,0){E}
+ \tkzDrawPoints(D,E) \tkzLabelPoints(D,E)
+ \tkzClipPolygon(A,B,C)
+ \tkzDrawLine[color=red](D,E)
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsubsection{Example: use of "Clip" for Sangaku in a square}
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture}[scale=.75]
+ \tkzDefPoint(0,0){A} \tkzDefPoint(8,0){B}
+ \tkzDefSquare(A,B) \tkzGetPoints{C}{D}
+ \tkzDrawPolygon(B,C,D,A)
+ \tkzClipPolygon(B,C,D,A)
+ \tkzDefPoint(4,8){F}
+ \tkzDefTriangle[equilateral](C,D)
+ \tkzGetPoint{I}
+ \tkzDrawPoint(I)
+ \tkzDefPointBy[projection=onto B--C](I)
+ \tkzGetPoint{J}
+ \tkzInterLL(D,B)(I,J) \tkzGetPoint{K}
+ \tkzDefPointBy[symmetry=center K](B)
+ \tkzGetPoint{M}
+ \tkzDrawCircle(M,I)
+ \tkzCalcLength(M,I) \tkzGetLength{dMI}
+ \tkzFillPolygon[color = orange](A,B,C,D)
+ \tkzFillCircle[R,color = yellow](M,\dMI pt)
+ \tkzFillCircle[R,color = blue!50!black](F,4 cm)%
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Color a polygon}
+ \begin{NewMacroBox}{tkzFillPolygon}{\oarg{local options}\parg{points list}}%
+You can color by drawing the polygon, but in this case you color the inside of the polygon without drawing it.
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2,\dots}}{\parg{A,B,\dots}}{}
+%\bottomrule
+ \end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{\tkzcname{tkzFillPolygon}}
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture}[scale=0.7]
+\tkzInit[xmin=-3,xmax=6,ymin=-1,ymax=6]
+\tkzDrawX[noticks]
+\tkzDrawY[noticks]
+\tkzDefPoint(0,0){O} \tkzDefPoint(4,2){A}
+\tkzDefPoint(-2,6){B}
+\tkzPointShowCoord[xlabel=$x$,ylabel=$y$](A)
+\tkzPointShowCoord[xlabel=$x'$,ylabel=$y'$,%
+ ystyle={right=2pt}](B)
+\tkzDrawSegments[->](O,A O,B)
+\tkzLabelSegment[above=3pt](O,A){$\vec{u}$}
+\tkzLabelSegment[above=3pt](O,B){$\vec{v}$}
+\tkzMarkAngle[fill= yellow,size=1.8cm,%
+ opacity=.5](A,O,B)
+\tkzFillPolygon[red!30,opacity=0.25](A,B,O)
+\tkzLabelAngle[pos = 1.5](A,O,B){$\alpha$}
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{Regular polygon}
+ \begin{NewMacroBox}{tkzDefRegPolygon}{\oarg{local options}\parg{pt1,pt2}}%
+From the number of sides, depending on the options, this macro determines a regular polygon according to its center or one side.
+
+\begin{tabular}{lll}%
+\toprule
+arguments & example & explication \\
+\midrule
+\TAline{\parg{pt1,pt2}}{\parg{O,A}}{with option "center", $O$ is the center of the polygon.}
+\TAline{\parg{pt1,pt2}}{\parg{A,B}}{with option "side", $[AB]$ is a side.}
+ \end{tabular}
+
+\medskip
+\begin{tabular}{lll}%
+\toprule
+options & default & example \\
+\midrule
+\TOline{name}{P}{The vertices are named $P1$,$P2$,\dots}
+\TOline{sides}{5}{number of sides.}
+\TOline{center}{center}{The first point is the center.}
+\TOline{side}{center}{The two points are vertices.}
+\TOline{Options TikZ}{...}{}
+\end{tabular}
+\end{NewMacroBox}
+
+\subsubsection{Option \tkzname{center}}
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture}
+ \tkzDefPoints{0/0/P0,0/0/Q0,2/0/P1}
+ \tkzDefMidPoint(P0,P1) \tkzGetPoint{Q1}
+ \tkzDefRegPolygon[center,sides=7](P0,P1)
+ \tkzDefMidPoint(P1,P2) \tkzGetPoint{Q1}
+ \tkzDefRegPolygon[center,sides=7,name=Q](P0,Q1)
+ \tkzDrawPolygon(P1,P...,P7)
+ \tkzFillPolygon[gray!20](Q0,Q1,P2,Q2)
+ \foreach \j in {1,...,7} {\tkzDrawSegment[black](P0,Q\j)}
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsubsection{Option \tkzname{side}}
+\begin{tkzexample}[latex=7cm, small]
+\begin{tikzpicture}[scale=1]
+ \tkzDefPoints{-4/0/A, -1/0/B}
+ \tkzDefRegPolygon[side,sides=5,name=P](A,B)
+ \tkzDrawPolygon[thick](P1,P...,P5)
+\end{tikzpicture}
+\end{tkzexample}
+\endinput \ No newline at end of file