tikz.dev / tkz-euclide Manual

tkz-euclide

Points

Now that the fixed points are defined, we can get new points from their references, with the macros of the package or with macros you create yourself. The calculations are usually done by the package and remain hidden. You may need some mathematical constants; here is the list of the constants defined by the package.

7 Auxiliary tools

7.1 Constants

tkz-euclide knows the following constants:

\def\tkzPhi{1.618034}
\def\tkzInvPhi{0.618034}
\def\tkzSqrtPhi{1.27202}
\def\tkzSqrTwo{1.414213}
\def\tkzSqrThree{1.7320508}
\def\tkzSqrFive{2.2360679}
\def\tkzSqrTwobyTwo{0.7071065}
\def\tkzPi{3.1415926}
\def\tkzEuler{2.71828182}
7.2 New point by calculation

When a macro of tkz-euclide creates a new point, it is stored internally with the reference tkzPointResult. You can give it your own reference with the macro \tkzGetPoint; the new reference is placed between braces.

  • \tkzGetPoint{⟨ref⟩}

  • If the result is in tkzPointResult, you can access it with \tkzGetPoint.

    argumentsdefaultexample
    refno default\tkzGetPoint{M} see the next example

Sometimes you need to get two points. This is done with

  • \tkzGetPoints{⟨ref1⟩}{⟨ref2⟩}

  • The results are in tkzFirstPointResult and tkzSecondPointResult.

    argumentsdefaultexample
    {ref1,ref2}no default\tkzGetPoints{M,N} It’s the case with \tkzInterCC

If you only need the first or the second point, you can also use:

  • \tkzGetFirstPoint{⟨ref1⟩}

  • argumentsdefaultexample
    ref1no default\tkzGetFirstPoint{M}
  • \tkzGetSecondPoint{⟨ref2⟩}

  • argumentsdefaultexample
    ref2no default\tkzGetSecondPoint{M}

Sometimes the results consist of a point and a dimension. You get the point with \tkzGetPoint and the dimension with \tkzGetLength.

  • \tkzGetLength{⟨name of a macro⟩}

  • argumentsdefaultexample
    name of a macrono default\tkzGetLength{rAB} \rAB gives the length in cm

8 Special points

Here are some special points.

8.1 Midpoint of a segment \tkzDefMidPoint

This macro defines the midpoint of a segment.

  • \tkzDefMidPoint(⟨pt1,pt2⟩)

  • The result is in tkzPointResult. We can access it with \tkzGetPoint.

    argumentsdefaultdefinition
    (pt1,pt2)no defaultpt1 and pt2 are two points
8.1.1 Use of \tkzDefMidPoint

See also the use of \tkzDefPoint.

Compiled output

\begin{tikzpicture}[scale=1]
\tkzDefPoint(2,3){A}
\tkzDefPoint(6,2){B}
\tkzDefMidPoint(A,B)
\tkzGetPoint{M}
\tkzDrawSegment(A,B)
\tkzDrawPoints(A,B,M)
\tkzLabelPoints[below](A,B,M)
\end{tikzpicture}
8.2 Golden ratio \tkzDefGoldenRatio

From Wikipedia: In mathematics, two quantities are in the golden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Expressed algebraically, for quantities \(a\) and \(b\) such that \(a > b > 0\), \(a+b\) is to \(a\) as \(a\) is to \(b\).

\( \frac{a+b}{a} = \frac{a}{b} = \phi = \frac{1 + \sqrt{5}}{2}\)

One of the two solutions of the equation \(x^2 - x - 1 = 0\) is the golden ratio \(\phi\), \(\phi = \frac{1 + \sqrt{5}}{2}\).

  • \tkzDefGoldenRatio(⟨pt1,pt2⟩)

  • argumentsdefaultexample
    (pt1,pt2)no default\tkzDefGoldenRatio(A,C) \tkzGetPoint{B}

    \(AB=a\), \(BC=b\) and \(\dfrac{AC}{AB} = \dfrac{AB}{BC} =\phi\)

8.2.1 Use the golden ratio to divide a line segment

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,6/0/C}
\tkzDefMidPoint(A,C) \tkzGetPoint{I}
%\tkzDefPointWith[linear,K=\tkzInvPhi](A,C)
\tkzDefGoldenRatio(A,C) \tkzGetPoint{B}
\tkzDrawSegments(A,C)
\tkzDrawPoints(A,B,C)
\tkzLabelPoints(A,B,C)
\end{tikzpicture}
8.2.2 Golden arbelos

Compiled output

