public static void FormatAppDayRtf(GPAppDayResults app, StringBuilder strResult) { //MOONDATA moon; //SUNDATA sun; GPAstroData d = app.details; string str; GPGregorianTime vc = app.evente; StringBuilder strText = strResult; strText.Remove(0, strText.Length); AppendRtfHeader(strText); foreach (GPStringPair rec in app.output) { if (rec.Header) { strText.AppendFormat("\\par\\pard{{\\f2\\fs{0} {1}}", g_HeaderSize, rec.Name); strText.AppendFormat("\\par\\pard\\f2\\fs{0}\r\n", g_TextSize); } else { str = string.Format("\\tab {0} : {{\\b {1}}", rec.Name, rec.Value); AddTextLineRtf(strText, str); } } strText.Append("}"); }
public static void FormatAppDayText(GPAppDayResults app, StringBuilder strResult) { GPAstroData d = app.details; string str; GPGregorianTime vc = app.evente; StringBuilder strText = strResult; int max = 0; foreach (GPStringPair rec in app.output) { if (!rec.Header) { max = Math.Max(max, rec.Name.Length); } } max++; foreach (GPStringPair rec in app.output) { if (rec.Header) { AddTextLine(strText, rec.Name); AddTextLine(strText, string.Empty.PadLeft(rec.Name.Length, '-')); } else { str = string.Format("{0} : {1}", rec.Name.PadLeft(max), rec.Value); AddTextLine(strText, str); } } }
public static XmlDocument GetAppDayXml(GPAppDayResults app) { XmlDocument doc = new XmlDocument(); StringBuilder sb = new StringBuilder(); FormatAppDayXML(app, sb); doc.LoadXml(sb.ToString()); return(doc); }
public static XmlDocument CalculateAppearanceDay(GPLocationProvider loc, DateTime startDateTime) { GPAppDayResults gap = new GPAppDayResults(); gap.location = loc; GPGregorianTime ad = new GPGregorianTime(gap.location); ad.setDateTime(startDateTime); gap.calculateAppearanceDayData(gap.location, ad); return(FormaterXml.GetAppDayXml(gap)); }
/// <summary> /// Main function of this class /// </summary> /// <param name="args"></param> /// <returns></returns> public bool ParseCommandArguments(string[] args) { GPLocationProvider loc = new GPLocationProvider(); GPLocation loc1 = new GPLocation(); GPGregorianTime vcStart = new GPGregorianTime(loc), vcEnd = new GPGregorianTime(loc); GPVedicTime vaStart = new GPVedicTime(), vaEnd = new GPVedicTime(); int nCount; int nReq = 0; string strFileOut = ""; try { loc1.setLatitudeNorthPositive(0.0); loc1.setLongitudeEastPositive(0.0); loc1.setTimeZoneName(""); loc.setDefaultLocation(loc1); vcStart.Clear(); vcEnd = vcStart; vaStart.tithi = vaStart.masa = vaStart.gyear = 0; vaEnd = vaStart; nCount = -1; int argc = args.Length; for (int i = 0; i < argc; i++) { //TRACE2("arg %d = %s\n", i, args[i]); if (args[i] == "-L") { if (argc >= i + 2) { loc1.setLongitudeString(args[i + 1]); double lat = 0.0; double longi = 0.0; GetArg_EarthPos(args[i + 1], ref lat, ref longi); loc1.setLongitudeEastPositive(longi); loc1.setLatitudeNorthPositive(lat); //TRACE2("-L latitude=%f longitude=%f\n", loc.m_fLatitude, loc.m_fLongitude); } i++; } else if (args[i] == "-N") { if (argc >= i + 2) { loc1.setCity(args[i + 1]); //TRACE1("-N name=%s\n", loc.m_strName); } i++; } else if (args[i] == "-SV") { if (argc >= i + 2) { GetArg_VaisnDate(args[i + 1], out vaStart); } i++; } else if (args[i] == "-SG") { if (argc >= i + 2) { GetArg_Date(args[i + 1], out vcStart); } i++; } else if (args[i] == "-ST") { if (argc >= i + 2) { GetArg_Time(args[i + 1], out vcStart); } i++; } else if (args[i] == "-EG") { if (argc >= i + 2) { GetArg_Date(args[i + 1], out vcEnd); //AfxTrace("-EG day=%d month=%d year=%d\n", vcEnd.day, vcEnd.month, vcEnd.year); } i++; } else if (args[i] == "-EV") { if (argc >= i + 2) { GetArg_VaisnDate(args[i + 1], out vaEnd); //AfxTrace("-EV tithi=%d masa=%d gyear=%d\n", vaEnd.tithi, vaEnd.masa, vaEnd.gyear); } i++; } else if (args[i] == "-EC") { if (argc >= i + 2) { int.TryParse(args[i + 1], out nCount); } i++; } else if (args[i] == "-TZ") { if (argc >= i + 2) { loc1.setTimeZoneName(args[i + 1]); } i++; } else if (args[i] == "-O") { if (argc >= i + 2) { strFileOut = args[i + 1]; } i++; } else if (args[i] == "-R") { if (argc >= i + 2) { if (args[i + 1] == "calendar") { nReq = 10; } else if (args[i + 1] == "appday") { nReq = 11; } else if (args[i + 1] == "tithi") { nReq = 12; } else if (args[i + 1] == "sankranti") { nReq = 13; } else if (args[i + 1] == "naksatra") { nReq = 14; } else if (args[i + 1] == "firstday") { nReq = 15; } else if (args[i + 1] == "gcalendar") { nReq = 16; } else if (args[i + 1] == "gtithi") { nReq = 17; } else if (args[i + 1] == "next") { nReq = 18; } else if (args[i + 1] == "help") { nReq = 60; } /*else if (args[i+1] == "") * { * } else if (args[i+1] == "") * { * } else if (args[i+1] == "") * { * } else if (args[i+1] == "") * { * }*/ } i++; } } vcStart.setLocationProvider(loc); vcEnd.setLocationProvider(loc); switch (nReq) { case 10: case 13: case 14: if (vcStart.getYear() == 0 && vaStart.gyear != 0) { GPEngine.VATIMEtoVCTIME(vaStart, out vcStart, loc); } if (vcEnd.getYear() == 0 && vaEnd.gyear != 0) { GPEngine.VATIMEtoVCTIME(vaEnd, out vcEnd, loc); } break; default: break; } if (vcStart.getYear() != 0 && vcEnd.getYear() != 0 && nCount < 0) { nCount = Convert.ToInt32(vcEnd.getJulianLocalNoon() - vcStart.getJulianLocalNoon()); } if (nCount < 0) { nCount = 30; } GPAppDayResults appday = new GPAppDayResults(); GPCalendarResults calendar = new GPCalendarResults(); //AfxTrace("Count === %d\n", nCount); StringBuilder fout = new StringBuilder(); switch (nReq) { case 10: // -R -O -LAT -LON -SG -C [-DST -NAME] vcStart.NextDay(); vcStart.PreviousDay(); calendar.CalculateCalendar(vcStart, nCount); FormaterXml.WriteXml(FormaterXml.GetCalendarXmlDocument(calendar), fout); break; case 11: // -R -O -LAT -LON -SG -ST [-NAME] appday.calculateAppearanceDayData(loc, vcStart); FormaterXml.FormatAppDayXML(appday, fout); break; case 12: FormaterXml.WriteXML_Tithi(fout, loc, vcStart); break; case 13: if (vcEnd.getYear() == 0) { vcEnd = vcStart; vcEnd.AddDays(nCount); } FormaterXml.WriteXml(FormaterXml.GetSankrantiXml(loc, vcStart, vcEnd), fout); break; case 14: FormaterXml.WriteXML_Naksatra(fout, loc, vcStart, nCount); break; case 15: FormaterXml.WriteXML_FirstDay_Year(fout, vcStart); break; case 16: vcStart = GPGaurabdaYear.getFirstDayOfYear(loc, vcStart.getYear()); vcEnd = GPGaurabdaYear.getFirstDayOfYear(loc, vcStart.getYear() + 1); nCount = Convert.ToInt32(vcEnd.getJulianLocalNoon() - vcStart.getJulianLocalNoon()); calendar.CalculateCalendar(vcStart, nCount); FormaterXml.WriteXml(FormaterXml.GetCalendarXmlDocument(calendar), fout); break; case 17: FormaterXml.WriteXML_GaurabdaTithi(fout, loc, vaStart, vaEnd); break; case 18: FormaterXml.WriteXML_GaurabdaNextTithi(fout, loc, vcStart, vaStart); break; } // application should be windowless // since some parameters are present File.WriteAllText(strFileOut, fout.ToString()); } catch (Exception ex) { Console.WriteLine("Exception during execution: " + ex.Message); } return(true); }
public static void FormatAppDayXML(GPAppDayResults app, StringBuilder strResult) { GPAstroData d = app.details; string str; GPGregorianTime vc = app.evente; StringBuilder strText = strResult; int npada; bool bDuringAdhika = false; strText.AppendFormat( "<xml>\n" + "\t<request name=\"AppDay\" version=\"{0}\">\n" + "\t\t<arg name=\"longitude\" value=\"{1}\" />\n" + "\t\t<arg name=\"latitude\" value=\"{2}\" />\n" + "\t\t<arg name=\"timezone\" value=\"{3}\" />\n" + "\t\t<arg name=\"year\" value=\"{4}\" />\n" + "\t\t<arg name=\"month\" value=\"{5}\" />\n" + "\t\t<arg name=\"day\" value=\"{6}\" />\n" + "\t\t<arg name=\"hour\" value=\"{7}\" />\n" + "\t\t<arg name=\"minute\" value=\"{8}\" />\n" + "\t</request>\n", GPFileHelper.FileVersion, app.evente.getLocation().GetLongitudeEastPositive(), app.evente.getLocation().GetLatitudeNorthPositive(), app.evente.getLocation().getTimeZoneName(), app.evente.getYear(), app.evente.getMonth(), app.evente.getDay(), app.evente.getHour(), app.evente.getMinuteRound() ); npada = Convert.ToInt32(d.nNaksatraElapse / 25.0) + 1; if (npada > 4) { npada = 4; } str = string.Format("\t<result name=\"AppDay\" >\n" + "\t\t<tithi name=\"{0}\" elapse=\"{1}\" />\n" + "\t\t<naksatra name=\"{2}\" elapse=\"{3}\" pada=\"{4}\"/>\n" + "\t\t<paksa name=\"{5}\" />\n" + "\t\t<masa name=\"{6}\" adhikamasa=\"{7}\"/>\n" + "\t\t<gaurabda value=\"{8}\" />\n" , GPTithi.getName(d.nTithi), d.nTithiElapse , GPNaksatra.getName(d.nNaksatra), d.nNaksatraElapse, npada , GPPaksa.getName(d.nPaksa) , GPMasa.GetName(d.nMasa), (bDuringAdhika ? "yes" : "no") , d.nGaurabdaYear ); strText.Append(str);; string prefix = string.Format("{0} ", getSharedStringHtml(994)); strText.Append("\t\t<celebrations>\n"); foreach (GPStringPair rec in app.output) { if (rec.Name.StartsWith(prefix)) { str = string.Format("\t\t\t<celebration gaurabda=\"{0}\" date=\"{1}\" />\n", rec.Name, rec.Value); strText.Append(str); } } strText.Append("\t\t</celebrations>\n\t</result>\n</xml>\n"); }