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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uvsop.pas

?? 支持公歷、農(nóng)歷及公歷轉農(nóng)歷使用公式法(不是查表法)的日歷控件
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
unit uVsop;

 {$i ah_def.inc }

{  Calculates the planetary heliocentric coordinates according to the
   VSOP87 theory. Calculations according to chapter 32 (31) of Meeus. }

(* $define meeus *)   { Only use the accuracy as in the Meeus book }

(*$ifdef delphi_1 *)
  (*$define meeus *) { Otherwise the code segment will be too small }
(*$endif *)

(*@/// interface *)
interface

(*@/// uses *)
uses
  uAHMath,
  sysutils;
(*@\\\000000020B*)

type
  (*@/// TVSOPEntry=record *)
  TVSOPEntry=record
    A,B,C: extended;
    end;
  (*@\\\*)
  TVSOPCalcFunc = function (nr,index: integer):TVSOPEntry of object;
  (*@/// TVSOP=class(TObject) *)
  TVSOP=class(TObject)
  protected
    FDate: TDateTime;
    function LongitudeFactor(nr,index: integer):TVSOPEntry;  VIRTUAL; abstract;
    function LatitudeFactor(nr,index: integer):TVSOPEntry;  VIRTUAL; abstract;
    function RadiusFactor(nr,index: integer):TVSOPEntry;  VIRTUAL; abstract;
    function CalcLongitude:extended;
    function CalcLatitude:extended;
    function CalcRadius:extended;
    function Calc(factor: TVSOPCalcFunc):extended;
    procedure SetDate(value: TDateTime);
    function Tau:extended;
  public
    procedure DynamicToFK5(var longitude,latitude: extended);
    property Longitude:extended read CalcLongitude;
    property Latitude:extended read CalcLatitude;
    property Radius:extended read CalcRadius;
    property Date:TDateTime write SetDate;
    end;
  (*@\\\0000000E01*)
  TCVSOP=class of TVSOP;
  (*@/// TVSOPEarth=class(TVSOP) *)
  TVSOPEarth=class(TVSOP)
  protected
    function LongitudeFactor(nr,index: integer):TVSOPEntry;  override;
    function LatitudeFactor(nr,index: integer):TVSOPEntry;  override;
    function RadiusFactor(nr,index: integer):TVSOPEntry;  override;
    end;
  (*@\\\0000000607*)
  (*@/// TVSOPJupiter=class(TVSOP) *)
  TVSOPJupiter=class(TVSOP)
  protected
    function LongitudeFactor(nr,index: integer):TVSOPEntry;  override;
    function LatitudeFactor(nr,index: integer):TVSOPEntry;  override;
    function RadiusFactor(nr,index: integer):TVSOPEntry;  override;
    end;
  (*@\\\0000000607*)

procedure earth_coord(date:TdateTime; var l,b,r: extended);
procedure jupiter_coord(date:TdateTime; var l,b,r: extended);
(*@\\\0000000301*)
(*@/// implementation *)
implementation

uses
  uMoon;

(*$ifdef delphi_ge_3 *)
var
(*$else *)
const
(*$endif *)
  datetime_2000_01_01: extended = 0;

(*@/// procedure calc_coord(date: TDateTime; obj_class: TCVSOP; var l,b,r: extended); *)
procedure calc_coord(date: TDateTime; obj_class: TCVSOP; var l,b,r: extended);
var
  obj: TVSOP;
begin
  obj:=NIL;
  try
    obj:=obj_class.Create;
    obj.date:=date;
    r:=obj.radius;
    l:=obj.longitude;
    b:=obj.latitude;
    obj.DynamicToFK5(l,b);
  finally
    obj.free;
    end;
  l:=put_in_360(rad2deg(l));  (* rad -> degree *)
  b:=rad2deg(b);
  end;
(*@\\\0000001111*)

(*@/// procedure earth_coord(date:TdateTime; var l,b,r: extended); *)
procedure earth_coord(date:TdateTime; var l,b,r: extended);
begin
  calc_coord(date,TVSOPEarth,l,b,r);
  end;
(*@\\\0000000116*)
(*@/// procedure jupiter_coord(date:TdateTime; var l,b,r: extended); *)
procedure jupiter_coord(date:TdateTime; var l,b,r: extended);
begin
  calc_coord(date,TVSOPJupiter,l,b,r);
  end;
(*@\\\000000031C*)

(*@/// class TVSOP *)
(*@/// function TVSOP.CalcLongitude:extended; *)
function TVSOP.CalcLongitude:extended;
begin
  result:=calc(Longitudefactor);
  end;
(*@\\\0000000401*)
(*@/// function TVSOP.CalcLatitude:extended; *)
function TVSOP.CalcLatitude:extended;
begin
  result:=calc(Latitudefactor);
  end;
(*@\\\000000031F*)
(*@/// function TVSOP.CalcRadius:extended; *)
function TVSOP.CalcRadius:extended;
begin
  result:=calc(radiusfactor);
  end;
(*@\\\000000031D*)
(*@/// procedure TVSOP.SetDate(value: TDateTime); *)
procedure TVSOP.SetDate(value: TDateTime);
begin
  FDate:=value;
  end;
(*@\\\*)
(*@/// function TVSOP.Tau:extended; *)
function TVSOP.Tau:extended;
begin
  result:=(FDate-datetime_2000_01_01-0.5)/365250.0;
  end;
(*@\\\0000000301*)
(*@/// function TVSOP.Calc(factor: TVSOPCalcFunc):extended; *)
function TVSOP.Calc(factor: TVSOPCalcFunc):extended;
var
  t: extended;
  current: extended;
  r: array[0..5] of extended;
  i,j: integer;
begin
  t:=Tau;
  for j:=0 to 5 do begin
    r[j]:=0;
    i:=0;
    repeat
      WITH Factor(i,j) do
        current:=a*cos(b+c*t);
      r[j]:=r[j]+current;
      inc(i);
    until current=0;
    end;
  result:=(r[0]+t*(r[1]+t*(r[2]+t*(r[3]+t*(r[4]+t*r[5])))))*1e-8;
  end;
(*@\\\0000000E17*)
(*@/// procedure TVSOP.DynamicToFK5(var longitude,latitude: extended); *)
procedure TVSOP.DynamicToFK5(var longitude,latitude: extended);
var
  lprime,t: extended;
  delta_l, delta_b: extended;
begin
  t:=10*tau;
  lprime:=longitude+deg2rad(-1.397-0.00031*t)*t;
  delta_l:=-deg2rad(0.09033/3600)+deg2rad(0.03916/3600)*(cos(lprime)+sin(lprime))*tan(latitude);
  delta_b:=deg2rad(0.03916/3600)*(cos(lprime)-sin(lprime));
  longitude:=longitude+delta_l;
  latitude:=latitude+delta_b;
  end;
(*@\\\*)
(*@\\\0000000226*)
(*@/// class TVSOPEarth *)
(*@/// function TVSOPEarth.RadiusFactor(nr,index: integer):TVSOPEntry; *)
function TVSOPEarth.RadiusFactor(nr,index: integer):TVSOPEntry;
const
  (*@/// vsop87_ear_r0:array[0..525,0..2] of extended = (...); *)
  (*$ifdef meeus *)
  vsop87_ear_r0:array[0.. 39,0..2] of extended = (
  (*$else *)
  vsop87_ear_r0:array[0..525,0..2] of extended = (
  (*$endif *)
  { 4330    1 }  ( 100013988.799, 0.00000000000,      0.00000000000 ),
  { 4330    2 }  (   1670699.626, 3.09846350771,   6283.07584999140 ),
  { 4330    3 }  (     13956.023, 3.05524609620,  12566.15169998280 ),
  { 4330    4 }  (      3083.720, 5.19846674381,  77713.77146812050 ),
  { 4330    5 }  (      1628.461, 1.17387749012,   5753.38488489680 ),
  { 4330    6 }  (      1575.568, 2.84685245825,   7860.41939243920 ),
  { 4330    7 }  (       924.799, 5.45292234084,  11506.76976979360 ),
  { 4330    8 }  (       542.444, 4.56409149777,   3930.20969621960 ),
  { 4330    9 }  (       472.110, 3.66100022149,   5884.92684658320 ),
  { 4330   10 }  (       328.780, 5.89983646482,   5223.69391980220 ),
  { 4330   11 }  (       345.983, 0.96368617687,   5507.55323866740 ),
  { 4330   12 }  (       306.784, 0.29867139512,   5573.14280143310 ),
  { 4330   13 }  (       174.844, 3.01193636534,  18849.22754997420 ),

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美福利一区二区| 日本在线不卡视频| 欧美变态凌虐bdsm| 91老师国产黑色丝袜在线| 免费欧美日韩国产三级电影| 亚洲女女做受ⅹxx高潮| 久久久久国产精品厨房| 在线综合亚洲欧美在线视频| 91香蕉视频污在线| 成人污污视频在线观看| 久久草av在线| 日日欢夜夜爽一区| 国产91精品免费| 国内精品视频一区二区三区八戒| 五月婷婷久久丁香| 亚洲人成精品久久久久| 欧美国产综合一区二区| 日韩欧美国产一区在线观看| 欧美精品一二三| 一本在线高清不卡dvd| 成人免费看视频| 国产成人精品免费在线| 国产一区二区三区日韩| 另类的小说在线视频另类成人小视频在线 | 国产精品夜夜嗨| 日本成人在线电影网| 午夜视频在线观看一区| 亚洲电影中文字幕在线观看| 亚洲综合男人的天堂| 亚洲精品五月天| 日韩理论片一区二区| 国产精品久久久久久久久搜平片 | 欧美一区二区福利在线| 欧美日韩黄色影视| 欧美精品高清视频| 欧美一区二区三区在| 69堂成人精品免费视频| 777奇米成人网| 欧美一区二区三区播放老司机| 欧美人妖巨大在线| 91精品久久久久久久91蜜桃 | 欧美xxxxx裸体时装秀| 日韩西西人体444www| 日韩区在线观看| 欧美精品一区二区三| 久久免费视频色| 欧美国产国产综合| 亚洲少妇30p| 亚洲在线一区二区三区| 午夜欧美一区二区三区在线播放| 日韩av在线发布| 精品一区二区精品| 国产成人亚洲综合色影视| 成人小视频在线观看| 成人av网址在线| 91麻豆swag| 5858s免费视频成人| 欧美精品一区二区蜜臀亚洲| 国产精品网曝门| 亚洲一区二区三区精品在线| 全国精品久久少妇| 国产精品 日产精品 欧美精品| 粉嫩av一区二区三区| 色吧成人激情小说| 日韩欧美一二三| 国产日韩影视精品| 亚洲国产aⅴ天堂久久| 久久99国产精品久久99| 精品国产区一区| 亚洲少妇最新在线视频| 日本午夜一区二区| 成人午夜av在线| 欧美精品成人一区二区三区四区| 日韩欧美国产一区二区三区| 国产精品丝袜久久久久久app| 一区二区三区在线影院| 日韩和的一区二区| 成人免费高清在线| 6080午夜不卡| 亚洲色图色小说| 久88久久88久久久| 色又黄又爽网站www久久| 日韩视频免费直播| 亚洲人吸女人奶水| 精油按摩中文字幕久久| 色婷婷久久一区二区三区麻豆| 精品日韩一区二区三区| 亚洲免费伊人电影| 国产在线播放一区二区三区| 欧美在线free| 国产女人aaa级久久久级| 舔着乳尖日韩一区| 91在线国产观看| 久久综合色婷婷| 亚洲国产一区二区三区 | 91免费版pro下载短视频| 欧美一级夜夜爽| 亚洲精品ww久久久久久p站 | 欧美日韩久久久| 亚洲欧美自拍偷拍色图| 精品一区二区久久久| 欧美蜜桃一区二区三区| 亚洲人成影院在线观看| 国产91丝袜在线播放九色| 欧美一级日韩免费不卡| 亚洲精品乱码久久久久久日本蜜臀| 国产在线不卡一卡二卡三卡四卡| 欧美日韩国产在线观看| 一区二区视频在线看| youjizz久久| 久久精品欧美日韩精品| 九色porny丨国产精品| 在线不卡a资源高清| 亚洲国产日韩av| 91黄视频在线观看| 亚洲婷婷综合久久一本伊一区| 懂色av中文字幕一区二区三区| 欧美电视剧在线观看完整版| 日韩福利视频网| 91麻豆精品国产91久久久资源速度| 亚洲视频一区二区在线观看| 成人综合在线观看| 国产欧美一区二区精品久导航| 美国一区二区三区在线播放| 5858s免费视频成人| 日韩在线a电影| 4hu四虎永久在线影院成人| 亚洲国产综合人成综合网站| 日本福利一区二区| 亚洲一级不卡视频| 欧美三级欧美一级| 亚洲18女电影在线观看| 欧美精品电影在线播放| 日韩av一区二区在线影视| 一区二区三区四区蜜桃| 色偷偷一区二区三区| 亚洲女人小视频在线观看| 色哟哟国产精品| 亚洲成人一区在线| 91精品国产综合久久福利| 麻豆精品久久久| 欧美大尺度电影在线| 久久99国产精品久久99果冻传媒| 日韩欧美国产综合一区| 国产麻豆精品在线| 国产精品欧美一区喷水| 99久久精品国产网站| 亚洲综合一区二区三区| 欧美一区二区三区视频在线 | 成人在线视频一区| 国产精品久久综合| 欧美亚洲国产bt| 日韩激情视频网站| 久久久久久久久久久久久久久99| 成人黄色软件下载| 一区二区三区视频在线看| 欧美精品亚洲二区| 久久69国产一区二区蜜臀| 中文字幕精品一区| 欧美最猛性xxxxx直播| 男男视频亚洲欧美| 国产欧美一二三区| 91热门视频在线观看| 日韩成人av影视| 国产色综合一区| 日本大香伊一区二区三区| 奇米777欧美一区二区| 欧美国产日韩亚洲一区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 久久久青草青青国产亚洲免观| 9人人澡人人爽人人精品| 亚洲图片自拍偷拍| 精品日产卡一卡二卡麻豆| 99久久久精品免费观看国产蜜| 日日摸夜夜添夜夜添精品视频| 日本一区二区成人在线| 欧美日韩在线综合| 成人精品高清在线| 日韩精品一二三| 国产精品进线69影院| 欧美一区二区在线免费播放| 成人晚上爱看视频| 日日嗨av一区二区三区四区| 国产精品三级在线观看| 日韩情涩欧美日韩视频| 色噜噜夜夜夜综合网| 激情深爱一区二区| 亚洲成人精品影院| 国产精品久久久久永久免费观看| 欧美一区二区三区视频在线| 91亚洲国产成人精品一区二三| 久久国产精品72免费观看| 亚洲国产一二三| 国产精品毛片久久久久久| 日韩一二三四区| 欧美日韩高清一区二区三区| 成人h动漫精品| 国产麻豆日韩欧美久久| 蜜臀精品一区二区三区在线观看| 亚洲情趣在线观看|