Diagram

The Euler Line: Medial Triangle and Homothety

The circumcenter as an orthocenter and the homothety that produces the Euler line

The two configurations used in the medial-triangle proof of the Euler line, with complete tkz-euclide source.

Methods Medial triangle · Homothety · Midpoint theorem

Drawing tool: tkz-euclideSource available

Completed figures

Triangle ABC with medial triangle DEF; the three altitudes of DEF meet at O, the circumcenter of ABC.
Figure 1. The circumcenter O of ABC is the orthocenter of the medial triangle DEF.
Triangle ABC and its medial triangle DEF, with centroid G and the homothety of ratio minus two sending O to H on the Euler line.
Figure 2. The homothety centered at G with ratio -2 sends D, E, F, O to A, B, C, H, respectively.

Complete source

Medial-triangle orthocenter configuration
% Figure for a Classical Theorem Note
% Article: The Euler Line from the Medial Triangle
% Site: Elementary Geometry
% Website: https://elementarygeometry.org/
% Drawing tool: tkz-euclide
% Output format: SVG
% Last verified: 2026-08-30
% Accent target: none
%
% Editable source for public/diagrams/euler-line-medial-orthocenter.svg.
% Prepared for the web edition of this note.
% The production site serves the committed SVG and does not compile TeX.
\documentclass[tikz,border=8pt]{standalone}
\usepackage{tkz-euclide}

