function Eclipse(t,i,s,c,n){this.setEcl(t),this.setObs(i,s,c,n)}function simul(i,s,c,n,e,a,o){$("#cv_container .cv_title").html(a),$("#cv_container").show(),sunazi=$("#cv_container .cv_sunazi"),sunalt=$("#cv_container .cv_sunalt"),cvtime=$("#cv_container .cv_time"),cvphases=$("#cv_container .cv_phases"),cvphases.disp=function(t,i,s){var c=$(this).find("tr").eq(i).children("td").eq(s);return c.html(t),c},moon_img=new Image,moon_img.src=o,ecl=new Eclipse(i,s,c,n,e),$("#cv_container .cv_date").html(getdate(ecl.elems,ecl.c1)),$("#cv_container .cv_tz").html("UTC"+(ecl.tz<=0?"+":"")+(-ecl.tz)),cc=new CanvasWithRange("#cv_container",ecl.c1[1]-.2,ecl.c4[1]+.2,.025),phdisp(0,"c1:",ecl.c1),phdisp(1,"c2:",ecl.c2),phdisp(2,"max:",ecl.mid),phdisp(3,"c3:",ecl.c3),phdisp(4,"c4:",ecl.c4),cc.parentWidth(),cc.setZoom(1),cc.grd=cc.context.createRadialGradient(0,0,.01/300*R2D,0,0,.01*R2D),cc.grd.addColorStop(0,"#FFFFFF"),cc.grd.addColorStop(1,"#FFFF00"),cc.moon=new CObj(moon_img),cc.sun=new CObj(cc.grd),$(window).resize(function(t){cc.parentWidth()}),$(window).ready(function(t){cc.draw()}),moon_img.onload=function(){cc.draw()},cc.draw=function(){t=this.range.time,ctx=this.context,nasa=ecl.at_time(t),this.sun.update(0,0,nasa[43]),this.sun.data.azi=nasa[46]*R2D,this.sun.data.alt=nasa[45]*R2D,this.moon.data.azi=nasa[42]*R2D,this.moon.data.alt=nasa[41]*R2D;var i=Math.cos(Math.abs((nasa[41]+nasa[45])/2));this.moon.update((nasa[42]-nasa[46])*R2D*i,(nasa[41]-nasa[45])*R2D,nasa[44]),dist=this.sun.dist(this.moon),this.background(dist),this.sun.draw(ctx),this.moon.draw(ctx),this.moon.inter(ctx,this.sun),azi_360=this.sun.data.azi,azi_360<0&&(azi_360+=360),sunazi.html("|
"+round2(azi_360)+"°"),sunalt.html(round2(this.sun.data.alt)+"° —"),cvtime.html(getHHMMSS(ecl.elems,nasa))},cc.background=function(t){ctx=this.context,sciemnij=t>.5?0:100*(.5-t),color1=hslToRgb(60/360,1,(55-sciemnij)/100),color2=hslToRgb(240/360,1,(60-6*sciemnij/5)/100),grd=ctx.createRadialGradient(0,0,3*this.coors[4]/40,0,0,25*this.coors[4]/40),grd.addColorStop(0,color1),grd.addColorStop(1,color2),ctx.fillStyle=grd,ctx.fillRect(this.coors[0],this.coors[2],this.coors[4],this.coors[5])}}function CObj(t){this.size=0,this.alt=0,this.lng=0,this.data=new Object,t instanceof Image?this.img=t:this.fStyle=t}function hslToRgb(t,i,s){var c,n,e;if(0==i)c=n=e=s;else{var a=function(t,i,s){return s<0&&(s+=1),s>1&&(s-=1),s<1/6?t+6*(i-t)*s:s<.5?i:s<2/3?t+(i-t)*(2/3-s)*6:t},o=s<.5?s*(1+i):s+i-s*i,h=2*s-o;c=a(h,o,t+1/3),n=a(h,o,t),e=a(h,o,t-1/3)}return"rgb("+Math.round(255*c)+","+Math.round(255*n)+","+Math.round(255*e)+")"}function phdisp(t,i,s){cvphases.disp(i,t,0),s[1]&&cvphases.disp(getHHMMSS(ecl.elems,s),t,1).click(function(){cc.setTime(s[1])})}function round2(t){var i=new String(Math.round(10*t)/10);return i.indexOf(".")<0&&(i+=".0"),i}Eclipse.prototype={setEcl:function(t){this.elems=t},setObs:function(t,i,s,c){this.lat=t,this.lng=i,this.alt=s,this.tz=void 0===c?0:c,this.compute()},compute:function(){setObserver(this.lat,this.lng,this.alt,this.tz),calEclipse(this.elems),this.c1=c1,this.c2=c2,this.mid=mid,this.c3=c3,this.c4=c4},to_time:function(t){return dat=getdate(this.elems,t),hh=getHHMMSS(this.elems,t),tim=new Date(dat+" "+hh+" GMT+0"),tim},at_time:function(t){return this.current=new Array,this.current[0]=0,this.current[1]=t,obsvconst[6]=0,timelocdependent(this.elems,this.current),observational(this.current),this.current}},CObj.prototype={path:function(t){t.beginPath(),t.arc(this.lng,this.alt,this.size,0,2*Math.PI)},update:function(t,i,s){this.lng=t,this.alt=i,this.size=s},draw:function(t){void 0!==this.img?(t.globalAlpha=.4,t.drawImage(this.img,0,0,this.img.naturalWidth,this.img.naturalHeight,this.lng-this.size,this.alt-this.size,2*this.size,2*this.size),t.globalAlpha=1):(this.path(t),t.fillStyle=this.fStyle,t.fill())},dist:function(t){return d1=this.lng-t.lng,d2=this.alt-t.alt,Math.sqrt(d1*d1+d2*d2)},inter:function(t,i){t.save(),this.path(t),t.clip(),i.path(t),t.fillStyle="#000000",t.fill(),t.restore()}};// JavaScript Document