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

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

?? uvsop.pas

?? 支持公歷、農歷及公歷轉農歷使用公式法(不是查表法)的日歷控件
?? 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一区二区三区免费野_久草精品视频
亚洲乱码国产乱码精品精的特点| 色伊人久久综合中文字幕| 天天综合天天做天天综合| 亚洲日本韩国一区| 亚洲一区二区三区视频在线播放 | 中文字幕 久热精品 视频在线| 欧美一级黄色录像| 日韩一级成人av| 欧美草草影院在线视频| www激情久久| 中文一区在线播放| 亚洲免费高清视频在线| 亚洲一区二区高清| 青草国产精品久久久久久| 久久aⅴ国产欧美74aaa| 国产精品99久久久久久有的能看 | 成人av资源网站| 91免费视频大全| 欧美日韩一区二区三区在线看| 欧美揉bbbbb揉bbbbb| 欧美一区二区三区小说| 久久女同精品一区二区| 亚洲欧美一区二区三区国产精品| 亚洲成人自拍网| 韩国毛片一区二区三区| 91亚洲国产成人精品一区二三| 欧美亚洲综合网| 精品国产免费一区二区三区四区| 中文av字幕一区| 日韩精品久久理论片| 成人黄色一级视频| 欧美一级片在线看| 国产欧美精品一区二区色综合| 一区二区三区资源| 国产一区不卡视频| 欧美日韩在线三区| 国产精品国产三级国产aⅴ中文| 午夜激情综合网| 成人免费毛片高清视频| 日韩一区二区中文字幕| 亚洲欧美色一区| 国产精品一区专区| 7777精品伊人久久久大香线蕉完整版 | 色综合网站在线| 欧美精品一区二区三区视频| 亚洲一线二线三线视频| 国产乱码精品一区二区三| 欧美久久久久久久久久| 最新久久zyz资源站| 国产一区福利在线| 在线综合亚洲欧美在线视频| 亚洲欧美电影院| 国产一区二区三区精品欧美日韩一区二区三区| 91一区一区三区| 中文字幕巨乱亚洲| 国产麻豆精品一区二区| 日韩美女视频在线| 日韩影院在线观看| 欧美日韩国产天堂| 一区二区三区欧美日| aaa国产一区| 国产精品国产三级国产aⅴ无密码| 久99久精品视频免费观看| 欧美剧情片在线观看| 亚洲综合色噜噜狠狠| 色噜噜狠狠色综合中国| 中文字幕欧美国产| 成人性色生活片免费看爆迷你毛片| 日韩欧美一区二区视频| 日韩一区欧美二区| 欧美一级理论片| 九九**精品视频免费播放| 7777精品伊人久久久大香线蕉经典版下载 | 欧美国产禁国产网站cc| 国产盗摄视频一区二区三区| 日韩一区二区三区视频| 日韩极品在线观看| 日韩美女在线视频| 国产精品一区三区| 中文字幕亚洲在| 91年精品国产| 视频一区视频二区中文| 91麻豆精品国产自产在线观看一区| 婷婷久久综合九色综合伊人色| 欧美日韩精品一区二区天天拍小说| 亚洲电影一区二区三区| 欧美高清视频一二三区| 久久99精品久久久久久国产越南 | 樱桃国产成人精品视频| 欧美最新大片在线看 | 久久精品免视看| 成人一区在线观看| 亚洲精品欧美二区三区中文字幕| 在线中文字幕一区| 免费在线观看一区二区三区| 久久综合成人精品亚洲另类欧美 | 免费观看久久久4p| 国产日产精品1区| 在线视频国内一区二区| 免费成人小视频| 中文字幕一区二区三区不卡| 欧美午夜一区二区三区免费大片| 日本不卡高清视频| 中文字幕一区二区三区在线不卡| 欧美三级午夜理伦三级中视频| 久久国产尿小便嘘嘘| 日韩一区在线看| 欧美一区二区性放荡片| 成人av在线播放网址| 青青草97国产精品免费观看无弹窗版| 久久你懂得1024| 欧美色区777第一页| 成人精品视频一区二区三区尤物| 亚洲福利视频一区二区| 亚洲国产成人在线| 欧美一区二区视频在线观看2020| 国产激情91久久精品导航| 亚洲一区二区五区| 中文字幕欧美三区| 日韩欧美电影在线| 精品视频在线免费观看| 99re成人精品视频| 激情综合网av| 久久激情五月激情| 亚洲精品水蜜桃| 亚洲国产高清不卡| 久久无码av三级| 91精品在线麻豆| 欧美调教femdomvk| 97久久超碰国产精品| 成人在线视频一区二区| 黄网站免费久久| 日本怡春院一区二区| 亚洲第一在线综合网站| 亚洲精品日产精品乱码不卡| 国产精品久久久久7777按摩| 久久综合av免费| 欧美一级欧美三级| 欧美一区二区三区白人| 欧美日韩综合一区| 欧美日韩精品一区二区三区四区 | 精品亚洲成av人在线观看| 亚洲成a天堂v人片| 一区二区三区在线播| 亚洲精品日日夜夜| 亚洲少妇屁股交4| 亚洲伦在线观看| 亚洲精品一二三区| 亚洲福利视频三区| 日韩激情一区二区| 日韩精品电影在线| 久热成人在线视频| 国产中文一区二区三区| 国产麻豆视频精品| 成人精品gif动图一区| 成人毛片老司机大片| 色综合天天做天天爱| 91小视频免费看| 欧美色图在线观看| 欧美日本国产一区| 精品国产三级a在线观看| 日韩免费观看2025年上映的电影| 日韩欧美亚洲另类制服综合在线| 日韩三区在线观看| 久久久久国产一区二区三区四区| 国产日韩精品一区二区三区| 国产精品美女久久久久久久网站| 国产精品家庭影院| 亚洲综合丝袜美腿| 久久99精品久久久久久动态图 | 中文字幕在线观看不卡| 一区二区三区视频在线看| 亚洲一级二级三级在线免费观看| 亚洲国产一区视频| 久色婷婷小香蕉久久| 成人免费观看av| 欧美日韩综合在线免费观看| 欧美变态口味重另类| 中文字幕一区二区三区不卡 | 久久精品国产在热久久| 丁香婷婷综合五月| 欧美午夜电影一区| 亚洲精品一区二区三区蜜桃下载| 中文字幕在线不卡| 久久精品二区亚洲w码| 不卡视频在线看| 制服丝袜亚洲网站| 中文字幕免费观看一区| 日日摸夜夜添夜夜添精品视频| 黑人精品欧美一区二区蜜桃| 91久久一区二区| 久久嫩草精品久久久精品一| 亚洲欧美激情小说另类| 国内久久精品视频| 欧洲国产伦久久久久久久| 国产亚洲自拍一区| 久久电影网电视剧免费观看| 色吊一区二区三区| 亚洲国产成人自拍| 美国十次了思思久久精品导航|