View TeX code
\documentclass[margin = 12 pt]{standalone}
\usepackage[mini]{tkz-euclide}
\usepackage{tkz-elements}
\begin{document}
\directlua{dofile("ga-lua.lua")}
\begin{tikzpicture}
\tkzGetNodes
\tkzDrawCircles[teal](O_0,B)
\tkzDrawSemiCircles[thin,teal](O_1,C O_2,B)
\tkzDrawArc[purple,delta=0](D,V)(U)
\tkzDrawCircle[orange](O_7,C)
\tkzDrawSegments[thin,purple](A,D D,B C,D U,V C,R C,S)
\tkzDrawSegments[thin,red](O,D A,O O,B)
\tkzDrawPoints(A,B,C,D,O_7,R,S,O_1,O_2,O_0,D,U,V,W)
\tkzDrawSegments[cyan](O_1,R O_2,S C,U U,D)
\tkzDrawSegments[very thin](A,B)
\tkzMarkRightAngles[size=.4,fill=gray!40,opacity=.4](D,C,A A,D,B)
\tkzMarkRightAngles[size=.4,fill=gray!40,opacity=.4](D,S,C D,W,V O_2,S,U O_1,R,U)
\tkzFillAngles[cyan!40,opacity=.4](B,A,D A,D,O_0 C,D,B D,C,R B,C,S A,R,O_1)
\tkzFillAngles[green!40,opacity=.4](S,C,D W,R,D D,B,C R,C,A O_2,S,B)
\tkzLabelPoints[above](D)
\tkzLabelPoints[above left](R)
\tkzLabelPoints[above right](S)
\tkzLabelPoints[left](V)
\tkzLabelPoints[below](C,O_1,O_2,O_0,O)
\tkzLabelPoints[below left](A)
\tkzLabelPoints[below right](B,U,W,O_7)
\end{tikzpicture}
\end{document}
View Lua code
init_elements()
z.A = point(0, 0)
z.B = point(10, 0)
L.AB = line(z.A, z.B)
z.C = L.AB:gold_ratio()
L.AC = line(z.A, z.C)
L.CB = line(z.C, z.B)
z.O_0 = L.AB.mid
z.O_1 = L.AC.mid
z.O_2 = L.CB.mid
C.AB = circle(z.O_0, z.B)
C.AC = circle(z.O_1, z.C)
z.D, _ = intersection(C.AC:tangent_at(z.C), C.AB)
L.CD = line:new(z.C, z.D)
z.O_7 = L.CD.mid
C.DC = circle(z.D, z.C)
z.V, z.U = intersection(C.DC, C.AB)
L.UV = line(z.U, z.V)
L.O0D = line(z.O_0, z.D)
z.W = intersection(L.UV, L.O0D)
z.R = L.UV:projection(z.O_1)
z.S = L.UV:projection(z.O_2)
z.O = C.DC:inversion(z.W)