Construction in GCLC language
dim 120 120
point B 20 40
point T_{a} 70.86 40
point T_{b} 94.25 68.88
color 220 0 0
fontsize 11
cmark_b B
cmark_b T_{a}
cmark_rt T_{b}
color 0 0 0
fontsize 10
% DET: points B and T_{a} are not the same
% Constructing a line a which passes through point B and point T_{a}
line a B T_{a}
color 200 200 200
drawline a
color 0 0 0
% NDG: point T_{b} is not incident to the line a
% Constructing a point P_{\_G53084} which is a foot of the point T_{b} on the line a
foot P_{\_G53084} T_{b} a
cmark_r P_{\_G53084}
color 200 200 200
drawline T_{b} P_{\_G53084}
color 0 0 0
% Constructing a circle k(T_{b},foot[T_{b},c]) whose center is at point T_{b} and which passes through point P_{\_G53084}
circle k(T_{b},foot[T_{b},c]) T_{b} P_{\_G53084}
color 200 200 200
drawcircle k(T_{b},foot[T_{b},c])
color 0 0 0
% NDG: point B is outside the circle k(T_{b},foot[T_{b},c])
% Constructing a point P_{\_G53475} which is a foot of the point T_{b} on the line a
foot P_{\_G53475} T_{b} a
cmark_r P_{\_G53475}
color 200 200 200
drawline T_{b} P_{\_G53475}
color 0 0 0
% Constructing a line L_{\_G53478} which passes through point T_{b} and point B
line L_{\_G53478} T_{b} B
color 200 200 200
drawline L_{\_G53478}
color 0 0 0
% Constructing a point P_{\_G53481} which is an image of the point P_{\_G53475} in the symmetry to point/line L_{\_G53478}
sim P_{\_G53481} L_{\_G53478} P_{\_G53475}
cmark_r P_{\_G53481}
% Constructing a line c which passes through point B and point P_{\_G53481}
line c B P_{\_G53481}
color 200 200 200
drawline c
color 0 0 0
% NDG: point T_{a} is not incident to the line c
% Constructing a point P_{\_G53762} which is a foot of the point T_{a} on the line c
foot P_{\_G53762} T_{a} c
cmark_r P_{\_G53762}
color 200 200 200
drawline T_{a} P_{\_G53762}
color 0 0 0
% Constructing a circle k(T_{a},foot[T_{a},c]) whose center is at point T_{a} and which passes through point P_{\_G53762}
circle k(T_{a},foot[T_{a},c]) T_{a} P_{\_G53762}
color 200 200 200
drawcircle k(T_{a},foot[T_{a},c])
color 0 0 0
% NDG: point T_{b} is outside the circle k(T_{a},foot[T_{a},c])
% Constructing midpoint P_{\_G54180} of the segment T_{b}T_{a}
midpoint P_{\_G54180} T_{b} T_{a}
cmark_r P_{\_G54180}
% Constructing a circle C_{\_G54183} whose center is at point P_{\_G54180} and which passes through point T_{b}
circle C_{\_G54183} P_{\_G54180} T_{b}
color 200 200 200
drawcircle C_{\_G54183}
color 0 0 0
% Constructing points P_{\_G54186} and P_{\_G54189} which are in intersection of C_{\_G54183} and k(T_{a},foot[T_{a},c])
intersec2 P_{\_G54186} P_{\_G54189} C_{\_G54183} k(T_{a},foot[T_{a},c])
cmark_r P_{\_G54186}
cmark_r P_{\_G54189}
% Constructing a line b1 which passes through point T_{b} and point P_{\_G54186}
line b1 T_{b} P_{\_G54186}
color 200 200 200
drawline b1
color 0 0 0
% Constructing a line b which passes through point T_{b} and point P_{\_G54189}
line b T_{b} P_{\_G54189}
color 200 200 200
drawline b
color 0 0 0
% NDG: lines b and a are not parallel% DET: lines b and a are not the same
% Constructing a point C which belongs to line b and line a
intersec C b a
cmark_b C
% NDG: lines c and b are not parallel% DET: lines c and b are not the same
% Constructing a point A which belongs to line c and line b
intersec A c b
cmark_t A
drawsegment A B
drawsegment A C
drawsegment B C
% Non-degenerate conditions: lines c and b are not parallel; lines b and a are not parallel; point T_{b} is outside the circle k(T_{a},foot[T_{a},c]); point T_{a} is not incident to the line c; point B is outside the circle k(T_{b},foot[T_{b},c]); point T_{b} is not incident to the line a
% Determination conditions: lines c and b are not the same; lines b and a are not the same; points B and T_{a} are not the same