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