% Figure for a Classical Theorem Note
% Figure: Van Aubel's theorem by quarter-turns
% Site: Elementary Geometry
% Website: https://elementarygeometry.org/
% Drawing tool: tkz-euclide
% Output format: SVG
% Standard plate: 5:4
% Last verified: 2026-09-03
% Accent target: none
%
% Editable source for public/diagrams/van-aubel-theorem-complex-rotation.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]
% A visibly nonsymmetric convex quadrilateral, listed counterclockwise.
% A uniform similarity keeps the complete square configuration on the plate.
\tkzDefPoint(0,0){O}
\tkzDefPoint(-1.1,2.2){A0}
\tkzDefPoint(-1.8,-1.4){B0}
\tkzDefPoint(1.8,-1.4){C0}
\tkzDefPoint(0.9,1.4){D0}
\tkzDefPointBy[homothety=center O ratio 0.5](A0)\tkzGetPoint{A}
\tkzDefPointBy[homothety=center O ratio 0.5](B0)\tkzGetPoint{B}
\tkzDefPointBy[homothety=center O ratio 0.5](C0)\tkzGetPoint{C}
\tkzDefPointBy[homothety=center O ratio 0.5](D0)\tkzGetPoint{D}
% The vertices are counterclockwise, so a clockwise quarter-turn of each
% oriented side points outside ABCD. The opposite outer vertex is obtained
% by the corresponding counterclockwise quarter-turn at the other endpoint.
\tkzDefPointBy[rotation=center A angle -90](B)\tkzGetPoint{Aab}
\tkzDefPointBy[rotation=center B angle 90](A)\tkzGetPoint{Bab}
\tkzDefMidPoint(B,Aab)\tkzGetPoint{P}
\tkzDefPointBy[rotation=center B angle -90](C)\tkzGetPoint{Bbc}
\tkzDefPointBy[rotation=center C angle 90](B)\tkzGetPoint{Cbc}
\tkzDefMidPoint(C,Bbc)\tkzGetPoint{Q}
\tkzDefPointBy[rotation=center C angle -90](D)\tkzGetPoint{Ccd}
\tkzDefPointBy[rotation=center D angle 90](C)\tkzGetPoint{Dcd}
\tkzDefMidPoint(D,Ccd)\tkzGetPoint{R}
\tkzDefPointBy[rotation=center D angle -90](A)\tkzGetPoint{Dda}
\tkzDefPointBy[rotation=center A angle 90](D)\tkzGetPoint{Ada}
\tkzDefMidPoint(A,Dda)\tkzGetPoint{S}
\tkzInterLL(P,R)(Q,S)\tkzGetPoint{T}
\tkzDrawPolygon[eg support](A,B,Bab,Aab)
\tkzDrawPolygon[eg support](B,C,Cbc,Bbc)
\tkzDrawPolygon[eg support](C,D,Dcd,Ccd)
\tkzDrawPolygon[eg support](D,A,Ada,Dda)
\tkzDrawSegments[eg main](P,R Q,S)
% One matching tick on each main segment records |PR|=|QS| without
% crowding the right-angle mark at their intersection.
\coordinate (PRmark) at ($(P)!0.8!(R)$);
\coordinate (QSmark) at ($(Q)!0.9!(S)$);
\draw[eg mark]
($(PRmark)!3pt!90:(R)$) -- ($(PRmark)!3pt!-90:(R)$);
\draw[eg mark]
($(QSmark)!3pt!90:(S)$) -- ($(QSmark)!3pt!-90:(S)$);
\tkzMarkRightAngle[eg mark,size=0.18](R,T,S)
\tkzDrawPoints[color=egNavy,fill=egNavy,size=1.6](A,B,C,D,P,Q,R,S)
\tkzLabelPoints[above left](A)
\tkzLabelPoints[below left](B)
\tkzLabelPoints[below right](C)
\tkzLabelPoints[above right](D)
\tkzLabelPoints[left](P)
\tkzLabelPoints[below](Q)
\tkzLabelPoints[right](R)
\tkzLabelPoints[above](S)
\egUseStandardPlate
\end{tikzpicture}
\end{document}