示例#1
0
        public void GetDateData(
            int month,
            int day,
            out bool isNewMoonDay,
            out bool isFullMoonDay,
            out String festival,
            out String paksha,
            out String nakshatra,
            out String tamilMonth)
        {
            YearlyPanchangData data = _group.PanchangDataForYear[_year];

            isNewMoonDay  = false;
            isFullMoonDay = false;

            Debug.Assert(data._panchangData[(month - 1) * 31 + day - 1] != null);
            Debug.Assert(data._panchangData[(month - 1) * 31 + day - 1].Day == day);
            Debug.Assert(data._panchangData[(month - 1) * 31 + day - 1].Month == month);
            if (data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Tithi] == "Amavasya")
            {
                isNewMoonDay = true;
            }

            if (data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Tithi].Trim() == "Krishna Amavasya")
            {
                isNewMoonDay = true;
            }

            if (data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Tithi] == "Purnima")
            {
                isFullMoonDay = true;
            }

            if (data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Tithi].Trim() == "Shukla Purnima")
            {
                isFullMoonDay = true;
            }
            if (_year == 2012)
            {
                festival = data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Festival];
            }
            else
            {
                festival = FestivalDataGetter.GetFestivalData(_year, month, day, this._group.city._timeZone);
            }

            paksha     = data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Paksha];
            nakshatra  = data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Nakshatra];
            tamilMonth = data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.TamilMonth];
        }
示例#2
0
        public String GetFestival(int month, int day)
        {
            YearlyPanchangData data = _group.PanchangDataForYear[_year];
            String             festival;

            if (_year == 2012)
            {
                festival = data._panchangData[(month - 1) * 31 + day - 1]._fieldValues[(int)FieldType.Festival];
            }
            else
            {
                festival = FestivalDataGetter.GetFestivalData(_year, month, day, this._group.city._timeZone);
            }
            return(festival);
        }
示例#3
0
        static void OldMain(string[] args)
        {
            scanPatterns = new PatternToScan[] {
                new PatternToScan(@"Sunrise:\s+([\d:]+)", false, FieldType.Sunrise),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Sunset:\s+([\d:]+)", false, FieldType.Sunset),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Moonrise:\s+([\w\d:]+)", false, FieldType.Moonrise),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, false, FieldType.TamilYear),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, false, FieldType.NorthYear),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, false, FieldType.GujaratYear),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Ayana:(\w+)", false, FieldType.Ayana),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Ritu:(\w+)", false, FieldType.Ritu),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Vedic Ritu:(\w+)", false, FieldType.VedicRitu),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, false, FieldType.TamilMonth),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, false, FieldType.SanskritMonth),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, false, FieldType.Paksha),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"T:\s+(\w+)", false, FieldType.Tithi),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"N:\s+(\S+)", false, FieldType.Nakshatra),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Y:\s+(\w+)", false, FieldType.Yoga),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"K:\s+(\w+)", false, FieldType.Karana),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Sun\s+:\s(\w+)", false, FieldType.SunRasi),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"Moon\s+:\s(\w+)", false, FieldType.MoonRasi),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"RK:\s+([\d:-]+)", false, FieldType.RahuKalam),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"YM:\s+([\d:-]+)", false, FieldType.YamaGandam),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(@"GK:\s+([\d:-]+)", false, FieldType.Gulikai),
                // spare values
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None),
                new PatternToScan(null, true, FieldType.None)
            };
            SubContinent[] subContinents = CityData.GetCityData();
            festivalData = FestivalDataGetter.GetFestivalData();


            //CalendarData.CityData.FindClosestCity(0, 0);
            //CalculateLatLong(subContinents);

            foreach (SubContinent subcontinent in subContinents)
            {
                TimeZoneValues timeZone;
                if (subcontinent._stateOrCityList[0] is State)
                {
                    State[] stateList = subcontinent._stateOrCityList as State[];
                    foreach (State state in stateList)
                    {
                        foreach (City city in state._cities)
                        {
                            if (subcontinent._timeZone != TimeZoneValues.Unknown)
                            {
                                timeZone = subcontinent._timeZone;
                            }
                            else if (state._timeZone != TimeZoneValues.Unknown)
                            {
                                timeZone = state._timeZone;
                            }
                            else
                            {
                                timeZone = city._timeZone;
                            }

                            GetCalendarDataPerCityAndYear(2013, city._Name, city._UrlToken, timeZone);
                        }
                    }
                }
                else
                {
                    City[] cityList = subcontinent._stateOrCityList as City[];
                    foreach (City city in cityList)
                    {
                        if (subcontinent._timeZone != TimeZoneValues.Unknown)
                        {
                            timeZone = subcontinent._timeZone;
                        }
                        else
                        {
                            timeZone = city._timeZone;
                        }
                        GetCalendarDataPerCityAndYear(2013, city._Name, city._UrlToken, timeZone);
                    }
                }
            }
        }