zoukankan      html  css  js  c++  java
  • FLEX 24节气算法

    使用说明: 主方法为RiliLunarClass4jyecyea.getSoralTerm();

    如: Alert.show(RiliLunarClass4jyecyea.getSoralTerm(2011,3,21)); 则可得到 2011-3-21的节气为"春分"..如果当日不是节气,返回空字符串

    调用范例: 循环2011年的所有节气
    function addJyecyea(ac:ArrayCollection):void{
    for(var i=1;i<=12;i++)
    {
    for(var j=1;j<=31;j++)
    {
    var jc:String= RiliLunarClass4jyecyea.getSoralTerm(2011,i,j);
    if(jc!="")
    {
    //DOING SOMETHING...

    }
    }

    }


    }







    ----------------------------------源码----------

    package
    {

    public class RiliLunarClass4jyecyea
    {

    public function RiliLunarClass4jyecyea()
    {
    }

    public static var solarTerm:Array = new Array(
    "小寒","大寒","立春","雨水","惊蛰","春分","清明","谷雨","立夏",
    "小满","芒种","夏至","小暑","大暑","立秋","处暑","白露","秋分",
    "寒露","霜降","立冬","小雪","大雪","冬至");

    private static var sTermInfo:Array = new Array(
    0,21208,42467,63836,85337,107014,128867,150921,173149,195551,218072,
    240693,263343,285989,308563,331033,353350,375494,397447,419210,440795,
    462224,483532,504758);



    //===== 某年的第n个节气为几日(从0小寒起算)
    private static function sTerm(y:int, n:int):int
    {
    var offDate:Date = new Date((31556925974.7 * (y - 1900) + sTermInfo[n] * 60000) + Date.UTC(1900, 0, 6, 2, 5));
    return (offDate.getUTCDate());
    }


    /** 核心方法 根据日期(y年m月d日)得到节气 */
    public static function getSoralTerm( y:int, m:int , d:int):String {
    var solarTerms:String;
    if (d == sTerm(y, (m - 1) * 2))
    solarTerms = solarTerm[(m - 1) * 2];
    else if (d == sTerm(y, (m - 1) * 2 + 1))
    solarTerms = solarTerm[(m - 1) * 2 + 1];
    else {
    // 到这里说明非节气时间
    solarTerms = "";
    }
    return solarTerms;
    }
    }
    }


    Powered by Zoundry

  • 相关阅读:
    MSP430的CAN通信发送
    Arduino 101/Genuino101使用-第2篇
    CC2541调试问题记录-第一篇
    STM32运行FreeRTOS出现prvTaskExitError错误死机
    Arduino 101/Genuino101使用-第一篇
    LAUNCHXL-28379D入门学习-第一篇
    蒸汽机的原理
    等高线相似性匹配
    cad转shapefile文件
    ArcGIS坐标转换
  • 原文地址:https://www.cnblogs.com/attilax/p/15200080.html
Copyright © 2011-2022 走看看