public List <T> GetKalaList(EnumHoraTypes depth, EnumPlanet upperHoraPlanet) { TimeSpan ts = new TimeSpan(KalaInterval.EndTime.Ticks); ts = ts.Subtract(new TimeSpan(KalaInterval.StartTime.Ticks)); int increment = 0; if (ts.Hours == 1) { increment = 12; } else if (ts.Minutes == 12) { increment = 4; } int length = 0; if (increment == 12) { length = 5; } else if (increment == 4) { length = 3; } List <T> kalaList = new List <T>(); T s1 = new T(); s1.KalaInterval = new TimeInterval(KalaInterval.StartTime , KalaInterval.StartTime.AddMinutes(increment)); s1.KalaAdhipathiPlanet = GetHoraPlanet(KalaInterval.StartTime, depth, upperHoraPlanet); s1.KalaInterval.IsVisha = (depth == EnumHoraTypes.PanchamaHora) ? IsVishaHora(upperHoraPlanet, s1.KalaAdhipathiPlanet) : false; s1.Init(s1.KalaInterval.StartTime, s1.KalaAdhipathiPlanet); kalaList.Add(s1); DateTime startTime = s1.KalaInterval.EndTime; for (int i = 1; i < length; i++) { T s = new T(); s.KalaInterval = new TimeInterval(startTime, startTime.AddMinutes(increment)); s.KalaAdhipathiPlanet = GetHoraPlanet(s.KalaInterval.StartTime, depth, upperHoraPlanet); s.KalaInterval.IsVisha = (depth == EnumHoraTypes.PanchamaHora) ? IsVishaHora(upperHoraPlanet, s.KalaAdhipathiPlanet) : false; s.Init(s.KalaInterval.StartTime, s.KalaAdhipathiPlanet); kalaList.Add(s); startTime = s.KalaInterval.EndTime; } return(kalaList); }
public EnumPlanet GetPlanet(int horaInt, EnumHoraTypes depth) { if (depth == EnumHoraTypes.Hora) { return(GetHoraOrSukshamaHoraPlanet(horaInt)); } else if (depth == EnumHoraTypes.PanchamaHora) { return(GetPanchamaHoraPlanet(horaInt)); } else { return(GetHoraOrSukshamaHoraPlanet(horaInt)); } }
protected EnumPlanet GetHoraPlanet(DateTime dateTime , EnumHoraTypes depth, EnumPlanet?upperHoraPlanet) { int horaInt = 0; int panchaHoraInt = 0; int sukshamaHoraInt = 0; DayOfWeek day = dateTime.DayOfWeek; switch (depth) { case EnumHoraTypes.Hora: { horaInt = dateTime.AddHours(-5).Hour % 7; if (horaInt == 0) { horaInt = 7; } horaInt = (day == DayOfWeek.Sunday) ? horaInt : (day == DayOfWeek.Monday) ? horaInt + 3 : (day == DayOfWeek.Tuesday) ? horaInt + 6 : (day == DayOfWeek.Wednesday) ? horaInt + 2 : (day == DayOfWeek.Thursday) ? horaInt + 5 : (day == DayOfWeek.Friday) ? horaInt + 1 : (day == DayOfWeek.Saturday) ? horaInt + 4 : 0; horaInt = horaInt % 7; if (horaInt == 0) { horaInt = 7; } return(GetPlanet(horaInt, EnumHoraTypes.Hora)); } case EnumHoraTypes.PanchamaHora: { panchaHoraInt = 1 + (dateTime.Minute / 12); panchaHoraInt = (upperHoraPlanet == EnumPlanet.Sun) ? panchaHoraInt : (upperHoraPlanet == EnumPlanet.Moon) ? panchaHoraInt + 1 : (upperHoraPlanet == EnumPlanet.Mars) ? panchaHoraInt + 2 : (upperHoraPlanet == EnumPlanet.Mercury) ? panchaHoraInt + 3 : (upperHoraPlanet == EnumPlanet.Jupiter) ? panchaHoraInt + 4 : (upperHoraPlanet == EnumPlanet.Venus) ? panchaHoraInt + 5 : (upperHoraPlanet == EnumPlanet.Saturn) ? panchaHoraInt + 6 : 0; panchaHoraInt = panchaHoraInt % 7; if (panchaHoraInt == 0) { panchaHoraInt = 7; } return(GetPlanet(panchaHoraInt, EnumHoraTypes.PanchamaHora)); } case EnumHoraTypes.SukshamaHora: { sukshamaHoraInt = 1 + ((dateTime.Minute % 12) / 4); sukshamaHoraInt = (upperHoraPlanet == EnumPlanet.Sun) ? sukshamaHoraInt : (upperHoraPlanet == EnumPlanet.Moon) ? sukshamaHoraInt + 3 : (upperHoraPlanet == EnumPlanet.Mars) ? sukshamaHoraInt + 6 : (upperHoraPlanet == EnumPlanet.Mercury) ? sukshamaHoraInt + 2 : (upperHoraPlanet == EnumPlanet.Jupiter) ? sukshamaHoraInt + 5 : (upperHoraPlanet == EnumPlanet.Venus) ? sukshamaHoraInt + 1 : (upperHoraPlanet == EnumPlanet.Saturn) ? sukshamaHoraInt + 4 : 0; sukshamaHoraInt = sukshamaHoraInt % 7; if (sukshamaHoraInt == 0) { sukshamaHoraInt = 7; } return(GetPlanet(sukshamaHoraInt, EnumHoraTypes.SukshamaHora)); } } return(EnumPlanet.Sun); }