示例#1
0
        private void DisplayEntry(PanchangaLocalMoments local)
        {
            string s;
            int    day = 0, month = 0, year = 0;
            double time = 0;

            sweph.swe_revjul(local.sunrise_ut, ref year, ref month, ref day, ref time);
            Moment m = new Moment(year, month, day, time);

            this.mList.Items.Add(string.Format("{0}, {1}", local.wday, m.ToDateString()));

            if (this.opts.ShowSunriset)
            {
                s = string.Format("Sunrise at {0}. Sunset at {1}",
                                  this.timeToString(local.sunrise),
                                  this.timeToString(local.sunset));
                this.mList.Items.Add(s);
            }

            if (this.opts.CalcSpecialKalas)
            {
                string s_rahu = string.Format("Rahu Kala from {0} to {1}",
                                              new Moment(local.kalas_ut[local.rahu_kala_index], h).ToTimeString(),
                                              new Moment(local.kalas_ut[local.rahu_kala_index + 1], h).ToTimeString());
                string s_gulika = string.Format("Gulika Kala from {0} to {1}",
                                                new Moment(local.kalas_ut[local.gulika_kala_index], h).ToTimeString(),
                                                new Moment(local.kalas_ut[local.gulika_kala_index + 1], h).ToTimeString());
                string s_yama = string.Format("Yama Kala from {0} to {1}",
                                              new Moment(local.kalas_ut[local.yama_kala_index], h).ToTimeString(),
                                              new Moment(local.kalas_ut[local.yama_kala_index + 1], h).ToTimeString());

                if (opts.OneEntryPerLine)
                {
                    this.mList.Items.Add(s_rahu);
                    this.mList.Items.Add(s_gulika);
                    this.mList.Items.Add(s_yama);
                }
                else
                {
                    this.mList.Items.Add(string.Format("{0}. {1}. {2}.", s_rahu, s_gulika, s_yama));
                }
            }

            if (this.opts.CalcTithiCusps)
            {
                string s_tithi = "";

                if (local.tithi_index_start == local.tithi_index_end &&
                    local.tithi_index_start >= 0)
                {
                    PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.tithis_ut[local.tithi_index_start];
                    Tithi t = new Tithi((Tithi.Name)pmi.info);
                    this.mList.Items.Add(string.Format("{0} - full.", t.value));
                }
                else
                {
                    for (int i = local.tithi_index_start + 1; i <= local.tithi_index_end; i++)
                    {
                        if (i < 0)
                        {
                            continue;
                        }
                        PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.tithis_ut[i];
                        Tithi t = new Tithi((Tithi.Name)pmi.info).addReverse(2);
                        s_tithi += string.Format("{0} until {1}",
                                                 t.value,
                                                 this.utTimeToString(pmi.ut, local.sunrise_ut, local.sunrise));

                        if (this.opts.OneEntryPerLine)
                        {
                            this.mList.Items.Add(s_tithi);
                            s_tithi = "";
                        }
                        else
                        {
                            s_tithi += ". ";
                        }
                    }
                    if (false == opts.OneEntryPerLine)
                    {
                        this.mList.Items.Add(s_tithi);
                    }
                }
            }


            if (this.opts.CalcKaranaCusps)
            {
                string s_karana = "";

                if (local.karana_index_start == local.karana_index_end &&
                    local.karana_index_start >= 0)
                {
                    PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.karanas_ut[local.karana_index_start];
                    Karana k = new Karana((Karana.Name)pmi.info);
                    this.mList.Items.Add(string.Format("{0} karana - full.", k.value));
                }
                else
                {
                    for (int i = local.karana_index_start + 1; i <= local.karana_index_end; i++)
                    {
                        if (i < 0)
                        {
                            continue;
                        }
                        PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.karanas_ut[i];
                        Karana k = new Karana((Karana.Name)pmi.info).addReverse(2);
                        s_karana += string.Format("{0} karana until {1}",
                                                  k.value,
                                                  this.utTimeToString(pmi.ut, local.sunrise_ut, local.sunrise));

                        if (this.opts.OneEntryPerLine)
                        {
                            this.mList.Items.Add(s_karana);
                            s_karana = "";
                        }
                        else
                        {
                            s_karana += ". ";
                        }
                    }
                    if (false == opts.OneEntryPerLine)
                    {
                        this.mList.Items.Add(s_karana);
                    }
                }
            }



            if (this.opts.CalcSMYogaCusps)
            {
                string s_smyoga = "";

                if (local.smyoga_index_start == local.smyoga_index_end &&
                    local.smyoga_index_start >= 0)
                {
                    PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.smyogas_ut[local.smyoga_index_start];
                    SunMoonYoga         sm  = new SunMoonYoga((SunMoonYoga.Name)pmi.info);
                    this.mList.Items.Add(string.Format("{0} yoga - full.", sm.value));
                }
                else
                {
                    for (int i = local.smyoga_index_start + 1; i <= local.smyoga_index_end; i++)
                    {
                        if (i < 0)
                        {
                            continue;
                        }
                        PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.smyogas_ut[i];
                        SunMoonYoga         sm  = new SunMoonYoga((SunMoonYoga.Name)pmi.info).addReverse(2);
                        s_smyoga += string.Format("{0} yoga until {1}",
                                                  sm.value,
                                                  this.utTimeToString(pmi.ut, local.sunrise_ut, local.sunrise));

                        if (this.opts.OneEntryPerLine)
                        {
                            this.mList.Items.Add(s_smyoga);
                            s_smyoga = "";
                        }
                        else
                        {
                            s_smyoga += ". ";
                        }
                    }
                    if (false == opts.OneEntryPerLine)
                    {
                        this.mList.Items.Add(s_smyoga);
                    }
                }
            }



            if (this.opts.CalcNakCusps)
            {
                string s_nak = "";

                if (local.nakshatra_index_start == local.nakshatra_index_end &&
                    local.nakshatra_index_start >= 0)
                {
                    PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.nakshatras_ut[local.nakshatra_index_start];
                    Nakshatra           n   = new Nakshatra((Nakshatra.Name)pmi.info);
                    this.mList.Items.Add(string.Format("{0} - full.", n.value));
                }
                else
                {
                    for (int i = local.nakshatra_index_start + 1; i <= local.nakshatra_index_end; i++)
                    {
                        if (i < 0)
                        {
                            continue;
                        }
                        PanchangaMomentInfo pmi = (PanchangaMomentInfo)globals.nakshatras_ut[i];
                        Nakshatra           n   = new Nakshatra((Nakshatra.Name)pmi.info).addReverse(2);
                        s_nak += string.Format("{0} until {1}",
                                               n.value,
                                               this.utTimeToString(pmi.ut, local.sunrise_ut, local.sunrise));
                        if (this.opts.OneEntryPerLine)
                        {
                            this.mList.Items.Add(s_nak);
                            s_nak = "";
                        }
                        else
                        {
                            s_nak += ". ";
                        }
                    }
                    if (false == opts.OneEntryPerLine)
                    {
                        this.mList.Items.Add(s_nak);
                    }
                }
            }

            if (this.opts.CalcLagnaCusps)
            {
                string      sLagna = "    ";
                ZodiacHouse zBase  = new ZodiacHouse(local.lagna_zh);
                for (int i = 0; i < 12; i++)
                {
                    PanchangaMomentInfo pmi   = (PanchangaMomentInfo)local.lagnas_ut[i];
                    ZodiacHouse         zCurr = new ZodiacHouse((ZodiacHouse.Name)pmi.info);
                    zCurr  = zCurr.add(12);
                    sLagna = string.Format("{0}{1} Lagna until {2}. ", sLagna, zCurr.value,
                                           this.utTimeToString(pmi.ut, local.sunrise_ut, local.sunrise));
                    if (opts.OneEntryPerLine || i % 4 == 3)
                    {
                        this.mList.Items.Add(sLagna);
                        sLagna = "";
                    }
                }
            }

            if (this.opts.CalcHoraCusps)
            {
                string sHora = "    ";
                for (int i = 0; i < 24; i++)
                {
                    int       ib    = (int)Basics.normalize_exc_lower(0, 7, local.hora_base + i);
                    Body.Name bHora = h.horaOrder[ib];
                    sHora = string.Format("{0}{1} hora until {2}. ", sHora, bHora,
                                          this.utTimeToString(local.horas_ut[i + 1], local.sunrise_ut, local.sunrise));
                    if (opts.OneEntryPerLine || i % 4 == 3)
                    {
                        this.mList.Items.Add(sHora);
                        sHora = "";
                    }
                }
            }

            if (this.opts.CalcKalaCusps)
            {
                string sKala = "    ";
                for (int i = 0; i < 16; i++)
                {
                    int       ib    = (int)Basics.normalize_exc_lower(0, 8, local.kala_base + i);
                    Body.Name bKala = h.kalaOrder[ib];
                    sKala = string.Format("{0}{1} kala until {2}. ", sKala, bKala,
                                          this.utTimeToString(local.kalas_ut[i + 1], local.sunrise_ut, local.sunrise));
                    if (opts.OneEntryPerLine || i % 4 == 3)
                    {
                        this.mList.Items.Add(sKala);
                        sKala = "";
                    }
                }
            }

            this.mList.Items.Add("");
        }
示例#2
0
        private string GetVimAntarString(ToDate td, DasaEntry de)
        {
            Moment mStart = td.AddYears(de.startUT);

            return(string.Format("{0} {1}", Body.toShortString(de.graha), mStart.ToDateString()));
        }