亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? eph.js

?? 壽星萬年歷 基于天文算法的萬年歷 javascript 年代范圍大 精度高
?? JS
?? 第 1 頁 / 共 5 頁
字號:
/****************************************
以下是天文計算部分,包含有:
常數(shù) rad   : 每弧度的角秒數(shù)
常數(shù) J2000 : 2000年1月1日 12:00:00 的儒略日數(shù)
常數(shù) pi2   : 圓周率的2倍,即2*3.14159...
rad2str()  : 弧度轉(zhuǎn)為"度分秒"或"時分秒"
rad2str2() : 弧度轉(zhuǎn)為"度分"
rad2mrad() : 將超出0到360度的角度轉(zhuǎn)為0到360度的解度
mod2(a,b)  : 臨界余數(shù)(a與最近的整倍數(shù)b相差的距離)
int2(a)    : 取小等于a的最大整數(shù)
物件 JD    : 公歷——儒略日——時間物件
物件 ZB    : 坐標變換物件,包含坐標旋轉(zhuǎn)、章動、日月光行差(時)、視差、大氣折射、恒星時的計算
物件 XL    : 日月黃道平分點坐標、視坐標、速度、已知經(jīng)度反求時間等方面的計算
物件 SZJ   : 用來計算日月的升起、中天、降落
注意,上述函數(shù)或物件是純天文學(xué)的,根據(jù)實際需要組合使用可以得到所需要的各種日月坐標,計算精度及計算速度也是可以根據(jù)需要有效控制的。
*****************************************/
Number.prototype.toFixed=function(len){ //IE的toFixed()有Bug,所以重寫
  var n=this,f='';
  if(n<0) n = -n, f = '-';
  var n1 = Math.floor(n); //整數(shù)部分
  var n2 = n-n1;          //小數(shù)部分
  var p = Math.pow(10,len);
  n2 = Math.round( n2*p ); //移位并四舍五入
  if(n2>=p) n1++,n2-=p; //進位
  n2 = (p+n2)+'';
  n2 = n2.substr(1,len);
  if(!len) return f+n1;
  return f+n1+'.'+n2;
};

cs_rEar = 6378.1366; //地球赤道半徑(千米)
cs_rEarA= 0.99834*cs_rEar; //平均半徑
cs_AU   = 1.49597870691e8; //天文單位長度(千米)
cs_sinP = cs_rEar/cs_AU;   //sin(太陽視差)
cs_PI   = Math.asin(cs_sinP); //太陽視差

rad  = 180*3600/Math.PI,
pi2  = Math.PI*2;
J2000 = 2451545;
function rad2str(d,tim){ //將弧度轉(zhuǎn)為字串
 //tim=0輸出格式示例: -23°59' 48.23"
 //tim=1輸出格式示例:  18h 29m 44.52s
 var s=" ";
 var w1="°",w2="'",w3='"';
 if(d<0)  d=-d,s='-';
 if(tim){ d*=12/Math.PI; w1="h ",w2="m",w3="s"; }
 else     d*=180/Math.PI;
 var a=Math.floor(d); d=(d-a)*60;
 var b=Math.floor(d); d=(d-b)*60;
 var c=Math.floor(d); d=(d-c)*100;
 d=Math.floor(d+0.5);
 if(d>=100) d-=100, c++;
 if(c>=60)  c-=60,  b++;
 if(b>=60)  b-=60,  a++;
 a="   "+a, b="0"+b, c="0"+c, d="0"+d;
 s+=a.substr(a.length-3,3)+w1;
 s+=b.substr(b.length-2,2)+w2;
 s+=c.substr(c.length-2,2)+".";
 s+=d.substr(d.length-2,2)+w3;
 return s;
}
function rad2str2(d){ //將弧度轉(zhuǎn)為字串,精確到分
 //輸出格式示例: -23°59'
 var s="+";
 var w1="°",w2="'",w3='"';
 if(d<0)  d=-d,s='-';
 d*=180/Math.PI;
 var a=Math.floor(d);
 var b=Math.floor((d-a)*60+0.5);
 if(b>=60)  b-=60,  a++;
 a="   "+a, b="0"+b;
 s+=a.substr(a.length-3,3)+w1;
 s+=b.substr(b.length-2,2)+w2;
 return s;
}
function m2fm(v,fx,fs){//秒轉(zhuǎn)為分秒,fx為小數(shù)點位數(shù),fs為1轉(zhuǎn)為"分秒"格式否則轉(zhuǎn)為"角分秒"格式
 var gn='';
 if(v<0) v=-v, gn='-';
 var f=int2(v/60), m=v-f*60;
 if(fs) return gn + f + '分' +m.toFixed(fx) + '秒';
 else   return gn + f + "'"  +m.toFixed(fx) + '"' ;
}
function rad2mrad(v){ //對超過0-2PI的角度轉(zhuǎn)為0-2PI
  v=v % (2*Math.PI);
  if(v<0) return v+2*Math.PI;
  return v;
}
function rad2rrad(v){//對超過-PI到PI的角度轉(zhuǎn)為-PI到PI
  v=v % (2*Math.PI);
  if(v<=-Math.PI) return v+2*Math.PI;
  if(v>Math.PI) return v-2*Math.PI;
  return v;
}
function mod2(a,b){ //臨界余數(shù)(a與最近的整倍數(shù)b相差的距離)
  var c=a/b;
  c -= Math.floor(c);
  if(c>0.5) c-=1;
  return c*b;
}
function int2(v){ return Math.floor(v); }  //取整數(shù)部分