\definecolor{egNavy}{HTML}{17243D}
\definecolor{egGray}{HTML}{777671}
\definecolor{egRust}{HTML}{92513F}
\newcommand{\egUseStandardPlateAt}[1]{%
  \pgfresetboundingbox
  \path[use as bounding box]
    ([xshift=-102pt,yshift=-80pt]#1)
    rectangle
    ([xshift=102pt,yshift=80pt]#1);%
}
\newcommand{\egUseStandardPlate}{%
  \coordinate (egPlateCenter) at (current bounding box.center);%
  \egUseStandardPlateAt{egPlateCenter}%
}
\tikzset{
  eg figure/.style={line cap=round,line join=round,every node/.append style={font=\normalsize,text=egNavy}},
  eg main/.style={draw=egNavy,line width=0.75pt},
  eg support/.style={draw=egGray,line width=0.52pt},
  eg support dashed/.style={draw=egGray,line width=0.52pt,dash pattern=on 3pt off 3pt},
  eg accent/.style={draw=egRust,line width=0.75pt},
  eg mark/.style={draw=egNavy,line width=0.50pt}
}

\begin{document}
\begin{tikzpicture}[eg figure,scale=1.0]
  \tkzDefPoint(-0.5,4.2){A}
  \tkzDefPoint(-3,0){B}
  \tkzDefPoint(3,0){C}

  \tkzDefMidPoint(B,C)\tkzGetPoint{D}
  \tkzDefMidPoint(C,A)\tkzGetPoint{E}
  \tkzDefMidPoint(A,B)\tkzGetPoint{F}
  \tkzDefTriangleCenter[circum](A,B,C)\tkzGetPoint{O}

  \tkzDefPointBy[projection=onto E--F](D)\tkzGetPoint{X}
  \tkzDefPointBy[projection=onto F--D](E)\tkzGetPoint{Y}
  \tkzDefPointBy[projection=onto D--E](F)\tkzGetPoint{Z}

  \tkzDrawSegments[eg support](A,B B,C C,A)
  \tkzDrawSegments[eg support dashed](D,X E,Y F,Z)
  \tkzDrawSegments[eg main](D,E E,F F,D)

  \tkzMarkRightAngle[eg mark,size=0.18](D,X,E)
  \tkzMarkRightAngle[eg mark,size=0.18](E,Y,F)
  \tkzMarkRightAngle[eg mark,size=0.18](F,Z,D)

  \tkzDrawPoints[color=egNavy,fill=egNavy,size=1.6](A,B,C,D,E,F)
  \tkzDrawPoint[color=egNavy,fill=egNavy,size=1.6](O)

  \tkzLabelPoints[above](A)
  \tkzLabelPoints[below left](B)
  \tkzLabelPoints[below right](C)
  \tkzLabelPoints[below](D)
  \tkzLabelPoints[right,yshift=2pt](E)
  \tkzLabelPoints[left,yshift=2pt](F)
  \tkzLabelPoints[above right,xshift=-2pt,yshift=3pt](O)
  \egUseStandardPlate
\end{tikzpicture}
\end{document}
Centroid-centered homothety configuration
% Figure for a Classical Theorem Note
% Article: The Euler Line from the Medial Triangle
% Site: Elementary Geometry
% Website: https://elementarygeometry.org/
% Drawing tool: tkz-euclide
% Output format: SVG
% Last verified: 2026-08-30
% Accent target: Euler line segment OH
%
% Editable source for public/diagrams/euler-line-medial-homothety.svg.
% Prepared for the web edition of this note.
% The production site serves the committed SVG and does not compile TeX.
\documentclass[tikz,border=8pt]{standalone}
\usepackage{tkz-euclide}

\definecolor{egNavy}{HTML}{17243D}
\definecolor{egGray}{HTML}{777671}
\definecolor{egRust}{HTML}{92513F}
\newcommand{\egUseStandardPlateAt}[1]{%
  \pgfresetboundingbox
  \path[use as bounding box]
    ([xshift=-102pt,yshift=-80pt]#1)
    rectangle
    ([xshift=102pt,yshift=80pt]#1);%
}
\newcommand{\egUseStandardPlate}{%
  \coordinate (egPlateCenter) at (current bounding box.center);%
  \egUseStandardPlateAt{egPlateCenter}%
}
\tikzset{
  eg figure/.style={line cap=round,line join=round,every node/.append style={font=\normalsize,text=egNavy}},
  eg main/.style={draw=egNavy,line width=0.75pt},
  eg support/.style={draw=egGray,line width=0.52pt},
  eg support dashed/.style={draw=egGray,line width=0.52pt,dash pattern=on 3pt off 3pt},
  eg accent/.style={draw=egRust,line width=0.75pt},
  eg mark/.style={draw=egNavy,line width=0.50pt}
}

\begin{document}
\begin{tikzpicture}[eg figure,scale=1.0]
  \tkzDefPoint(-0.5,4.2){A}
  \tkzDefPoint(-3,0){B}
  \tkzDefPoint(3,0){C}

  \tkzDefMidPoint(B,C)\tkzGetPoint{D}
  \tkzDefMidPoint(C,A)\tkzGetPoint{E}
  \tkzDefMidPoint(A,B)\tkzGetPoint{F}
  \tkzDefTriangleCenter[centroid](A,B,C)\tkzGetPoint{G}
  \tkzDefTriangleCenter[circum](A,B,C)\tkzGetPoint{O}
  \tkzDefPointBy[homothety=center G ratio -2](O)\tkzGetPoint{H}

  \tkzDrawSegments[eg support dashed](A,D B,E C,F)
  \tkzDrawSegments[eg support](D,E E,F F,D)
  \tkzDrawSegments[eg main](A,B B,C C,A)
  \tkzDrawLine[eg accent,add=1.3 and 1.3](O,H)

  \tkzDrawPoints[color=egNavy,fill=egNavy,size=1.6](A,B,C,D,E,F,O,G,H)

  \tkzLabelPoints[above](A)
  \tkzLabelPoints[below left](B)
  \tkzLabelPoints[below right](C)
  \tkzLabelPoints[below](D)
  \tkzLabelPoints[right,yshift=2pt](E)
  \tkzLabelPoints[left,yshift=2pt](F)
  \tkzLabelPoints[right,xshift=0pt,yshift=-2pt](O)
  \tkzLabelPoints[above right,xshift=-2pt,yshift=3pt](G)
  \tkzLabelPoints[above,xshift=2pt,yshift=3pt](H)
  \egUseStandardPlate
\end{tikzpicture}
\end{document}

Read the article