Circum circles of subtriangles
From JSXGraph Wiki
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});
p1 = brd.createElement('point', [0.5,-1.5] , {name:'A',fillColor:'red',strokeColor:'red'});
p2 = brd.createElement('point', [7.5,0.5] , {name:'B',fillColor:'red',strokeColor:'red'});
p3 = brd.createElement('point', [2,3] , {name:'C',fillColor:'red',strokeColor:'red'});
b1 = brd.createElement('line',['A','B'],{name:'',straightFirst:false,straightLast:false});
b2 = brd.createElement('line',['A','C'],{name:'',straightFirst:false,straightLast:false});
b3 = brd.createElement('line',['C','B'],{name:'',straightFirst:false,straightLast:false});
c1 = brd.createElement('circumcircle',['A','B','C'],{name:''});
c1[1].setProperty('strokeColor:#AAAAAA');
c1[0].hideElement(); // hide center of circle
l1 = brd.createElement('bisector',['B','A','C'],{name:'',visible:false}); // alpha
l2 = brd.createElement('bisector',['C','B','A'],{name:'',visible:false}); // beta
i1 = brd.createElement('intersection',[l1,l2,0],{name:'',visible:false});
pp1 = brd.createElement('perpendicularpoint',[i1,b1],{name:"C'",fillColor:'blue'});
pp2 = brd.createElement('perpendicularpoint',[i1,b2],{name:"B'",fillColor:'blue'});
pp3 = brd.createElement('perpendicularpoint',[i1,b3],{name:"A'",fillColor:'blue'});
c2 = brd.createElement('circumcircle',[pp1,pp2,pp3],{name:''});
c2[1].setProperty('strokeColor:#3CB371');
c2[0].hideElement();
c3 = brd.createElement('circumcircle',[p3,pp2,pp3],{name:''});
c3[1].setProperty('strokeColor:#FF8C00');
c3[0].hideElement();
c4 = brd.createElement('circumcircle',[p2,pp1,pp3],{name:''});
c4[1].setProperty('strokeColor:#FF8C00');
c4[0].hideElement();
c5 = brd.createElement('circumcircle',[p1,pp2,pp1],{name:''});
c5[1].setProperty('strokeColor:#FF8C00');
c5[0].hideElement();
i2 = brd.createElement('otherintersection',[c3[1],c1[1],p3],{name:"C''",fillColor:'blue'});
i3 = brd.createElement('otherintersection',[c4[1],c1[1],p2],{name:"B''",fillColor:'blue'});
i4 = brd.createElement('otherintersection',[c5[1],c1[1],p1],{name:"A''",fillColor:'blue'});
ll1 = brd.createElement('line',[i2,pp1],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
ll2 = brd.createElement('line',[i3,pp2],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
ll3 = brd.createElement('line',[i4,pp3],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
i5 = brd.createElement('intersection',[ll1,ll2,0],{name:"P",fillColor:'#9932CC',strokeColor:'#9932CC'});