HTML
<script src="https://cindyjs.org/dist/v0.8.7/Cindy.js"></script>
<div id="CSCanvas"></div>
<script>
CindyJS({
scripts: "cs*",
defaultAppearance: { fontFamily: "sans-serif", lineSize: 1, pointSize: 5.0, textsize: 12.0 },
angleUnit: "°",
geometry: [
{ name: "A", type: "Free", pos: [ 0.0, -0.0, 4.0 ], color: [ 0.5019608, 0.5019608, 0.5019608 ], size: 1.0 },
{ name: "B", type: "Free", pos: [ 0.0, -4.0, -0.6666666666666666 ], color: [ 0.5019608, 0.5019608, 0.5019608 ], size: 1.0 },
{ name: "a", type: "Segment", color: [ 0.0, 0.0, 1.0 ], args: [ "A", "B" ] },
{ name: "C", type: "Free", pos: [ -0.28699551569506726, -4.0, -0.44843049327354256 ], color: [ 0.0, 0.0, 0.0 ] },
{ name: "b", type: "Orthogonal", color: [ 0.0, 0.0, 0.0 ], args: [ "a", "C" ], labeled: true },
{ name: "F1", type: "PointOnLine", pos: [ 4.0, -3.4573643410852717, -0.38759689922480617 ], color: [ 1.0, 0.0, 0.0 ], args: [ "b" ], labeled: true },
{ name: "C0", type: "CircleMP", color: [ 1.0, 1.0, 1.0 ], args: [ "C", "F1" ], size: 0, printname: "$C_{0}$" },
{ name: "F2", type: "OtherIntersectionCL", color: [ 1.0, 0.0, 0.0 ], args: [ "C0", "b", "F1" ], labeled: true },
{ name: "c", type: "Join", color: [ 0.0, 0.0, 1.0 ], args: [ "F1", "B" ], clip: "inci" },
{ name: "d", type: "Join", color: [ 0.0, 0.0, 1.0 ], args: [ "F1", "A" ], clip: "inci" },
{ name: "e", type: "Join", color: [ 0.0, 0.0, 1.0 ], args: [ "A", "F2" ], clip: "inci" },
{ name: "f", type: "Join", color: [ 0.0, 0.0, 1.0 ], args: [ "B", "F2" ], clip: "inci" },
{ name: "F", type: "PointOnLine", pos: [ -2.0963440617577977, -4.0, -0.5787165997078625 ], color: [ 0.5019608, 0.5019608, 0.5019608 ], args: [ "f" ], size: 1.0 },
{ name: "g", type: "Join", color: [ 0.0, 0.0, 1.0 ], args: [ "F1", "F" ], clip: "inci" },
{ name: "h", type: "Orthogonal", color: [ 0.0, 0.0, 1.0 ], args: [ "b", "F" ], clip: "inci" },
{ name: "G", type: "Meet", color: [ 0.5019608, 0.5019608, 0.5019608 ], args: [ "e",...