יצירת טבלת זמני היום - מאיפה אני מתחיל?
-
אני צריך ליצור טבלה של זמני היום, לפי האופקים השונים, ומכילה מידע יחסית מדוייק לצורך חישובים הלכתיים (זמני תפילות, כניסת שבת וכו').
יש למישהו רעיון איך אני יוצר דבר כזה, או שיש פרוייקט כזה בקוד פתוח?תודה רבה ושבת שלום!
אברהםפורסם במקור בפורום CODE613 ב05/05/2017 14:16 (+03:00)
-
http://www.prog.co.il/forum/קהילת-מעצבי-ובוני-אתרים/301751-תוסף-זמני-היום
תראה את מה שהוא בנה ב JS, לא התעמקתי בזה אבל אולי זה יכול לעזור לך
בהצלחה!פורסם במקור בפורום CODE613 ב05/05/2017 14:48 (+03:00)
-
אם זה טוב לך כנראה שתוכל ללמוד מכאן כמה דברים...
זה מגיע מפרוג.מוישי מפרוג הביא שם עוד כמה דברים
פורסם במקור בפורום CODE613 ב05/05/2017 14:53 (+03:00)
-
תודה רבה רבה!
מלא - זה נראה ממש יפה! באיזה אופק אתה משתמש?פורסם במקור בפורום CODE613 ב05/05/2017 14:57 (+03:00)
-
אם זה טוב לך כנראה שתוכל ללמוד מכאן כמה דברים...
זה מגיע מפרוג.אז הנה המקור של הספריה בדוט נט:
https://github.com/Yitzchok/Zmanimיש את זה גם בNuGet:
https://www.nuget.org/packages/Zmanim/והנה דוגמה למימוש חלקי בC#
(רוב הקוד לא שלי אלא מתוך מה שמצאתי בפרוייקט שלו (בתוך הטסטים..)public static void Demo() { //מגדירים את המיקום string locationName = "פסגות"; double latitude = 31.898974; double longitude = 35.224247; double elevation = 0; //optional elevation GeoLocation location = new GeoLocation(locationName, latitude, longitude, elevation, new WindowsTimeZone(TimeZoneInfo.Local)); List<dynamic> allTimesForYear = new List<dynamic>(); var days = from day in GetDaysInHebrewYear(DateTime.Now, location) select day; foreach (var item in days) { allTimesForYear.Add(new { //כאן אפשר להוסיף זמנים ככל העולה על רוחנו //ישנם כמאה ועשרים מתודות של כל סוגי הזמנים והחישובים האפשריים לחומרא ולקולא sunrise = item.GetSunrise(), sunset = item.GetSunset(), alotHumra = item.GetAlos90Zmanis(), alot = item.GetAlosHashachar() }); } } /// <summary> /// מחזירה אובייקט של זמנים עבור כל יום מימות השנה העברית /// </summary> /// <param name="year"></param> /// <param name="location"></param> /// <returns></returns> public static IEnumerable<ComplexZmanimCalendar> GetDaysInHebrewYear(DateTime year, GeoLocation location) { Calendar calendar = new HebrewCalendar(); var currentYear = calendar.GetYear(year); var amountOfMonths = calendar.GetMonthsInYear(currentYear); for (int i = 0; i < amountOfMonths; i++) { var currentMonth = i + 1; var daysInMonth = calendar.GetDaysInMonth(currentYear, currentMonth); for (int dayOfMonth = 0; dayOfMonth < daysInMonth; dayOfMonth++) { var zmanimCalendar = new ComplexZmanimCalendar(location); zmanimCalendar.DateWithLocation.Date = new DateTime(currentYear, currentMonth, dayOfMonth + 1, calendar); yield return zmanimCalendar; } } } אולי כשאסיים אעלה פרוייקט מסודר.
פורסם במקור בפורום CODE613 ב06/06/2017 00:57 (+03:00)
-
הסתדרת?
פורסם במקור בפורום CODE613 ב06/06/2017 20:52 (+03:00)
-
@JosephA
הסתדרת?
עקרונית כן, כלומר מצאתי את הספרייה שאמורה לספק לי את המידע.
העניין הוא שאני מתלבט אם בכלל יש צורך להחזיק טבלה כזאת בדטה בייס, או שפשוט כל פעם שאזדקק לזמן מסוים - אשתמש בקוד הנ"ל כדי לקבל אותו.
כמו כן, לא מספיק ברור לי מהם השיטות ההלכתיות המקובלות לחישוב הזמנים (אם יש דבר כזה..), כיון שכרגע אני מעוניין לבנות משהו די סטנדרטי.
לדוגמה: איך מקובל לחשב את עלות השחר? /72/120/90 דק' זמניות, או מיקום השמש במעלות?
וממילא כל החישובים האחרים שנגזרים מזה.אני מעוניין לבנות לוח יחסית סטנדרטי, עם כמה אפשרויות של אופק, ולא לתת לכל אחד להגדיר לעצמו את המיקום (לפחות לא כרגע). אז איך אני מחשב את אופק ירושלים? לפי איזה נ.צ. בירושלים? וכן באופק תל אביב וכדו'.
תודה!
פורסם במקור בפורום CODE613 ב06/06/2017 21:53 (+03:00)
-
@JosephA
הסתדרת?עקרונית כן, כלומר מצאתי את הספרייה שאמורה לספק לי את המידע.
העניין הוא שאני מתלבט אם בכלל יש צורך להחזיק טבלה כזאת בדטה בייס, או שפשוט כל פעם שאזדקק לזמן מסוים - אשתמש בקוד הנ"ל כדי לקבל אותו.
כמו כן, לא מספיק ברור לי מהם השיטות ההלכתיות המקובלות לחישוב הזמנים (אם יש דבר כזה..), כיון שכרגע אני מעוניין לבנות משהו די סטנדרטי.
לדוגמה: איך מקובל לחשב את עלות השחר? /72/120/90 דק' זמניות, או מיקום השמש במעלות?
וממילא כל החישובים האחרים שנגזרים מזה.אני מעוניין לבנות לוח יחסית סטנדרטי, עם כמה אפשרויות של אופק, ולא לתת לכל אחד להגדיר לעצמו את המיקום (לפחות לא כרגע). אז איך אני מחשב את אופק ירושלים? לפי איזה נ.צ. בירושלים? וכן באופק תל אביב וכדו'.
תודה!
כמעט כל לוח שנה שתקח יש בתחילתו הסבר איך חושבו הזמנים ולפי איזו שיטה
פורסם במקור בפורום CODE613 ב07/06/2017 08:00 (+03:00)
-
נכון השאלה שלי היא מהם השיטות המקובלות והנפוצות ביותר. וכן איך מחליטים איפה זה "אופק ירושלים"? במקום הגבוה ביותר בירושלים? וכן על זה הדרך..
פורסם במקור בפורום CODE613 ב07/06/2017 09:03 (+03:00)
-
נכון השאלה שלי היא מהם השיטות המקובלות והנפוצות ביותר. וכן איך מחליטים איפה זה "אופק ירושלים"? במקום הגבוה ביותר בירושלים? וכן על זה הדרך..
טוב, זו כבר לא שאלה לפורום מתכנתים אלא צריך לשאול בבית הוראה.
פורסם במקור בפורום CODE613 ב07/06/2017 14:11 (+03:00)
-
יש כאן API בתשלום -
וגם הסברים על החישוביםפורסם במקור בפורום CODE613 ב07/06/2017 19:49 (+03:00)
-
בעבר (10 שנים לפחות) דיברתי עם איתן ציקוני לגבי המרת תאריך לעברית + זמנים,
בזמן ההוא הוא אמר לי שמוכן למכור את הקוד ב500 ש"ח בערך. מעניין מה המחיר שלו כיום, כי כיום יש גם לו API.פורסם במקור בפורום CODE613 ב08/06/2017 00:07 (+03:00)
-
אפשר לפנות אליו ולהזמין אותו לכאן.
כמתכנת חרדי, אני מניח שהוא יוכל לתת ולקבל המון.פורסם במקור בפורום CODE613 ב08/06/2017 01:49 (+03:00)
-
אני לא מבין למה אתם מסתבכים יש מחלקה בחינם פה.
https://github.com/hebcal/hebcal-jsפורסם במקור בפורום CODE613 ב08/06/2017 02:01 (+03:00)
-
עד שמישהו עושה מחלקה בשביל זמני היום בעברית, למה הדוקומנטציה לא בעברית???
פורסם במקור בפורום CODE613 ב08/06/2017 09:41 (+03:00)
-
מקרה או שזו התוצאה של הפרוייקט?
ארגון "שתי הלכות ביום" פרסמו היום שניתן למצוא באתר את זמני היום בכל מקום..פורסם במקור בפורום CODE613 ב11/06/2017 16:35 (+03:00)
-
//Credentials: var APIURL = "https://api.myzmanim.com/engine1.json.aspx" var APIUSER = "0007446111" var APIKEY = "bd2bc9a902acf1d1915a84b2496f174f8f2ce928bd0db4e637679326d08f6b154f5e8f83b06dcdce" זה חלק מהקוד שלהם.. הם משתמשים בAPI שהבאת למעלה בתשלום..
ד.א. חשבתי שהעיצוב הטבלאי כבר עבר מהעולם.. אבל אני רואה שהאתר שלהם מעוצב בטבלאות.. :oops:
פורסם במקור בפורום CODE613 ב11/06/2017 17:18 (+03:00)
15/35