\begin{tikzpicture}[scale=.6]
\tkzDefPoints{0/0/A,10/0/B}
\tkzDefGoldenRatio(A,B) \tkzGetPoint{C}
\tkzDefMidPoint(A,B) \tkzGetPoint{O_1}
\tkzDefMidPoint(A,C) \tkzGetPoint{O_2}
\tkzDefMidPoint(C,B) \tkzGetPoint{O_3}
\tkzDrawSemiCircles[fill=purple!15](O_1,B)
\tkzDrawSemiCircles[fill=teal!15](O_2,C O_3,B)
\end{tikzpicture}

You can also use the following macro.

8.3 Barycentric coordinates with \tkzDefBarycentricPoint

\(n\) points \(pt_1\), \(pt_2\), …, \(pt_n\) define \(n\) vectors \(\overrightarrow{v_1}\), \(\overrightarrow{v_2}\), …, \(\overrightarrow{v_n}\) with the origin as common starting point. \(\alpha_1\), \(\alpha_2\), …, \(\alpha_n\) are \(n\) numbers; the vector

Compiled output

defines a unique point.

  • \tkzDefBarycentricPoint(⟨pt1=\(\alpha_1\),pt2=\(\alpha_2\),…⟩)

  • argumentsdefaultdefinition
    (pt1=\(\alpha_1\),pt2=\(\alpha_2\),…)no defaultEach point has a assigned weight

    You need at least two points. Result in tkzPointResult.

8.3.1 With two points

In the following example, we get the barycenter of the points \(A\) and \(B\) with the coefficients \(1\) and \(2\), in other words:

\[ \overrightarrow{AI}= \frac{2}{3}\overrightarrow{AB} \]

Compiled output

\begin{tikzpicture}
\tkzDefPoint(2,3){A}
\tkzDefShiftPointCoord[2,3](30:4){B}
\tkzDefBarycentricPoint(A=1,B=2)
\tkzGetPoint{G}
\tkzDrawLine(A,B)
\tkzDrawPoints(A,B,G)
\tkzLabelPoints(A,B,G)
\end{tikzpicture}
8.3.2 With three points

This time \(M\) is simply the centroid of the triangle.

For simplicity and consistency, there is also \tkzCentroid.

Compiled output

