tikz.dev / tkz-euclide Manual

tkz-euclide

Circles

18 Circles by transformation

18.1 The macro \tkzDefCircleBy

These transformations are:

  • translation;

  • homothety;

  • orthogonal reflection or symmetry;

  • central symmetry;

  • orthogonal projection;

  • rotation (degrees);

  • inversion.

The transformation is chosen with the options. For example, we write:

\tkzDefCircleBy[translation= from A to A'](O,M)

\(O\) is the center and \(M\) a point of the circle. The image is a circle: the new center is tkzFirstPointResult, and tkzSecondPointResult is a point of the new circle. You get the results with the macro \tkzGetPoints. With an inversion, the image of a circle through the center of inversion is a line: the two points are then two points of this line.

  • \tkzDefCircleBy[⟨local options⟩](⟨pt1,pt2⟩)

  • The argument is a pair of points, and so is the result. To keep these points, \tkzGetPoints{O’}{M’} gives the name O’ to the center and M’ to the point of the circle.

    argumentsdefinitionexamples
    pt1,pt2existing points\((O,M)\)
    optionsexamples
    translation= from #1 to #2[translation=from A to B](O,M)
    homothety= center #1 ratio #2[homothety=center A ratio .5](O,M)
    reflection= over #1–#2[reflection=over A–B](O,M)
    symmetry= center #1[symmetry=center A](O,M)
    projection= onto #1–#2[projection=onto A–B](O,M)
    rotation= center #1 angle #2[rotation=center O angle 30](O,M)
    inversion= center #1 through #2[inversion =center O through A](O,M)
    inversion negative= center #1 through #2[inversion negative =center O through A](O,M)

    The image is only defined, not drawn.

18.1.1 Translation

Compiled output

\begin{tikzpicture}[>=latex]
\tkzDefPoint(0,0){A} \tkzDefPoint(3,1){B}
\tkzDefPoint(3,2){C} \tkzDefPoint(4,3){D}
\tkzDefCircleBy[translation= from B to A](C,D)
\tkzGetPoints{C'}{D'}
\tkzDrawPoints[teal](A,B,C,D,C',D')
\tkzDrawSegments[orange,->](A,B)
\tkzDrawCircles(C,D C',D')
\tkzLabelPoints[color=teal](A,B,C,C')
\tkzLabelPoints[color=teal,above](D,D')
\end{tikzpicture}
18.1.2 Reflection (orthogonal symmetry)

Compiled output

\begin{tikzpicture}[>=latex]
\tkzDefPoint(0,0){A} \tkzDefPoint(3,1){B}
\tkzDefPoint(3,2){C} \tkzDefPoint(4,3){D}
\tkzDefCircleBy[reflection = over A--B](C,D)
\tkzGetPoints{C'}{D'}
\tkzDrawPoints[teal](A,B,C,D,C',D')
\tkzDrawLine[add =0 and 1][orange](A,B)
\tkzDrawCircles(C,D C',D')
\tkzLabelPoints[color=teal](A,B,C,C')
\tkzLabelPoints[color=teal,right](D,D')
\end{tikzpicture}
18.1.3 Homothety

Compiled output

\begin{tikzpicture}[scale=1.2]
\tkzDefPoint(0,0){A} \tkzDefPoint(3,1){B}
\tkzDefPoint(3,2){C} \tkzDefPoint(4,3){D}
\tkzDefCircleBy[homothety=center A ratio .5](C,D)
\tkzGetPoints{C'}{D'}
\tkzDrawPoints[teal](A,C,D,C',D')
\tkzDrawCircles(C,D C',D')
\tkzLabelPoints[color=teal](A,C,C')
\tkzLabelPoints[color=teal,right](D,D')
\end{tikzpicture}
18.1.4 Symmetry

Compiled output

\begin{tikzpicture}[scale=1]
\tkzDefPoint(3,1){B}
\tkzDefPoint(3,2){C} \tkzDefPoint(4,3){D}
\tkzDefCircleBy[symmetry=center B](C,D)
\tkzGetPoints{C'}{D'}
\tkzDrawPoints[teal](B,C,D,C',D')
\tkzDrawLines[orange](C,C' D,D')
\tkzDrawCircles(C,D C',D')
\tkzLabelPoints[color=teal](C,C')
\tkzLabelPoints[color=teal,above](D)
\tkzLabelPoints[color=teal,below](D')
\end{tikzpicture}
18.1.5 Rotation

Compiled output

\begin{tikzpicture}[scale=0.5]
\tkzDefPoint(3,-1){B}
\tkzDefPoint(3,2){C} \tkzDefPoint(4,3){D}
\tkzDefCircleBy[rotation=center B angle 90](C,D)
\tkzGetPoints{C'}{D'}
\tkzDrawPoints[teal](B,C,D,C',D')
\tkzLabelPoints[color=teal](B,C,D,C',D')
\tkzDrawCircles(C,D C',D')
\end{tikzpicture}
18.1.6 Inversion

Compiled output

\begin{tikzpicture}[scale=1.5]
\tkzSetUpPoint[size=3,color=red,fill=red!20]
\tkzSetUpStyle[color=purple,ultra thin]{st1}
\tkzSetUpStyle[color=cyan,ultra thin]{st2}
\tkzDefPoint(2,0){A} \tkzDefPoint(3,0){B}
\tkzDefPoint(3,2){C} \tkzDefPoint(4,2){D}
\tkzDefCircleBy[inversion = center B through A](C,D)
\tkzGetPoints{C'}{D'}
\tkzDrawPoints(A,B,C,D,C',D')
\tkzLabelPoints(A,B,C,D,C',D')
\tkzDrawCircles(B,A)
\tkzDrawCircles[st1](C,D)
\tkzDrawCircles[st2](C',D')
\end{tikzpicture}