Difference between revisions of "Circum circles of subtriangles"

From JSXGraph Wiki
Jump to navigationJump to search
 
(3 intermediate revisions by one other user not shown)
Line 7: Line 7:
 
<jsxgraph width="800" height="600">
 
<jsxgraph width="800" height="600">
 
brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox:[-1,4,12,-4], keepaspectratio:true});
 
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'});
 
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'});
 
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'});
 
p3 = brd.create('point', [2,3] , {name:'C',fillColor:'red',strokeColor:'red'});
 
      
 
      
b1 = brd.create('line',['A','B'],{name:'',straightFirst:false,straightLast:false});
+
b1 = brd.create('segment',['A','B'],{name:''});
b2 = brd.create('line',['A','C'],{name:'',straightFirst:false,straightLast:false});
+
b2 = brd.create('segment',['A','C'],{name:''});
b3 = brd.create('line',['C','B'],{name:'',straightFirst:false,straightLast:false});
+
b3 = brd.create('segment',['C','B'],{name:''});
 
      
 
      
c1 = brd.create('circumcircle',['A','B','C'],{name:''});
+
c1 = brd.create('circumcircle',['A','B','C'],{name:'', point: {visible: false}});
c1[1].setProperty('strokeColor:#AAAAAA');  
+
c1.setProperty('strokeColor:#AAAAAA');  
c1[0].hideElement(); // hide center of circle
 
 
      
 
      
 
l1 = brd.create('bisector',['B','A','C'],{name:'',visible:false}); // alpha
 
l1 = brd.create('bisector',['B','A','C'],{name:'',visible:false}); // alpha
Line 28: Line 26:
 
pp3 = brd.create('perpendicularpoint',[i1,b3],{name:"A'",fillColor:'blue'});
 
