# Difference between revisions of "Circum circles of subtriangles"

Let ABC be a triangle and let the incircle intersect $BC$, $CA$, and $AB$ at $A'$, $B'$, and $C'$, respectively.

Let the circumcircles of $AB'C'$, $A'BC'$, and $A'B'C$ intersect the circumcircle of $ABC$ (apart from $A$, $B$, and $C$) at $A''$, $B''$, and $C''$, respectively.

Then $A'A''$, $B'B''$, and $C'C''$ meet in one point, $P$.

### The underlying JavaScript code

brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox:[-1,4,12,-4], keepaspectratio:true});
brd.suspendUpdate();
p1 = brd.create('point', [0.5,-1.5] , {name:'A',fillColor:'red',strokeColor:'red'});
p2 = brd.create('point', [7.5,0.5] , {name:'B',fillColor:'red',strokeColor:'red'});
p3 = brd.create('point', [2,3] , {name:'C',fillColor:'red',strokeColor:'red'});

b1 = brd.create('line',['A','B'],{name:'',straightFirst:false,straightLast:false});
b2 = brd.create('line',['A','C'],{name:'',straightFirst:false,straightLast:false});
b3 = brd.create('line',['C','B'],{name:'',straightFirst:false,straightLast:false});

c1 = brd.create('circumcircle',['A','B','C'],{name:''});
c1[1].setProperty('strokeColor:#AAAAAA');
c1[0].hideElement(); // hide center of circle

l1 = brd.create('bisector',['B','A','C'],{name:'',visible:false}); // alpha
l2 = brd.create('bisector',['C','B','A'],{name:'',visible:false}); // beta

i1 = brd.create('intersection',[l1,l2,0],{name:'',visible:false});
pp1 = brd.create('perpendicularpoint',[i1,b1],{name:"C'",fillColor:'blue'});
pp2 = brd.create('perpendicularpoint',[i1,b2],{name:"B'",fillColor:'blue'});
pp3 = brd.create('perpendicularpoint',[i1,b3],{name:"A'",fillColor:'blue'});

c2 = brd.create('circumcircle',[pp1,pp2,pp3],{name:''});
c2[1].setProperty('strokeColor:#3CB371');
c2[0].hideElement();

c3 = brd.create('circumcircle',[p3,pp2,pp3],{name:''});
c3[1].setProperty('strokeColor:#FF8C00');
c3[0].hideElement();

c4 = brd.create('circumcircle',[p2,pp1,pp3],{name:''});
c4[1].setProperty('strokeColor:#FF8C00');
c4[0].hideElement();

c5 = brd.create('circumcircle',[p1,pp2,pp1],{name:''});
c5[1].setProperty('strokeColor:#FF8C00');
c5[0].hideElement();

i2 = brd.create('otherintersection',[c3[1],c1[1],p3],{name:"C''",fillColor:'blue'});
i3 = brd.create('otherintersection',[c4[1],c1[1],p2],{name:"B''",fillColor:'blue'});
i4 = brd.create('otherintersection',[c5[1],c1[1],p1],{name:"A''",fillColor:'blue'});

ll1 = brd.create('line',[i2,pp1],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
ll2 = brd.create('line',[i3,pp2],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
ll3 = brd.create('line',[i4,pp3],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});

i5 = brd.create('intersection',[ll1,ll2,0],{name:"P",fillColor:'#9932CC',strokeColor:'#9932CC'});
brd.unsuspendUpdate();