Five Circle Theorem: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
 
(35 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<jsxgraph width="600" height="600">
<jsxgraph width="600" height="600">
var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-5,5,5,-5]});
var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-5,5,5,-5]});
var p = [];
var p = [], l = [], i = [], c = [], j = [], k;
var l = [];
var i = [];
var c = [];
var j = [];


p[0] = brd.createElement('point',[-2.5,-3],{});
p[0] = brd.create('point',[-2.5,-3],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[1] = brd.createElement('point',[-0,4],{});
p[1] = brd.create('point',[-0,4],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[2] = brd.createElement('point',[2.5,-3],{});
p[2] = brd.create('point',[2.5,-3],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[3] = brd.createElement('point',[-4,0],{});
p[3] = brd.create('point',[-4,0],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[4] = brd.createElement('point',[4,0],{});
p[4] = brd.create('point',[4,0],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});


l[0] = brd.createElement('segment',[p[0],p[1]],{});
for (k=0;k<5;k++) {
l[1] = brd.createElement('segment',[p[1],p[2]],{});
  l[k] = brd.create('segment',[p[k],p[(k+1)%5]],{strokeColor:'black',strokeWidth:1});
l[2] = brd.createElement('segment',[p[2],p[3]],{});
}
l[3] = brd.createElement('segment',[p[3],p[4]],{});
 
l[4] = brd.createElement('segment',[p[4],p[0]],{});
for (k=0;k<5;k++) {
  i[k] = brd.create('intersection',[l[k],l[(k+2)%5],0],{name:'',strokeColor:'#EAEA00',fillColor:'#EAEA00'});
}
 
for (k=0;k<5;k++) {
  c[k] = brd.create('circumcircle',[p[k],i[k],i[(k+2)%5]],{strokeColor:'gray', strokeWidth:1, point: {visible: false}});
}
for (k=0;k<5;k++) {
  j[k] = brd.create('intersection',[c[k],c[(k+2)%5],0],{name:'',strokeColor:'#EA0000',fillColor:'#EA0000'});
}
 
cc = brd.create('circumcircle',[j[0],j[2],j[3]],{strokeColor:'red',strokeWidth:2,point:{strokeColor:'#000000',fillColor:'#000000',size:1}});
brd.update();
</jsxgraph>
 
===The underlying JavaScript code===
 
<source lang="javascript">
var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-5,5,5,-5]});
var p = [], l = [], i = [], c = [], j = [], k;


i[0] = brd.createElement('point',[brd.intersection(l[0],l[2],0)],{});
p[0] = brd.create('point',[-2.5,-3],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
i[1] = brd.createElement('point',[brd.intersection(l[1],l[3],0)],{});
p[1] = brd.create('point',[-0,4],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
i[2] = brd.createElement('point',[brd.intersection(l[2],l[4],0)],{});
p[2] = brd.create('point',[2.5,-3],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
i[3] = brd.createElement('point',[brd.intersection(l[3],l[0],0)],{});
p[3] = brd.create('point',[-4,0],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
i[4] = brd.createElement('point',[brd.intersection(l[4],l[1],0)],{});
p[4] = brd.create('point',[4,0],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});


c[0] = brd.createElement('circumcircle',[p[0],i[0],i[2]],{});
for (k=0;k<5;k++) {
c[1] = brd.createElement('circumcircle',[p[1],i[1],i[3]],{});
   l[k] = brd.create('segment',[p[k],p[(k+1)%5]],{strokeColor:'black',strokeWidth:1});
c[2] = brd.createElement('circumcircle',[p[2],i[2],i[4]],{});
c[3] = brd.createElement('circumcircle',[p[3],i[3],i[0]],{});
c[4] = brd.createElement('circumcircle',[p[4],i[4],i[1]],{});
for(k=0;k<5;k++) {
   c[k][1].setProperty({strokeColor:'gray',strokeWidth:1});
  c[k][0].setProperty({visible:false});
  l[k][1].setProperty({strokeColor:'gray',strokeWidth:1});
}
}


j[0] = brd.createElement('point',[brd.intersection(c[0][1],c[2][1],0)],{style:8});
for (k=0;k<5;k++) {
j[1] = brd.createElement('point',[brd.intersection(c[0][1],c[3][1],1)],{style:8});
  i[k] = brd.create('intersection',[l[k],l[(k+2)%5],0],{name:'',strokeColor:'#EAEA00',fillColor:'#EAEA00'});
j[2] = brd.createElement('point',[brd.intersection(c[3][1],c[1][1],1)],{style:8});
}
j[3] = brd.createElement('point',[brd.intersection(c[1][1],c[4][1],1)],{style:8});
j[4] = brd.createElement('point',[brd.intersection(c[4][1],c[2][1],1)],{style:8});


brd.createElement('circumcircle',[j[0],j[2],j[3]],{strokeColor:'red'});
for (k=0;k<5;k++) {
  c[k] = brd.create('circumcircle',[p[k],i[k],i[(k+2)%5]],{strokeColor:'gray', strokeWidth:1, point: {visible: false}});
}
for (k=0;k<5;k++) {
  j[k] = brd.create('intersection',[c[k],c[(k+2)%5],0],{name:'',strokeColor:'#EA0000',fillColor:'#EA0000'});
}


cc = brd.create('circumcircle',[j[0],j[2],j[3]],{strokeColor:'red',strokeWidth:2,point:{strokeColor:'#000000',fillColor:'#000000',size:1}});
brd.update();
</source>


</jsxgraph>
[[Category:Examples]]
[[Category:Geometry]]

Latest revision as of 15:10, 20 February 2013

The underlying JavaScript code

var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-5,5,5,-5]});
var p = [], l = [], i = [], c = [], j = [], k;

p[0] = brd.create('point',[-2.5,-3],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[1] = brd.create('point',[-0,4],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[2] = brd.create('point',[2.5,-3],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[3] = brd.create('point',[-4,0],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});
p[4] = brd.create('point',[4,0],{name:'',strokeColor:'#7355ff',fillColor:'#7355ff'});

for (k=0;k<5;k++) {
   l[k] = brd.create('segment',[p[k],p[(k+1)%5]],{strokeColor:'black',strokeWidth:1});
}

for (k=0;k<5;k++) {
   i[k] = brd.create('intersection',[l[k],l[(k+2)%5],0],{name:'',strokeColor:'#EAEA00',fillColor:'#EAEA00'});
}

for (k=0;k<5;k++) {
   c[k] = brd.create('circumcircle',[p[k],i[k],i[(k+2)%5]],{strokeColor:'gray', strokeWidth:1, point: {visible: false}});
}
for (k=0;k<5;k++) {
   j[k] = brd.create('intersection',[c[k],c[(k+2)%5],0],{name:'',strokeColor:'#EA0000',fillColor:'#EA0000'});
}

cc = brd.create('circumcircle',[j[0],j[2],j[3]],{strokeColor:'red',strokeWidth:2,point:{strokeColor:'#000000',fillColor:'#000000',size:1}});
brd.update();