public string BriefOf(ConcernedEvent focused) { switch (focused) { case ConcernedEvent.None: return(String.Format("{0}: {1}, H={2:F3}, D={3:F3}", Planet.SymbolOf(Current.Owner), Current.Longitude.AstrologyFormat(), Current.Latitude, Current.Distance)); case ConcernedEvent.Rectascension: return(LongitudeStatus == RectascensionMode.None ? "" : String.Format("{0} {1}", RectascensionSymbols[LongitudeStatus], DaysToRectascensionMode)); case ConcernedEvent.Declination: return(LatitudeStatus == DeclinationMode.None ? "": String.Format("{0} {1}", DeclinationSymbols[LatitudeStatus], DaysToDeclinationMode)); case ConcernedEvent.Distance: return(DistanceStatus == DistanceMode.None ? "" : String.Format("{0}{1}", DistanceSymbols[DistanceStatus], DaysToDistanceMode)); case ConcernedEvent.Relations: if (RelationWithOthers.Count == 0) { return(""); } StringBuilder sb = new StringBuilder(); foreach (Relation rel in RelationWithOthers) { if (NeglectMoon && rel.Inferior == PlanetId.SE_MOON || rel.Superior == PlanetId.SE_MOON) { continue; } sb.AppendFormat("{0}{1} ", rel.Aspect.Symbol, Planet.SymbolOf(rel.Inferior == Current.Owner ? rel.Superior : rel.Inferior)); } return(sb.ToString()); case ConcernedEvent.All: default: return(Brief); } }
public string StatusOf(ConcernedEvent focused) { StringBuilder sb = new StringBuilder(); switch (focused) { case ConcernedEvent.None: return(String.Format("{0} on {1}: Long={2}, Lat={3:F4}, Dist={4:F4}", Planet.SymbolOf(Current.Owner), Date.DayOfWeek, Current.Longitude.AstrologyFormat(), Current.Latitude, Current.Distance)); case ConcernedEvent.Rectascension: return(String.Format("{0} on {1}: Long={2}, Speed={3:F2}, Status={4} {5}", Planet.SymbolOf(Current.Owner), Date.DayOfWeek, Current.Longitude.AstrologyFormat(), Current.LongitudeVelocity, LongitudeStatus, DaysToRectascensionMode)); case ConcernedEvent.Declination: return(String.Format("{0} on {1}: Lat={2:F3}, Speed={3:F2}, Status={4} {5}", Planet.SymbolOf(Current.Owner), Date.DayOfWeek, Current.Latitude, Current.LatitudeVelocity, LatitudeStatus, DaysToDeclinationMode)); case ConcernedEvent.Distance: return(String.Format("{0} on {1}: Dist={2:F3}, Speed={3:F2}, Status={4} {5}", Planet.SymbolOf(Current.Owner), Date.DayOfWeek, Current.Distance, Current.DistanceVelocity, DistanceStatus, DaysToDistanceMode)); case ConcernedEvent.Relations: foreach (Relation rel in RelationWithOthers) { if (NeglectMoon && rel.Inferior == PlanetId.SE_MOON || rel.Superior == PlanetId.SE_MOON) { continue; } sb.AppendFormat("{0}º{1}({2}) ", rel.Aspect.Degrees, rel.Inferior == Current.Owner ? rel.Superior : rel.Inferior, rel.Orb.ToString("F3")); } return(sb.ToString()); case ConcernedEvent.All: default: sb.AppendFormat("{0}@{1}:", Planet.SymbolOf(Current.Owner), Date.DayOfWeek); if (LongitudeStatus != RectascensionMode.None) { sb.AppendFormat(" {0}{1}, Long={2}({3:F3}//day)", LongitudeStatus, DaysToRectascensionMode, Current.Longitude.AstrologyFormat(), Current.LongitudeVelocity); } if (LatitudeStatus != DeclinationMode.None) { sb.AppendFormat(" {0}{1}, Lat={2:F3}({3:F3}//day)", LatitudeStatus, DaysToDeclinationMode, Current.Latitude, Current.LatitudeVelocity); } if (DistanceStatus != DistanceMode.None) { sb.AppendFormat(" {0}{1}, Long={2:F3}({3:F3}//day)", DistanceStatus, DaysToDistanceMode, Current.Distance, Current.DistanceVelocity); } foreach (Relation rel in RelationWithOthers) { if (NeglectMoon && rel.Inferior == PlanetId.SE_MOON || rel.Superior == PlanetId.SE_MOON) { continue; } sb.AppendFormat("{0}º{1}({2}) ", rel.Aspect.Degrees, rel.Inferior == Current.Owner ? rel.Superior : rel.Inferior, rel.Orb.ToString("F3")); } return(sb.ToString()); } }