var JD={ //日期元件
  Y:2000, M:1, D:1, h:12, m:0, s:0,
  dts:new Array( // TD - UT1 計算表
   -4000,108371.7,-13036.80,392.000, 0.0000, -500, 17201.0,  -627.82, 16.170,-0.3413,
    -150, 12200.6,  -346.41,  5.403,-0.1593,  150,  9113.8,  -328.13, -1.647, 0.0377,
     500,  5707.5,  -391.41,  0.915, 0.3145,  900,  2203.4,  -283.45, 13.034,-0.1778,
    1300,   490.1,   -57.35,  2.085,-0.0072, 1600,   120.0,    -9.81, -1.532, 0.1403,
    1700,    10.2,    -0.91,  0.510,-0.0370, 1800,    13.4,    -0.72,  0.202,-0.0193,
    1830,     7.8,    -1.81,  0.416,-0.0247, 1860,     8.3,    -0.13, -0.406, 0.0292,
    1880,    -5.4,     0.32, -0.183, 0.0173, 1900,    -2.3,     2.06,  0.169,-0.0135,
    1920,    21.2,     1.69, -0.304, 0.0167, 1940,    24.2,     1.22, -0.064, 0.0031,
    1960,    33.2,     0.51,  0.231,-0.0109, 1980,    51.0,     1.29, -0.026, 0.0032,
    2000,    63.87,    0.1,   0,     0,      2005),
  deltatExt:function(y,jsd){ var dy=(y-1820)/100; return -20+jsd*dy*dy; }, //二次曲線外推
  deltatT:function(y){ //計算世界時與原子時之差,傳入年
   if(y>=2005){
     //sd是2005年之后幾年(一值到y(tǒng)1年)的速度估計。
     //sjd是y1年之后的加速度估計。瑞士星歷表jsd=31,NASA網(wǎng)站jsd=32,skmap的jsd=29
     var y1=2014, sd=0.4, jsd=31;
     if(y<=y1) return 64.7 + (y-2005) *sd; //直線外推
     var v = this.deltatExt(y,jsd);        //二次曲線外推
     var dv= this.deltatExt(y1,jsd) - ( 64.7+(y1-2005)*sd ); //y1年的二次外推與直線外推的差
     if(y<y1+100  ) v -= dv*(y1+100-y)/100;
     return v; 
   }
   var i,d=this.dts;
   for(i=0;i<d.length;i+=5) if(y<d[i+5]) break;
   var t1=(y-d[i])/(d[i+5]-d[i])*10, t2=t1*t1, t3=t2*t1;
   return d[i+1] +d[i+2]*t1 +d[i+3]*t2 +d[i+4]*t3;
  },
  deltatT2:function(t){ //傳入儒略日(J2000起算),計算TD-UT(單位:日)
    return this.deltatT(t/365.2425+2000)/86400.0;
  },
  JD:function(y,m,d){ //公歷轉(zhuǎn)儒略日
   var n=0, G=0;
   if(y*372+m*31+int2(d)>=588829) G=1; //判斷是否為格里高利歷日1582*372+10*31+15
   if(m<=2) m+=12, y--;
   if(G) n=int2(y/100), n=2-n+int2(n/4); //加百年閏
   return int2(365.25*(y+4716)+0.01) + int2(30.6001*(m+1))+d+n - 1524.5;
  },
  toJD:function(){ return this.JD( this.Y, this.M, this.D+((this.s/60+this.m)/60+this.h)/24 ); }, //公歷轉(zhuǎn)儒略日
  setFromJD:function(jd){ //儒略日數(shù)轉(zhuǎn)公歷
   jd+=0.5;
   var A=int2(jd), F=jd-A, D;  //取得日數(shù)的整數(shù)部份A及小數(shù)部分F
   if(A>=2299161) D=int2((A-1867216.25)/36524.25),A+=1+D-int2(D/4);
   A     +=1524; //向前移4年零2個月
   this.Y =int2((A-122.1)/365.25);//年
   D      =A-int2(365.25*this.Y); //去除整年日數(shù)后余下日數(shù)
   this.M =int2(D/30.6001);       //月數(shù)
   this.D =D-int2(this.M*30.6001);//去除整月日數(shù)后余下日數(shù)
   this.Y-=4716; this.M--;
   if(this.M>12) this.M-=12;
   if(this.M<=2) this.Y++;
   //日的小數(shù)轉(zhuǎn)為時分秒
   F*=24; this.h=int2(F); F-=this.h;
   F*=60; this.m=int2(F); F-=this.m;
   F*=60; this.s=F;
  },
  toStr:function(){ //日期轉(zhuǎn)為串
   var Y="     "+this.Y,M="0"+this.M, D="0"+this.D;
   var h=this.h,m=this.m,s=int2(this.s+.5);
   if(s>=60) s-=60,m++;
   if(m>=60) m-=60,h++;
   h="0"+h; m="0"+m; s="0"+s;
   Y=Y.substr(Y.length-5,5); M=M.substr(M.length-2,2); D=D.substr(D.length-2,2);
   h=h.substr(h.length-2,2); m=m.substr(m.length-2,2); s=s.substr(s.length-2,2);
   return Y+"-"+M+"-"+D+" "+h+":"+m+":"+s;
  },
  setFromJD_str:function(jd){ this.setFromJD(jd); return this.toStr(); },
  timeStr:function(jd){ //提取jd中的時間(去除日期)
   var h,m,s;
   jd+=0.5; jd = (jd - int2(jd));
   jd*=24; h = int2(jd); jd-=h;
   jd*=60; m = int2(jd); jd-=m;
   jd*=60; s = int2(jd+0.5);
   if(s>=60) s-=60,m++;
   if(m>=60) m-=60,h++;
   h="0"+h; m="0"+m; s="0"+s;
   return h.substr(h.length-2,2)+':'+m.substr(m.length-2,2)+':'+s.substr(s.length-2,2);
  },
  //星期相關(guān)
  Weeks : new Array('日','一','二','三','四','五','六','七'),
  getWeek:function(jd){ return int2(jd+1.5)%7; }, //星期計算
  nnweek:function(y,m,n,w){ //求y年m月的第n個星期w的儒略日數(shù)
   var jd = JD.JD(y,m,1.5); //月首儒略日
   var w0 = (jd+1)%7;       //月首的星期
   var r  = jd-w0+7*n+w;    //jd-w0+7*n是和n個星期0,起算下本月第一行的星期日(可能落在上一月)。加w后為第n個星期w
   if(w>=w0) r-=7; //第1個星期w可能落在上個月,造成多算1周,所以考慮減1周
   if(n==5){
    m++; if(m>12) m=1, y++;   //下個月
    if(r>=JD.JD(y,m,1.5)) r-=7; //r跑到下個月則減1周
   }
   return r;
  }
};

