SunCalc - рд╕реВрд░реНрдп рдФрд░ рд╕реМрд░ рдЪрд░рдгреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА

SunCalc

рдПрдХ рд╡рд░реНрд╖ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдЖрдкрдХреЛ рдЕрдкрдиреЗ SunCalc рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ , рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рджрд┐рди рдХреЗ рджреМрд░рд╛рди рдФрд░ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд╕реНрдерд╛рди рдкрд░ рд╕реВрд░реНрдп рдХреЗ рдкреНрд░рдХрд╛рд╢ рдХреЗ рдЪрд░рдгреЛрдВ рдФрд░ рд╕реВрд░рдЬ рдХреА рд░реЛрд╢рдиреА (рд╕реВрд░реНрдпрд╛рд╕реНрдд, рднреЛрд░, рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдзреБрдВрдзрд▓рдХреЗ, рдЖрджрд┐) рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЕрдм рдореИрдВрдиреЗ рдХреЛрдб рдЬрд╛рд░реА рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЬреЛ рд╕реАрдзреЗ рдЗрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдУрдкрди рд╕реЛрд░реНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ GitHub рдкрд░ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рд╕рд╛рде рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ: github.com/mourner/suncalc

рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдмреАрдПрд╕рдПрди рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рдкреНрд░рдХрд╛рд╢рд┐рдд рдЦрдЧреЛрд▓ рд╡рд┐рдЬреНрдЮрд╛рди рдЙрддреНрддрд░ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╕реВрд░реНрдп рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдПрдХ рд▓реЗрдЦ рд╕реЗ рд╕реВрддреНрд░реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, ~ 1.5 рдХреЗрдмреА, рдЬреЗрдПрд╕рдПрд▓рдЖрдИрдПрдирдЯреА рдорд╛рдирдХреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рди рдХреЗрд╡рд▓ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдХреНрд╖реЗрддреНрд░реАрдп рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ, рдЬреИрд╕реЗ рдХрд┐ рдиреЛрдб.рдЬреЗ.

рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЙрдкрдпреЛрдЧ рдЙрджрд╛рд╣рд░рдг


рд▓рдВрджрди рдореЗрдВ рдЖрдЬ рдХреЗ рд▓рд┐рдП рд╕реМрд░ рдЪрд░рдгреЛрдВ рдХреЗ рд╕рдордп рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд╕реНрддреБ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
var times = SunCalc.getTimes( new Date(), 51.5, -0.1); // (, , )

рдкреНрд░рд╛рдкреНрдд рд╕рдордп рд╕реБрдмрд╣ рджрд┐рдЦрд╛рдПрдБ:
alert( " : " + times.sunrise.getHours() + ':' + times.sunrise.getMinutes());

рднреЛрд░ рдХреЗ рджреМрд░рд╛рди рд╕реВрд░реНрдп рдХреА рд╕реНрдерд┐рддрд┐ (azimuth рдФрд░ рдКрдВрдЪрд╛рдИ) рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
var sunrisePos = SunCalc.getSunPosition(times.sunrise, 51.5, -0.1); // (, , )

рдбрд┐рдЧреНрд░реА рдореЗрдВ рднреЛрд░ рдХрд╛ рдЕрдЬрд╝реАрдорде рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ:
alert( " : " + (sunrisePos.azimuth * SunCalc.rad2deg).toFixed(2));

рд╡рд╛рдкрд╕реА рдХреЗ рд╕рдордп

рдЗрди рд╕реМрд░ рдЪрд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдкрд░ рдЧреЛрдзреВрд▓рд┐ рдХреЗ рд▓реЗрдЦ рдореЗрдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред

рдЖрдк рд╕реНрд╡рдпрдВ рднреА рдЪрд░рдг рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
SunCalc.addTime(20, "runAwayFromBeach", "goToBeach");
рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреЛрдб рдХреЛ SunCalc.getTimes runAwayFromBeach рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ (рд╡рд╣ рдХреНрд╖рдг рдЬрдм рд╕реВрд░рдЬ 20 ┬░ рд╕реЗ рдКрдкрд░ рдЙрдЧрддрд╛ рд╣реИ) рдФрд░ goToBeach (рдЬрдм рд╕реВрд░рдЬ 20 ┬░ рд╕реЗ рдиреАрдЪреЗ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ)ред

рд╕рдВрднрд╡ рдЕрдиреБрдкреНрд░рдпреЛрдЧ


рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдпрд╛рддреНрд░рд╛ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдлреЛрдЯреЛрдЧреНрд░рд╛рдлрд░реЛрдВ рдФрд░ рдкрд╕рдВрдж рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдЯреЗрдВ рдЖрддреА рд╣реИрдВред рд▓реЗрдХрд┐рди рдЖрдк рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджрд┐рди рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╛рдЗрдЯ рдкрд░ рдПрдХ рдбрд┐рдЬрд╛рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиред рдпрд╛ рдЕрдЪрд▓ рд╕рдВрдкрддреНрддрд┐ рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдкреВрд░реЗ рд╡рд░реНрд╖ рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреЛрдг рд╕реЗ рдкреНрд░рдХрд╛рд╢ рдЧреНрд░рд╛рдл рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВред рдореБрдЭреЗ рдпрд╛рдж рд╣реИ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдореБрдЭреЗ рдПрдХ рдмрд╛рд░ рдХреБрдЫ рдПрдпрд░ рдХрдВрдбреАрд╢рдирд┐рдВрдЧ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХрдВрдкрдиреА рдХреЗ рдЖрднрд╛рд░ рдХреЗ рд╕рд╛рде рднреА рд▓рд┐рдЦрд╛ рдерд╛, рдЬрд┐рдирдХреЗ рдХрд░реНрдордЪрд╛рд░реА рдЕрдм рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рдХрд╛рдо рдореЗрдВ SunCalc рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ ... рдФрд░ рдПрдХ рдЗрд╕реНрд▓рд╛рдорд╡рд╛рджреА рд╕рдорд╛рдЬ рдХрд╛ рдПрдХ рдкрддреНрд░ рднреА рдерд╛, рдЬрд┐рд╕рдореЗрдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рдкреНрд░рд╛рд░реНрдердирд╛ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╕рдордп рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреАред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рддреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИрдВ!

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕ рдЫреЛрдЯреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдпреЛрдЧреА рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдорд┐рд▓реЗрдЧрд╛ред рдореБрдЭреЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред рдзрдиреНрдпрд╡рд╛рдж!

рдЕрджреНрдпрддрди : GoldenHour, GoldenHourEnd рдмрд╛рд░ рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдордп (рд╕реВрд░реНрдп рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдКрдВрдЪрд╛рдИ рдХреЗ рдЕрдиреБрд░реВрдк) рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ред

рдЕрдкрдбреЗрдЯ 2 : рдордзреНрдп рд╕реЗ рдЕрдзрд┐рдХ рдЧрдВрднреАрд░ рдХрд╛рд░реНрдпреЛрдВ (рдЪрдВрджреНрд░рдорд╛, рдЧреНрд░рд╣реЛрдВ, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдЧрдгрдирд╛) рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк - github.com/monoid/starjs

Source: https://habr.com/ru/post/In127101/


All Articles