var incs=0,aP=[],major,minor,_p1,p1,_major,_minor,_major2,_minor2,imgPencil,imgTack,imgTack2;function Setup(){RestoreFromQs();imgPencil=new Image;imgPencil.src=document.getElementById("imgPencil").src;imgTack=new Image;imgTack.src=document.getElementById("imgTack").src;imgTack2=new Image;imgTack2.src=document.getElementById("imgTack2").src;CalcElipse();DrawElipse();SetInput()}function Calculate(){if(!anim){incs=0;CalcElipse();DrawElipse()}}
function CalcElipse(){minor=parseInt(document.getElementById("txtMinor").value);if(minor<=10)isAuto?StopAuto():alert("Minor axis length must be > 10");else{major=parseInt(document.getElementById("txtMajor").value);if(minor>=major)isAuto?StopAuto():alert("Minor axis length must be less than Major axis length");else{var b=document.getElementById("cnvsOval"),a=b.width;b.setAttribute("height",(a-60)/(major/minor)+62);b=major/(a-64);_major=major/b;_minor=minor/b;_major2=_major/2;_minor2=_minor/2;_cx=a/
2;_cy=_minor/2+40;a=major/2;var c=minor/2;p1=Math.sqrt(a*a-c*c);_p1=p1/b;document.getElementById("spnCtoP1").innerHTML=Math.round(p1)+" mm ";document.getElementById("spnCtoP12").innerHTML=Math.round(p1)+" mm";b=Math.PI*(major/2)*(minor/2)*1.0E-6;document.getElementById("spnArea").innerHTML=RoundTo(b,3);a=-90*(Math.PI/180);b=Math.sin(a);a=Math.cos(a);for(c=0;c<361;c++){var d=c*(Math.PI/180),e=Math.sin(d);d=Math.cos(d);aP[c]=new Point(_cx+(_minor2*d*a-_major2*e*b),_cy+(_minor2*d*b+_major2*e*a))}}}}
function DrawElipse(){var b=document.getElementById("cnvsOval"),a=b.getContext("2d");a.clearRect(0,0,b.width,b.height);a.lineWidth=1;if(document.getElementById("cbShowSet").checked){a.strokeStyle="#c0c0c0";a.beginPath();a.moveTo(_cx-_major2,_cy);a.lineTo(_cx+_major2,_cy);a.moveTo(_cx,_cy-_minor2);a.lineTo(_cx,_cy+_minor2);a.stroke();a.font="Bold 18px Arial";a.textBaseline="top";a.fillStyle="#f00";a.fillText("P1",_cx-_p1-10,_cy+6);a.fillText("P2",_cx+_p1-18,_cy+6);a.fillStyle="#00f";a.fillText("A",
10,_cy-10);a.fillText("B",_cx+_major2+6,_cy-8);a.fillText("C",_cx+2,_cy+6);a.fillText("D",_cx-8,_cy+_minor2+4);a.fillText("E",_cx-12,_cy-_minor2-28);a.strokeStyle="#080";a.beginPath();a.moveTo(_cx+24,_cy+12);a.lineTo(_cx+_p1-30,_cy+12);a.stroke();a.font="12px Arial";a.fillText(Math.round(p1),_cx+_p1/2-16,_cy+20);if(incs==0||incs==360)a.drawImage(imgTack2,_cx-20,_cy-_minor2-12)}if(document.getElementById("cbShowString").checked){a.beginPath();a.moveTo(_cx-_p1,_cy);a.lineTo(aP[incs].x,aP[incs].y);a.lineTo(_cx+
_p1,_cy);a.closePath();a.strokeStyle="#f00";a.stroke();a.drawImage(imgPencil,aP[incs].x-2,aP[incs].y-38);a.drawImage(imgTack2,_cx-_p1-14,_cy-16);a.drawImage(imgTack,_cx+_p1-12,_cy-16)}b=incs>0?incs+1:361;a.beginPath();a.moveTo(_cx,_cy-_minor2);for(var c=0;c<b;c++)a.lineTo(aP[c].x,aP[c].y);a.strokeStyle="#00f";a.stroke();incs++;if(incs>360){incs=0;anim=false;clearInterval(pTimer)}}var pTimer=null,anim=false;
function DoAnimation(){if(!anim){isAuto&&StopAuto();anim=true;pTimer=setInterval("DrawElipse()",10)}}function Point(b,a){this.x=b;this.y=a}var autoTimer=null,isAuto=false;function Minor(b){if(!anim)if(isAuto){isAuto=false;StopAuto()}else{isAuto=true;autoTimer=setInterval("Auto("+b+")",10);if(b==1)document.getElementById("imgDown").src="images/DownR.gif";else document.getElementById("imgUp").src="images/UpR.gif"}}
function Auto(b){b=parseInt(document.getElementById("txtMinor").value)+b;document.getElementById("txtMinor").value=b;Calculate()}function StopAuto(){clearInterval(autoTimer);document.getElementById("imgUp").src="images/Up.gif";document.getElementById("imgDown").src="images/Down.gif";isAuto=false}function ShowSet(){if(!anim){incs=0;DrawElipse()}};