var ZB={ //坐標類
 llrConv:function(JW,E){ //球面坐標旋轉(zhuǎn)
  //黃道赤道坐標變換,赤到黃E取負
  var sinE =Math.sin(E),    cosE =Math.cos(E);
  var sinJ =Math.sin(JW[0]),cosJ =Math.cos(JW[0]);
  var sinW =Math.sin(JW[1]),cosW =Math.cos(JW[1]), tanW=Math.tan(JW[1]);
  JW[0]=Math.atan2( sinJ*cosE - tanW*sinE, cosJ );
  JW[1]=Math.asin ( cosE*sinW + sinE*cosW*sinJ  );
  JW[0]=rad2mrad(JW[0]);
 },
 llr2xyz:function(J,W,R,z){ //球面轉(zhuǎn)直角坐標
  z[0]=R*Math.cos(W)*Math.cos(J);
  z[1]=R*Math.cos(W)*Math.sin(J);
  z[2]=R*Math.sin(W);
 },
 xyz2llr:function(x,y,z,q){ //直角坐標轉(zhuǎn)球
  q[2] = Math.sqrt(x*x+y*y+z*z);
  q[1] = Math.asin(z/q[2]);
  q[0] = rad2mrad( Math.atan2(y,x) );
 },
 nutB:new Array(
   2.1824,  -33.75705, 36e-6,-1720,920,
   3.5069, 1256.66393, 11e-6,-132, 57,
   1.3375,16799.4182, -51e-6, -23, 10,
   4.3649,  -67.5141,  72e-6,  21, -9,
   0.04,   -628.302,   0,     -14,  0,
   2.36,   8328.691,   0,       7,  0,
   3.46,   1884.966,   0,      -5,  2,
   5.44,  16833.175,   0,      -4,  2,
   3.69,  25128.110,   0,      -3,  0,
   3.55,    628.362,   0,       2,  0),
 nutation:function(t){ //章動計算,t是世紀數(shù)
  var i,c,a, t2=t*t, B=this.nutB, dL=0,dE=0;
  for(i=0;i<B.length;i+=5){
   c = B[i]+B[i+1]*t+B[i+2]*t2;
   if(i==0) a=-1.742*t; else a=0;
   dL+=(B[i+3]+a)*Math.sin(c);
   dE+= B[i+4]   *Math.cos(c);
  }
  this.dL=dL/100/rad;  //黃經(jīng)章動
  this.dE=dE/100/rad;  //交角章動
 },
 nutationLon:function(t){ //只計算黃經(jīng)章動
  var i,a, t2=t*t, dL=0, B=this.nutB;
  for(i=0;i<B.length;i+=5){
   if(i==0) a=-1.742*t; else a=0;
   dL += (B[i+3]+a) * Math.sin( B[i]+B[i+1]*t+B[i+2]*t2 );
  }
  return dL/100/rad;
 },
 hcjj:function(t){ //返回黃赤交角,t是世紀數(shù)
  var t2=t*t, t3=t2*t,t4=t3*t;
  return (84381.4088 -46.836051*t -0.0001667*t2 -0.00199911*t3-0.000000523*t4)/rad;
 },
 j1_j2:function(J1,W1,J2,W2){ //求角度差(未測試)
   var dJ=rad2rrad(J1-J2), dW=W1-W2;
   if(Math.abs(dJ)<1/1000 && Math.abs(dW)<1/1000){
     dJ*=Math.cos((W1+W2)/2);
     return Math.sqrt(dJ*dJ+dW*dW);
   }
   return Math.acos( Math.sin(W1)*Math.sin(W2) + Math.cos(W1)*Math.cos(W2)*Math.cos(dJ) );
 },
 gst:function(T,dt){ //傳入T是2000年首起算的日數(shù)(UT),dt是deltatT(日),精度要求不高時dt可取值為0
  //返回格林尼治恒星時(不含赤經(jīng)章動及非多項式部分),即格林尼治子午圈的平春風(fēng)點起算的赤經(jīng)
  var t=(T+dt)/36525,t2=t*t, t3=t2*t, t4=t3*t;
  return pi2*(0.7790572732640 + 1.00273781191135448*T) //嚴格說這里的T是UT,下一行的t是力學(xué)時(世紀數(shù))
      + (0.014506 + 4612.15739966*t + 1.39667721*t2 - 0.00009344*t3 + 0.00001882*t4)/rad;
 },
 gxc_sunLon:function(t){ //太陽光行差,t是世紀數(shù)
  var v =-0.043126+ 628.301955*t -0.000002732*t*t; //平近點角
  var e = 0.016708634-0.000042037*t-0.0000001267*t*t;
  return  ( -20.49552 * (1+e*Math.cos(v)) )/rad; //黃經(jīng)光行差
 },
 gxc_sunLat:function(t) { return 0;       }, //黃緯光行差
 gxc_moonLon:function(t){ return -3.4E-6; }, //月球經(jīng)度光行差,誤差0.07"
 gxc_moonLat:function(t){ //月球緯度光行差,誤差0.006"
  return 0.063*Math.sin(0.057+8433.4662*t+0.000064*t*t)/rad;
 },
 AR:function(ho){ return -0.0002909/Math.tan( ho+0.002227/(ho+0.07679) ); }, //大氣折射,ho是視高度
 AR2:function(h){ return  0.0002967/Math.tan( h +0.003138/( h+0.08919) ); }, //大氣折射,h是真高度
 parallax:function(z,H,fa,high){ //視差修正

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
337p日本欧洲亚洲大胆精品 | 欧美喷水一区二区| 久久久五月婷婷| 精品亚洲成a人在线观看| 欧美日韩国产精品自在自线| 亚洲欧美日韩在线播放| 成人一区二区三区| 国产亚洲综合色| 国产一区999| 亚洲欧洲av色图| 九九国产精品视频| 国产亚洲制服色| 色综合视频在线观看| 亚洲国产精品一区二区久久恐怖片 | www.av精品| 自拍偷拍国产亚洲| 欧美日韩亚洲国产综合| 日韩福利电影在线| 久久久久99精品一区| 不卡的看片网站| 亚洲午夜羞羞片| 欧美一二三区在线观看| 国产精品一区二区x88av| 中文字幕日韩av资源站| 欧美日韩在线综合| 蜜臀av一区二区在线观看| 日韩精品一区二区三区在线观看| 激情都市一区二区| 国产色爱av资源综合区| 亚洲一区二区三区免费视频| 91日韩一区二区三区| 日韩在线播放一区二区| 国产日韩欧美精品一区| 色94色欧美sute亚洲线路二| 亚洲午夜免费福利视频| 精品久久久久久最新网址| 成人午夜大片免费观看| 青草国产精品久久久久久| 国产精品私人影院| 欧美一区二区三级| 91在线观看下载| 国产成人精品免费在线| 三级久久三级久久| 亚洲男同1069视频| 久久精品一区蜜桃臀影院| 777a∨成人精品桃花网| 91福利国产成人精品照片| 懂色av中文一区二区三区| 奇米精品一区二区三区在线观看 | 69久久夜色精品国产69蝌蚪网| 91视频一区二区三区| 国产精品亚洲综合一区在线观看| 美女一区二区三区| 亚洲小少妇裸体bbw| 亚洲欧美一区二区视频| 国产亚洲一区二区三区四区| 精品国产乱码久久久久久图片 | 成人av综合在线| 国产传媒久久文化传媒| 精彩视频一区二区三区| 亚洲va欧美va人人爽午夜| 亚洲一区二区三区四区在线免费观看 | 日韩精品专区在线影院重磅| 欧美男人的天堂一二区| 欧美日韩国产电影| 亚洲视频一区在线| 欧美—级在线免费片| 国产精品你懂的在线| 亚洲欧洲日韩一区二区三区| 一区二区在线电影| 午夜天堂影视香蕉久久| 久国产精品韩国三级视频| 国产一本一道久久香蕉| 91丝袜呻吟高潮美腿白嫩在线观看| 91美女片黄在线观看| 欧美日韩三级一区| 国产欧美日产一区| 一区二区三区日韩欧美精品| 天堂精品中文字幕在线| 国产精品一区二区无线| 欧美专区在线观看一区| 精品国产乱码久久久久久浪潮| 国产精品久久久久久妇女6080| 午夜av区久久| 91网站黄www| 久久久久久黄色| 日韩av一二三| 国产成人小视频| 日韩午夜激情视频| 亚洲另类一区二区| 国产a久久麻豆| 精品国精品自拍自在线| 天天影视网天天综合色在线播放| 国产91综合网| 久久丝袜美腿综合| 国产一区二区视频在线播放| 99这里都是精品| 欧美三级在线看| 亚洲男人电影天堂| 91国偷自产一区二区三区成为亚洲经典| 精品噜噜噜噜久久久久久久久试看 | 欧美日韩视频在线观看一区二区三区| 欧美国产成人在线| 成人一二三区视频| 中文字幕高清一区| 九一九一国产精品| 欧美成人一区二区三区片免费| 亚洲成av人影院| 欧美猛男gaygay网站| 午夜久久福利影院| 欧美日韩国产欧美日美国产精品| 亚洲男同性恋视频| 欧美视频一区在线| 丝袜亚洲另类欧美综合| 欧美伊人久久大香线蕉综合69 | 97国产一区二区| 亚洲一级二级在线| 日韩欧美在线综合网| 国产精品99久久久久| 亚洲人精品午夜| 欧美成人r级一区二区三区| 国产精品一区在线观看你懂的| 国产精品美女一区二区三区| 91视频在线观看| 美女网站一区二区| 一区二区三区四区不卡视频| 日韩欧美精品三级| av男人天堂一区| 亚洲国产中文字幕| 国产精品人人做人人爽人人添| 欧美日韩亚洲不卡| 成人一级视频在线观看| 日本不卡123| 一区二区三国产精华液| 久久久久久久久久久久久久久99 | 亚洲图片欧美视频| 337p日本欧洲亚洲大胆精品| 欧美亚洲综合在线| 成人性视频免费网站| 日韩国产欧美三级| 亚洲国产精品一区二区久久恐怖片 | 一区在线中文字幕| 久久精品男人的天堂| 精品成人佐山爱一区二区| 精品视频在线免费看| 91免费视频大全| 成人高清av在线| 国产精品夜夜爽| 韩国女主播成人在线观看| 香蕉成人伊视频在线观看| 一区二区三区在线影院| 亚洲柠檬福利资源导航| 亚洲视频一区二区在线| 国产日本亚洲高清| 日本一区二区视频在线观看| 久久久久99精品国产片| 国产欧美一区二区精品仙草咪| 国产午夜精品一区二区| 国产精品女上位| 亚洲午夜三级在线| 五月天国产精品| 韩国成人精品a∨在线观看| 国产综合一区二区| 白白色 亚洲乱淫| 91麻豆精品视频| 欧美精品精品一区| 欧美电影免费观看高清完整版在| 精品国产乱子伦一区| 一区精品在线播放| 亚洲在线视频一区| 国产综合色在线视频区| 成人永久看片免费视频天堂| 国产盗摄女厕一区二区三区| 色94色欧美sute亚洲线路二| 欧美一卡2卡三卡4卡5免费| 国产亚洲成年网址在线观看| 亚洲成人1区2区| 亚洲精品美国一| 六月婷婷色综合| 国产91精品久久久久久久网曝门| 色综合久久88色综合天天6| 欧美精品自拍偷拍| 国产精品免费久久久久| 麻豆精品新av中文字幕| 99精品视频一区二区三区| 日韩欧美一级二级| 亚洲激情五月婷婷| 成人性生交大片免费看中文| 欧美男女性生活在线直播观看| 国产精品成人免费| 韩国精品主播一区二区在线观看| 色94色欧美sute亚洲线路一久| 国产欧美一区二区精品仙草咪| 蜜桃视频在线一区| 欧美性受极品xxxx喷水| 亚洲婷婷综合色高清在线| 高清国产一区二区三区| 欧美精品一区二区三区久久久| 日韩高清国产一区在线| 欧美电影一区二区|