pp3 = brd.create('perpendicularpoint',[i1,b3],{name:"A'",fillColor:'blue'});
 
      
 
      
c2 = brd.create('circumcircle',[pp1,pp2,pp3],{name:''});
+
c2 = brd.create('circumcircle',[pp1,pp2,pp3],{name:'', strokeColor: '#3CB371', point: {visible: false}});
c2[1].setProperty('strokeColor:#3CB371');
+
c3 = brd.create('circumcircle',[p3,pp2,pp3],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
c2[0].hideElement();
+
c4 = brd.create('circumcircle',[p2,pp1,pp3],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
 +
c5 = brd.create('circumcircle',[p1,pp2,pp1],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
 
      
 
      
c3 = brd.create('circumcircle',[p3,pp2,pp3],{name:''});
+
i2 = brd.create('otherintersection',[c3,c1,p3],{name:"C''",fillColor:'blue'});
c3[1].setProperty('strokeColor:#FF8C00');
+
i3 = brd.create('otherintersection',[c4,c1,p2],{name:"B''",fillColor:'blue'});
c3[0].hideElement();
+
i4 = brd.create('otherintersection',[c5,c1,p1],{name:"A''",fillColor:'blue'});  
  
c4 = brd.create('circumcircle',[p2,pp1,pp3],{name:''});
+
ll1 = brd.create('segment',[i2,pp1],{name:'',strokeColor:'#FF6347'});
c4[1].setProperty('strokeColor:#FF8C00');
+
ll2 = brd.create('segment',[i3,pp2],{name:'',strokeColor:'#FF6347'});
c4[0].hideElement();
+
ll3 = brd.create('segment',[i4,pp3],{name:'',strokeColor:'#FF6347'});
 
 
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'});
 
i5 = brd.create('intersection',[ll1,ll2,0],{name:"P",fillColor:'#9932CC',strokeColor:'#9932CC'});
brd.unsuspendUpdate();
+
brd.update();
 
</jsxgraph>
 
</jsxgraph>
  
Line 59: Line 46:
 
<source lang="javascript">
 
<source lang="javascript">
 
brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox:[-1,4,12,-4], keepaspectratio:true});
 
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'});
 
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'});
 
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'});
 
p3 = brd.create('point', [2,3] , {name:'C',fillColor:'red',strokeColor:'red'});
 
      
 
      
b1 = brd.create('line',['A','B'],{name:'',straightFirst:false,straightLast:false});
+
b1 = brd.create('segment',['A','B'],{name:''});
b2 = brd.create('line',['A','C'],{name:'',straightFirst:false,straightLast:false});
+
b2 = brd.create('segment',['A','C'],{name:''});
b3 = brd.create('line',['C','B'],{name:'',straightFirst:false,straightLast:false});
+
b3 = brd.create('segment',['C','B'],{name:''});
 
      
 
      
c1 = brd.create('circumcircle',['A','B','C'],{name:''});
+
c1 = brd.create('circumcircle',['A','B','C'],{name:'', point: {visible: false}});
c1[1].setProperty('strokeColor:#AAAAAA');  
+
c1.setProperty('strokeColor:#AAAAAA');  
c1[0].hideElement(); // hide center of circle
 
 
      
 
      
 
l1 = brd.create('bisector',['B','A','C'],{name:'',visible:false}); // alpha
 
l1 = brd.create('bisector',['B','A','C'],{name:'',visible:false}); // alpha
Line 80: Line 65:
 
pp3 = brd.create('perpendicularpoint',[i1,b3],{name:"A'",fillColor:'blue'});
 
pp3 = brd.create('perpendicularpoint',[i1,b3],{name:"A'",fillColor:'blue'});
 
      
 
      
c2 = brd.create('circumcircle',[pp1,pp2,pp3],{name:''});
+
c2 = brd.create('circumcircle',[pp1,pp2,pp3],{name:'', strokeColor: '#3CB371', point: {visible: false}});
c2[1].setProperty('strokeColor:#3CB371');
+
c3 = brd.create('circumcircle',[p3,pp2,pp3],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
c2[0].hideElement();
+
c4 = brd.create('circumcircle',[p2,pp1,pp3],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
   
+
c5 = brd.create('circumcircle',[p1,pp2,pp1],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
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'});
+
i2 = brd.create('otherintersection',[c3,c1,p3],{name:"C''",fillColor:'blue'});
i3 = brd.create('otherintersection',[c4[1],c1[1],p2],{name:"B''",fillColor:'blue'});
+
i3 = brd.create('otherintersection',[c4,c1,p2],{name:"B''",fillColor:'blue'});
i4 = brd.create('otherintersection',[c5[1],c1[1],p1],{name:"A''",fillColor:'blue'});  
+
i4 = brd.create('otherintersection',[c5,c1,p1],{name:"A''",fillColor:'blue'});  
  
ll1 = brd.create('line',[i2,pp1],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
+
ll1 = brd.create('segment',[i2,pp1],{name:'',strokeColor:'#FF6347'});
ll2 = brd.create('line',[i3,pp2],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
+
ll2 = brd.create('segment',[i3,pp2],{name:'',strokeColor:'#FF6347'});
ll3 = brd.create('line',[i4,pp3],{name:'',straightFirst:false,straightLast:false,strokeColor:'#FF6347'});
+
ll3 = brd.create('segment',[i4,pp3],{name:'',strokeColor:'#FF6347'});
 
      
 
      
 
i5 = brd.create('intersection',[ll1,ll2,0],{name:"P",fillColor:'#9932CC',strokeColor:'#9932CC'});
 
i5 = brd.create('intersection',[ll1,ll2,0],{name:"P",fillColor:'#9932CC',strokeColor:'#9932CC'});
brd.unsuspendUpdate();
+
brd.update();
 
</source>
 
</source>
  
 
[[Category:Examples]]
 
[[Category:Examples]]
 
[[Category:Geometry]]
 
[[Category:Geometry]]

Latest revision as of 11:56, 18 January 2021

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

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

Then [math]A'A''[/math], [math]B'B''[/math], and [math]C'C''[/math] meet in one point, [math]P[/math].

The underlying JavaScript code

brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox:[-1,4,12,-4], keepaspectratio:true});
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('segment',['A','B'],{name:''});
b2 = brd.create('segment',['A','C'],{name:''});
b3 = brd.create('segment',['C','B'],{name:''});
    
c1 = brd.create('circumcircle',['A','B','C'],{name:'', point: {visible: false}});
c1.setProperty('strokeColor:#AAAAAA'); 
    
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:'', strokeColor: '#3CB371', point: {visible: false}});
c3 = brd.create('circumcircle',[p3,pp2,pp3],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
c4 = brd.create('circumcircle',[p2,pp1,pp3],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
c5 = brd.create('circumcircle',[p1,pp2,pp1],{name:'', strokeColor: '#FF8C00', point: {visible: false}});
    
i2 = brd.create('otherintersection',[c3,c1,p3],{name:"C''",fillColor:'blue'});
i3 = brd.create('otherintersection',[c4,c1,p2],{name:"B''",fillColor:'blue'});
i4 = brd.create('otherintersection',[c5,c1,p1],{name:"A''",fillColor:'blue'}); 

ll1 = brd.create('segment',[i2,pp1],{name:'',strokeColor:'#FF6347'});
ll2 = brd.create('segment',[i3,pp2],{name:'',strokeColor:'#FF6347'});
ll3 = brd.create('segment',[i4,pp3],{name:'',strokeColor:'#FF6347'});
    
i5 = brd.create('intersection',[ll1,ll2,0],{name:"P",fillColor:'#9932CC',strokeColor:'#9932CC'});
brd.update();