\begin{tikzpicture}[scale=.8]
\tkzDefPoints{2/1/A,5/3/B,0/6/C}
\tkzDefBarycentricPoint(A=1,B=1,C=1)
\tkzGetPoint{G}
\tkzDefMidPoint(A,B) \tkzGetPoint{C'}
\tkzDefMidPoint(A,C) \tkzGetPoint{B'}
\tkzDefMidPoint(C,B) \tkzGetPoint{A'}
\tkzDrawPolygon(A,B,C)
\tkzDrawLines[add=0 and 1,new](A,G B,G C,G)
\tkzDrawPoints[new](A',B',C',G)
\tkzDrawPoints(A,B,C)
\tkzLabelPoint[above right](G){$G$}
\tkzAutoLabelPoints[center=G](A,B,C)
\tkzLabelPoints[above right](A')
\tkzLabelPoints[below](B',C')
\end{tikzpicture}
8.4 Internal and external similitude centers: \tkzDefSimilitudeCenter

The centers of the two homotheties that map one circle onto another are called the external and internal centers of similitude. You can use \tkzDefIntSimilitudeCenter and \tkzDefExtSimilitudeCenter, but the following macro is better.

  • \tkzDefSimilitudeCenter[⟨options⟩](⟨O,A⟩)(⟨O’,B⟩)

  • argumentsexampleexplanation
    (⟨pt1,pt2⟩)(⟨pt3,pt4⟩)\((O,A)(O',B)\)\(r=OA,r'=O'B\)
    optionsdefaultdefinition
    extextexternal center
    intextinternal center
8.4.1 Internal and external with node

Compiled output

\begin{tikzpicture}[scale=.7]
\tkzDefPoints{0/0/O,4/-5/A,3/0/B,5/-5/C}
\tkzDefSimilitudeCenter[int](O,B)(A,C)
\tkzGetPoint{I}
\tkzDefSimilitudeCenter[ext](O,B)(A,C)
\tkzGetPoint{J}
\tkzDefLine[tangent from = I](O,B)
\tkzGetPoints{D}{E}
\tkzDefLine[tangent from = I](A,C)
\tkzGetPoints{D'}{E'}
\tkzDefLine[tangent from = J](O,B)
\tkzGetPoints{F}{G}
\tkzDefLine[tangent from = J](A,C)
\tkzGetPoints{F'}{G'}
\tkzDrawCircles(O,B A,C)
\tkzDrawSegments[add = .5 and .5,new](D,D' E,E')
\tkzDrawSegments[add= 0 and 0.25,new](J,F J,G)
\tkzDrawPoints(O,A,I,J,D,E,F,G,D',E',F',G')
\end{tikzpicture}
8.4.2 D’Alembert Theorem

Compiled output

\begin{tikzpicture}[scale=.6,rotate=90]
\tkzDefPoints{0/0/A,3/0/a,7/-1/B,5.5/-1/b}
\tkzDefPoints{5/-4/C,4.25/-4/c}
\tkzDrawCircles(A,a B,b C,c)
\tkzDefExtSimilitudeCenter(A,a)(B,b) \tkzGetPoint{I}
\tkzDefExtSimilitudeCenter(A,a)(C,c) \tkzGetPoint{J}
\tkzDefExtSimilitudeCenter(C,c)(B,b) \tkzGetPoint{K}
\tkzDefIntSimilitudeCenter(A,a)(B,b) \tkzGetPoint{I'}
\tkzDefIntSimilitudeCenter(A,a)(C,c) \tkzGetPoint{J'}
\tkzDefIntSimilitudeCenter(C,c)(B,b) \tkzGetPoint{K'}
\tkzDrawPoints(A,B,C,I,J,K,I',J',K')
\tkzDrawSegments[new](I,K A,I A,J B,I B,K C,J C,K)
\tkzDrawSegments[new](I,J' I',J I',K)
\end{tikzpicture}

You can also use \tkzDefBarycentricPoint to find a center of homothety:

\tkzDefBarycentricPoint(O=\r,A=\R) \tkzGetPoint{I}
\tkzDefBarycentricPoint(O={-\r},A=\R) \tkzGetPoint{J}

8.4.3 Example with node

Compiled output

\begin{tikzpicture}[rotate=60,scale=.5]
\tkzDefPoints{0/0/A,5/0/C}
\tkzDefGoldenRatio(A,C) \tkzGetPoint{B}
\tkzDefSimilitudeCenter(A,B)(C,B)\tkzGetPoint{J}
\tkzDefTangent[from = J](A,B) \tkzGetPoints{F}{G}
\tkzDefTangent[from = J](C,B) \tkzGetPoints{F'}{G'}
\tkzDrawCircles(A,B C,B)
\tkzDrawSegments[add= 0 and 0.25,cyan](J,F J,G)
\tkzDrawPoints(A,J,F,G,F',G')
\end{tikzpicture}
8.5 Harmonic division with \tkzDefHarmonic
  • \tkzDefHarmonic[⟨options⟩](⟨pt1,pt2,pt3⟩) or (⟨pt1,pt2,k⟩)

  • optionsdefaultdefinition
    bothboth(⟨A,B,2⟩) we look for C and D such that \((A,B;C,D) = -1\) and CA=2CB
    extboth(⟨A,B,C⟩) we look for D such that \((A,B;C,D) = -1\)
    intboth(⟨A,B,D⟩) we look for C such that \((A,B;C,D) = -1\)
8.5.1 Options ext and int

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,6/0/B,4/0/C}
\tkzDefHarmonic[ext](A,B,C) \tkzGetPoint{J}
\tkzDefHarmonic[int](A,B,J) \tkzGetPoint{I}
\tkzDrawPoints(A,B,I,J)
\tkzDrawLine[add=.5 and 1](A,B)
\tkzLabelPoints(A,B,I,J)
\end{tikzpicture}
8.5.2 Bisector and harmonic division

Compiled output

\begin{tikzpicture}[scale=1.25]
\tkzDefPoints{0/0/A,4/0/C,5/3/X}
\tkzDefLine[bisector](A,X,C) \tkzGetPoint{x}
\tkzInterLL(X,x)(A,C) \tkzGetPoint{B}
\tkzDefHarmonic[ext](A,C,B) \tkzGetPoint{D}
\tkzDrawPolygon(A,X,C)
\tkzDrawSegments(X,B C,D D,X)
\tkzDrawPoints(A,B,C,D,X)
\tkzMarkAngles[mark=s|](A,X,B B,X,C)
\tkzMarkRightAngle[size=.4,
fill=gray!20,
opacity=.3](B,X,D)
\tkzLabelPoints(A,B,C,D)
\tkzLabelPoints[above right](X)
\end{tikzpicture}
8.5.3 Option both

both is the default option

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,6/0/B}
\tkzDefHarmonic(A,B,{1/2})\tkzGetPoints{I}{J}
\tkzDrawPoints(A,B,I,J)
\tkzDrawLine[add=1 and .5](A,B)
\tkzLabelPoints(A,B,I,J)
\end{tikzpicture}
8.6 Equidistant points with \tkzDefEquiPoints
  • \tkzDefEquiPoints[⟨local options⟩](⟨pt1,pt2⟩)

  • argumentsdefaultdefinition
    (pt1,pt2)no defaultunordered list of two items
    optionsdefaultdefinition
    dist2 (cm)half the distance between the two points
    from=ptno defaultreference point
    showfalseif true displays compass traces
    /compass/delta0size of the compass mark

    This macro gives two points of a straight line equidistant from a given point.

8.6.1 Using \tkzDefEquiPoints with options

Compiled output

\begin{tikzpicture}
\tkzSetUpCompass[color=purple,line width=1pt]
\tkzDefPoints{0/1/A,5/2/B,3/4/C}
\tkzDefEquiPoints[from=C,dist=1,show,
/tkzcompass/delta=20](A,B)
\tkzGetPoints{E}{H}
\tkzDrawLines[color=blue](C,E C,H A,B)
\tkzDrawPoints[color=blue](A,B,C)
\tkzDrawPoints[color=red](E,H)
\tkzLabelPoints(E,H)
\tkzLabelPoints[color=blue](A,B,C)
\end{tikzpicture}
8.7 Midpoint of an arc
  • \tkzDefMidArc(⟨pt1,pt2,pt3⟩)

  • argumentsdefaultdefinition
    \(pt1,pt2,pt3\)no default\(pt1\) is the center, \(\widearc{pt2pt3}\) the arc

Compiled output

\begin{tikzpicture}[scale=1]
\tkzDefPoints{0/0/A,10/0/B}
\tkzDefGoldenRatio(A,B) \tkzGetPoint{C}
\tkzDefMidPoint(A,B) \tkzGetPoint{O_1}
\tkzDefMidPoint(A,C) \tkzGetPoint{O_2}
\tkzDefMidPoint(C,B) \tkzGetPoint{O_3}
\tkzDefMidArc(O_3,B,C) \tkzGetPoint{P}
\tkzDefMidArc(O_2,C,A) \tkzGetPoint{Q}
\tkzDefMidArc(O_1,B,A) \tkzGetPoint{L}
\tkzDefPointBy[rotation=center C angle 90](B) \tkzGetPoint{c}
\tkzInterCC[common=B](P,B)(O_1,B) \tkzGetFirstPoint{P_1}
\tkzInterCC[common=C](P,C)(O_2,C) \tkzGetFirstPoint{P_2}
\tkzInterCC[common=C](Q,C)(O_3,C) \tkzGetFirstPoint{P_3}
\tkzInterLC[near](c,C)(O_1,A) \tkzGetFirstPoint{D}
\tkzInterLL(A,P_1)(C,D) \tkzGetPoint{P_1'}
\tkzDefPointBy[inversion = center A through D](P_2) \tkzGetPoint{P_2'}
\tkzDefCircle[circum](P_3,P_2,P_1) \tkzGetPoint{O_4}
\tkzInterLL(B,Q)(A,P) \tkzGetPoint{S}
\tkzDefMidPoint(P_2',P_1') \tkzGetPoint{o}
\tkzDefPointBy[inversion = center A through D](S) \tkzGetPoint{S'}
\tkzDrawArc[cyan,delta=0](Q,A)(P_1)
\tkzDrawArc[cyan,delta=0](P,P_1)(B)
\tkzDrawSemiCircles[teal](O_1,B O_2,C O_3,B)
\tkzDrawCircles[new](o,P O_4,P_1)
\tkzDrawSegments(A,B)
\tkzDrawSegments[cyan](A,P_1 A,S' A,P_2')
\tkzDrawSegments[purple](B,L C,P_2' B,Q B,L S',P_1')
\tkzDrawLines[add=0 and .8](B,P_2')
\tkzDrawLines[add=0 and .4](C,D)
\tkzDrawPoints(A,B,C,P,Q,P_3,P_2,P_1,P_1',D,P_2',L,S,S')
\tkzLabelPoints(A,B,C,P_3)
\tkzLabelPoints[above](P,Q,P_1)
\tkzLabelPoints[above right](P_2,P_2',D,S')
\tkzLabelPoints[above left](L,S)
\tkzLabelPoints[below left](P_1')
\end{tikzpicture}

9 Point on line or circle

9.1 Point on a line with \tkzDefPointOnLine
  • \tkzDefPointOnLine[⟨local options⟩](⟨A,B⟩)

  • argumentsdefaultdefinition
    pt1,pt2no defaultTwo points to define a line
    optionsdefaultdefinition
    pos=nbnb is a decimal
9.1.1 Use of option pos

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,3/0/B}
\tkzDefPointOnLine[pos=1.2](A,B)\tkzGetPoint{P}
\tkzDefPointOnLine[pos=-0.2](A,B)\tkzGetPoint{R}
\tkzDefPointOnLine[pos=0.5](A,B) \tkzGetPoint{S}
\tkzDrawLine[new](A,B)
\tkzDrawPoints(A,B,P)
\tkzLabelPoints(A,B)
\tkzLabelPoint[above](P){pos=$1.2$}
\tkzLabelPoint[above](R){pos=$-.2$}
\tkzLabelPoint[above](S){pos=$.5$}
\tkzDrawPoints(A,B,P,R,S)
\tkzLabelPoints(A,B)
\end{tikzpicture}
9.2 Point on a circle with \tkzDefPointOnCircle

The order of the arguments has changed: now it is center, angle and point or radius. Two options work with radians: through in rad and R in rad.

  • \tkzDefPointOnCircle[⟨local options⟩]

  • optionsdefaultexamples definition
    throughthrough = center K1 angle 30 point B]
    RR = center K1 angle 30 radius \rAp
    through in radthrough in rad= center K1 angle pi/4 point B]
    R in radR in rad = center K1 angle pi/6 radius \rAp

    The order of the arguments is: center, angle, and point or radius.

9.2.1 Altshiller’s Theorem

The two lines joining the points of intersection of two orthogonal circles to a point of one of the circles meet the other circle in two diametrically opposite points (Altshiller-Court, p. 176).

Compiled output

\begin{tikzpicture}[scale=.4]
\tkzDefPoints{0/0/P,5/0/Q,3/2/I}
\tkzDefCircle[orthogonal from=P](Q,I)
\tkzGetFirstPoint{E}
\tkzDrawCircles(P,E Q,E)
\tkzInterCC[common=E](P,E)(Q,E) \tkzGetFirstPoint{F}
\tkzDefPointOnCircle[through = center P angle 80 point E]
\tkzGetPoint{A}
\tkzInterLC[common=E](A,E)(Q,E) \tkzGetFirstPoint{C}
\tkzInterLL(A,F)(C,Q) \tkzGetPoint{D}
\tkzDrawLines[add=0 and .75](P,Q)
\tkzDrawLines[add=0 and 2](A,E)
\tkzDrawSegments(P,E E,F F,C A,F C,D)
\tkzDrawPoints(P,Q,E,F,A,C,D)
\tkzLabelPoints(P,Q,F,C,D)
\tkzLabelPoints[above](E,A)
\end{tikzpicture}
9.2.2 Use of \tkzDefPointOnCircle

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,4/0/B,0.8/3/C}
\tkzDefPointOnCircle[R = center B angle 90 radius 1]
\tkzGetPoint{I}
\tkzDefCircle[circum](A,B,C)
\tkzGetPoints{G}{g}
\tkzDefPointOnCircle[through = center G angle 30 point g]
\tkzGetPoint{J}
\tkzDefCircle[R](B,1) \tkzGetPoint{b}
\tkzDrawCircle[teal](B,b)
\tkzDrawCircle(G,J)
\tkzDrawPoints(A,B,C,G,I,J)
\tkzAutoLabelPoints[center=G](A,B,C,J)
\tkzLabelPoints[below](G,I)
\end{tikzpicture}

10 Special points relating to a triangle

10.1 Triangle center: \tkzDefTriangleCenter
  • \tkzDefTriangleCenter[⟨local options⟩](⟨A,B,C⟩)


  • ☞ 💣 This macro defines a center of a triangle. Be careful: the arguments are lists of three points. The macro is used together with \tkzGetPoint to get the center you are looking for.

    You can use tkzPointResult directly if you don’t need to keep the result.

    argumentsdefaultexample
    (pt1,pt2,pt3)no default\tkzDefTriangleCenter[ortho](B,C,A)
    optionsdefaultdefinition
    orthocircumintersection of the altitudes
    orthiccircum…
    centroidcircumintersection of the medians
    mediancircum…
    circumcircumcircle center circumscribed
    incircumcenter of the circle inscribed in a triangle
    incircumintersection of the bisectors
    excircumcenter of a circle exinscribed to a triangle
    eulercircumcenter of Euler’s circle
    gergonnecircumdefined with the Contact triangle
    symmediancircumLemoine’s point or symmedian center or Grebe’s point
    lemoinecircum…
    grebecircum…
    spiekercircumSpieker circle center
    nagelcircumNagel Center
    mittenpunktcircumOr middlespoint
    feuerbachcircumFeuerbach Point
10.1.1 Option ortho or orthic

The intersection \(H\) of the three altitudes of a triangle is called the orthocenter.

Compiled output

\begin{tikzpicture}
\tkzDefPoint(0,0){A}
\tkzDefPoint(5,1){B}
\tkzDefPoint(1,4){C}
\tkzDefTriangleCenter[ortho](B,C,A)
\tkzGetPoint{H}
\tkzDefSpcTriangle[orthic,name=H](A,B,C){a,b,c}
\tkzDrawPolygon(A,B,C)
\tkzDrawSegments[new](A,Ha B,Hb C,Hc)
\tkzDrawPoints(A,B,C,H)
\tkzLabelPoint(H){$H$}
\tkzLabelPoints[below](A,B)
\tkzLabelPoints[above](C)
\tkzMarkRightAngles(A,Ha,B B,Hb,C C,Hc,A)
\end{tikzpicture}
10.1.2 Option centroid

Compiled output

\begin{tikzpicture}[scale=.75]
\tkzDefPoints{0/0/A,5/0/B,1/4/C}
\tkzDefTriangleCenter[centroid](A,B,C)
\tkzGetPoint{G}
\tkzDrawPolygon(A,B,C)
\tkzDrawLines[add = 0 and 2/3,new](A,G B,G C,G)
\tkzDrawPoints(A,B,C,G)
\tkzLabelPoint(G){$G$}
\end{tikzpicture}
10.1.3 Option circum

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/1/A,3/2/B,1/4/C}
\tkzDefTriangleCenter[circum](A,B,C)
\tkzGetPoint{O}
\tkzDrawPolygon(A,B,C)
\tkzDrawCircle(O,A)
\tkzDrawPoints(A,B,C,O)
\tkzLabelPoint(O){$O$}
\end{tikzpicture}
10.1.4 Option in

In geometry, the incircle or inscribed circle of a triangle is the largest circle contained in the triangle; it touches (is tangent to) the three sides. The center of the incircle is a triangle center called the triangle’s incenter. The center of the incircle, called the incenter, can be found as the intersection of the three internal angle bisectors. The center of an excircle is the intersection of the internal bisector of one angle (at vertex \(A\), for example) and the external bisectors of the other two. The center of this excircle is called the excenter relative to the vertex \(A\), or the excenter of \(A\). Because the internal bisector of an angle is perpendicular to its external bisector, it follows that the center of the incircle together with the three excircle centers form an orthocentric system.
(Article on Wikipedia)

We get the center of the incircle of the triangle. The result is of course in tkzPointResult; we retrieve it with \tkzGetPoint.

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,6/0/B,0.8/4/C}
\tkzDefTriangleCenter[in](A,B,C)
\tkzGetPoint{I}
\tkzDrawLines(A,B B,C C,A)
\tkzDefCircle[in](A,B,C) \tkzGetPoints{I}{i}
\tkzDrawCircle(I,i)
\tkzDrawPoint[red](I)
\tkzDrawPoints(A,B,C)
\tkzLabelPoint(I){$I$}
\end{tikzpicture}
10.1.5 Option ex

An excircle or escribed circle of the triangle is a circle lying outside the triangle, tangent to one of its sides and tangent to the extensions of the other two. Every triangle has three distinct excircles, each tangent to one of the triangle’s sides.
(Article on Wikipedia)

We get the center of an excircle of the triangle. The result is of course in tkzPointResult; we retrieve it with \tkzGetPoint.

Compiled output

\begin{tikzpicture}[scale=.5]
\tkzDefPoints{0/1/A,3/2/B,1/4/C}
\tkzDefTriangleCenter[ex](B,C,A)
\tkzGetPoint{J_c}
\tkzDefPointBy[projection=onto A--B](J_c)
\tkzGetPoint{Tc}
\tkzDrawPolygon(A,B,C)
\tkzDrawCircle[new](J_c,Tc)
\tkzDrawLines[add=1.5 and 0](A,C B,C)
\tkzDrawPoints(A,B,C,J_c)
\tkzLabelPoints(J_c)
\end{tikzpicture}
10.1.6 Option euler

This macro gives the center of the nine-point circle, also called Euler’s circle or Feuerbach’s circle. The nine-point circle, also called Euler’s circle or the Feuerbach circle, is the circle that passes through the perpendicular feet \(H_A\), \(H_B\), and \(H_C\) dropped from the vertices of any reference triangle \(ABC\) on the sides opposite them. Euler showed in 1765 that it also passes through the midpoints \(M_A\), \(M_B\), \(M_C\) of the sides of \(ABC\). By Feuerbach’s theorem, the nine-point circle also passes through the midpoints \(E_A\), \(E_B\), and \(E_C\) of the segments that join the vertices and the orthocenter \(H\). These points are commonly referred to as the Euler points.
(https://mathworld.wolfram.com/Nine-PointCircle.html)

Compiled output

\begin{tikzpicture}[scale=1.2,rotate=90]
\tkzDefPoints{0/0/A,6/0/B,0.8/4/C}
\tkzDefSpcTriangle[medial,name=M](A,B,C){_A,_B,_C}
\tkzDefTriangleCenter[euler](A,B,C)\tkzGetPoint{N}
% I= N nine points
\tkzDefTriangleCenter[ortho](A,B,C)\tkzGetPoint{H}
\tkzDefMidPoint(A,H) \tkzGetPoint{E_A}
\tkzDefMidPoint(C,H) \tkzGetPoint{E_C}
\tkzDefMidPoint(B,H) \tkzGetPoint{E_B}
\tkzDefSpcTriangle[ortho,name=H](A,B,C){_A,_B,_C}
\tkzDrawPolygon(A,B,C)
\tkzDrawCircle[new](N,E_A)
\tkzDrawSegments[new](A,H_A B,H_B C,H_C)
\tkzDrawPoints(A,B,C,N,H)
\tkzDrawPoints[new](M_A,M_B,M_C)
\tkzDrawPoints( H_A,H_B,H_C)
\tkzDrawPoints[green](E_A,E_B,E_C)
\tkzAutoLabelPoints[center=N,
font=\scriptsize](A,B,C,M_A,M_B,M_C,H_A,H_B,H_C,%
E_A,E_B,E_C)
\tkzLabelPoints[font=\scriptsize](H,N)
\tkzMarkSegments[mark=s|,size=3pt,
color=blue,line width=1pt](B,E_B E_B,H)
\end{tikzpicture}
10.1.7 Option symmedian

The point of concurrence \(K\) of the symmedians, sometimes also called the Lemoine point (in England and France) or the Grebe point (in Germany).
Weisstein, Eric W. "Symmedian Point." From MathWorld–A Wolfram Web Resource.

Compiled output

\begin{tikzpicture}
\tkzDefPoint(0,0){A}
\tkzDefPoint(5,0){B}
\tkzDefPoint(1,4){C}
\tkzDefTriangleCenter[symmedian](A,B,C)
\tkzGetPoint{K}
\tkzDefTriangleCenter[median](A,B,C)
\tkzGetPoint{G}
\tkzDefTriangleCenter[in](A,B,C)\tkzGetPoint{I}
\tkzDefSpcTriangle[centroid,name=M](A,B,C){a,b,c}
\tkzDefSpcTriangle[incentral,name=I](A,B,C){a,b,c}
\tkzDrawPolygon(A,B,C)
\tkzDrawLines[add = 0 and 2/3,new](A,K B,K C,K)
\tkzDrawSegments[color=cyan](A,Ma B,Mb C,Mc)
\tkzDrawSegments[color=green](A,Ia B,Ib C,Ic)
\tkzDrawPoints(A,B,C,K,G,I)
\tkzLabelPoints[font=\scriptsize](A,B,K,G,I)
\tkzLabelPoints[above,font=\scriptsize](C)
\end{tikzpicture}
10.1.8 Option spieker

The Spieker center is the center \(Sp\) of the Spieker circle, i.e., the incenter of the medial triangle of a reference triangle.
Weisstein, Eric W. "Spieker Center." From MathWorld–A Wolfram Web Resource.

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,6/0/B,5/5/C}
\tkzDefSpcTriangle[medial](A,B,C){Ma,Mb,Mc}
\tkzDefTriangleCenter[centroid](A,B,C)
\tkzGetPoint{G}
\tkzDefTriangleCenter[spieker](A,B,C)
\tkzGetPoint{Sp}
\tkzDrawPolygon[](A,B,C)
\tkzDrawPolygon[new](Ma,Mb,Mc)
\tkzDefCircle[in](Ma,Mb,Mc) \tkzGetPoints{I}{i}
\tkzDrawCircle(I,i)
\tkzDrawPoints(B,C,A,Sp,Ma,Mb,Mc)
\tkzAutoLabelPoints[center=G,dist=.3](Ma,Mb)
\tkzLabelPoints[right](Sp)
\tkzLabelPoints[below](A,B,Mc)
\tkzLabelPoints[above](C)
\end{tikzpicture}
10.1.9 Option gergonne

The Gergonne Point is the point of concurrency which results from connecting the vertices of a triangle to the opposite points of tangency of the triangle’s incircle. (Joseph Gergonne, French mathematician.)

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/B,3.6/0/C,2.8/4/A}
\tkzDefTriangleCenter[gergonne](A,B,C)
\tkzGetPoint{Ge}
\tkzDefSpcTriangle[intouch](A,B,C){C_1,C_2,C_3}
\tkzDefCircle[in](A,B,C) \tkzGetPoints{I}{i}
\tkzDrawLines[add=.25 and .25,teal](A,B A,C B,C)
\tkzDrawSegments[new](A,C_1 B,C_2 C,C_3)
\tkzDrawPoints(A,...,C,C_1,C_2,C_3)
\tkzDrawPoints[red](Ge)
\tkzLabelPoints(B,C,C_1,Ge)
\tkzLabelPoints[above](A,C_2,C_3)
\end{tikzpicture}
10.1.10 Option nagel

Let \(Ta\) be the point at which the excircle with center \(Ja\) meets the side \(BC\) of a triangle \(ABC\), and define \(Tb\) and \(Tc\) similarly. Then the lines \(ATa\), \(BTb\), and \(CTc\) concur in the Nagel point \(Na\).
Weisstein, Eric W. "Nagel point." From MathWorld–A Wolfram Web Resource.

Compiled output

\begin{tikzpicture}[scale=.5]
\tkzDefPoints{0/0/A,6/0/B,4/6/C}
\tkzDefSpcTriangle[ex](A,B,C){Ja,Jb,Jc}
\tkzDefSpcTriangle[extouch](A,B,C){Ta,Tb,Tc}
\tkzDefTriangleCenter[nagel](A,B,C)
\tkzGetPoint{Na}
\tkzDrawPolygon[blue](A,B,C)
\tkzDrawLines[add=0 and 1](A,Ta B,Tb C,Tc)
\tkzDrawPoints[new](Ja,Jb,Jc,Ta,Tb,Tc)
\tkzClipBB
\tkzDrawLines[add=1 and 1,dashed](A,B B,C C,A)
\tkzDrawCircles[new](Ja,Ta Jb,Tb Jc,Tc)
\tkzDrawSegments[new,dashed](Ja,Ta Jb,Tb Jc,Tc)
\tkzDrawPoints(B,C,A)
\tkzDrawPoints[new](Na)
\tkzLabelPoints(B,C,A)
\tkzLabelPoints[new](Na)
\tkzLabelPoints[new](Ja,Jb,Jc,Ta,Tb,Tc)
\tkzMarkRightAngles[fill=gray!20](Ja,Ta,C
Jb,Tb,A Jc,Tc,B)
\end{tikzpicture}
10.1.11 Option mittenpunkt

The mittenpunkt (also called the middlespoint) of a triangle \(ABC\) is the symmedian point of the excentral triangle, i.e., the point of concurrence \(M\) of the lines from the excenters through the midpoints of the corresponding sides.
Weisstein, Eric W. "Mittenpunkt." From MathWorld–A Wolfram Web Resource.

Compiled output

\begin{tikzpicture}[scale=.5]
\tkzDefPoints{0/0/A,6/0/B,4/6/C}
\tkzDefSpcTriangle[centroid](A,B,C){Ma,Mb,Mc}
\tkzDefSpcTriangle[ex](A,B,C){Ja,Jb,Jc}
\tkzDefSpcTriangle[extouch](A,B,C){Ta,Tb,Tc}
\tkzDefTriangleCenter[mittenpunkt](A,B,C)
\tkzGetPoint{Mi}
\tkzDrawPoints[new](Ma,Mb,Mc,Ja,Jb,Jc)
\tkzClipBB
\tkzDrawPolygon[blue](A,B,C)
\tkzDrawLines[add=0 and 1](Ja,Ma
Jb,Mb Jc,Mc)
\tkzDrawLines[add=1 and 1](A,B A,C B,C)
\tkzDrawCircles[new](Ja,Ta Jb,Tb Jc,Tc)
\tkzDrawPoints(B,C,A)
\tkzDrawPoints[new](Mi)
\tkzLabelPoints(Mi)
\tkzLabelPoints[left](Mb)
\tkzLabelPoints[new](Ma,Mc,Jb,Jc)
\tkzLabelPoints[above left](Ja,Jc)
\end{tikzpicture}
10.1.12 Relation between gergonne, centroid and mittenpunkt

The Gergonne point \(Ge\), the centroid \(G\) and the mittenpunkt \(M\) are collinear, with \(GeG/GM=2\).

Compiled output

\begin{tikzpicture}
\tkzDefPoints{0/0/A,2/2/B,8/0/C}
\tkzDefTriangleCenter[gergonne](A,B,C) \tkzGetPoint{Ge}
\tkzDefTriangleCenter[centroid](A,B,C)
\tkzGetPoint{G}
\tkzDefTriangleCenter[mittenpunkt](A,B,C)
\tkzGetPoint{M}
\tkzDrawLines[add=.25 and .25,teal](A,B A,C B,C)
\tkzDrawLines[add=.25 and .25,new](Ge,M)
\tkzDrawPoints(A,...,C)
\tkzDrawPoints[red,size=2](G,M,Ge)
\tkzLabelPoints(A,...,C,M,G,Ge)
\tkzMarkSegment[mark=s||](Ge,G)
\tkzMarkSegment[mark=s|](G,M)
\end{tikzpicture}