Construction in GCLC language
dim 120 120
point A 80 95
point T_{a} 70.86 40
point T_{c} 55.38 72.43
color 220 0 0
fontsize 11
cmark_t A
cmark_b T_{a}
cmark_lt T_{c}
color 0 0 0
fontsize 10
% DET: points A and T_{c} are not the same
% Constructing a line c which passes through point A and point T_{c}
line c A T_{c}
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_{\_G29544} which is a foot of the point T_{a} on the line c
foot P_{\_G29544} T_{a} c
cmark_r P_{\_G29544}
color 200 200 200
drawline T_{a} P_{\_G29544}
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_{\_G29544}
circle k(T_{a},foot[T_{a},c]) T_{a} P_{\_G29544}
color 200 200 200
drawcircle k(T_{a},foot[T_{a},c])
color 0 0 0
% NDG: point A is outside the circle k(T_{a},foot[T_{a},c])
% Constructing a point P_{\_G29935} which is a foot of the point T_{a} on the line c
foot P_{\_G29935} T_{a} c
cmark_r P_{\_G29935}
color 200 200 200
drawline T_{a} P_{\_G29935}
color 0 0 0
% Constructing a line L_{\_G29938} which passes through point T_{a} and point A
line L_{\_G29938} T_{a} A
color 200 200 200
drawline L_{\_G29938}
color 0 0 0
% Constructing a point P_{\_G29941} which is an image of the point P_{\_G29935} in the symmetry to point/line L_{\_G29938}
sim P_{\_G29941} L_{\_G29938} P_{\_G29935}
cmark_r P_{\_G29941}
% Constructing a line b which passes through point A and point P_{\_G29941}
line b A P_{\_G29941}
color 200 200 200
drawline b
color 0 0 0
% NDG: point T_{c} is not incident to the line b
% Constructing a point P_{\_G30222} which is a foot of the point T_{c} on the line b
foot P_{\_G30222} T_{c} b
cmark_r P_{\_G30222}
color 200 200 200
drawline T_{c} P_{\_G30222}
color 0 0 0
% Constructing a circle k(T_{c},foot[T_{c},b]) whose center is at point T_{c} and which passes through point P_{\_G30222}
circle k(T_{c},foot[T_{c},b]) T_{c} P_{\_G30222}
color 200 200 200
drawcircle k(T_{c},foot[T_{c},b])
color 0 0 0
% NDG: point T_{a} is outside the circle k(T_{c},foot[T_{c},b])
% Constructing midpoint P_{\_G30640} of the segment T_{a}T_{c}
midpoint P_{\_G30640} T_{a} T_{c}
cmark_r P_{\_G30640}
% Constructing a circle C_{\_G30643} whose center is at point P_{\_G30640} and which passes through point T_{a}
circle C_{\_G30643} P_{\_G30640} T_{a}
color 200 200 200
drawcircle C_{\_G30643}
color 0 0 0
% Constructing points P_{\_G30646} and P_{\_G30649} which are in intersection of C_{\_G30643} and k(T_{c},foot[T_{c},b])
intersec2 P_{\_G30646} P_{\_G30649} C_{\_G30643} k(T_{c},foot[T_{c},b])
cmark_r P_{\_G30646}
cmark_r P_{\_G30649}
% Constructing a line a2 which passes through point T_{a} and point P_{\_G30646}
line a2 T_{a} P_{\_G30646}
color 200 200 200
drawline a2
color 0 0 0
% Constructing a line a which passes through point T_{a} and point P_{\_G30649}
line a T_{a} P_{\_G30649}
color 200 200 200
drawline a
color 0 0 0
% NDG: lines a and c are not parallel% DET: lines a and c are not the same
% Constructing a point B which belongs to line a and line c
intersec B a c
cmark_b B
% 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
drawsegment A B
drawsegment A C
drawsegment B C
% Non-degenerate conditions: lines b and a are not parallel; lines a and c are not parallel; point T_{a} is outside the circle k(T_{c},foot[T_{c},b]); point T_{c} is not incident to the line b; point A is outside the circle k(T_{a},foot[T_{a},c]); point T_{a} is not incident to the line c
% Determination conditions: lines b and a are not the same; lines a and c are not the same; points A and T_{c} are not the same