19 #ifndef _LN_RISE_SET_H
20 #define _LN_RISE_SET_H
22 #include <libnova/ln_types.h>
24 #define LN_STAR_STANDART_HORIZON -0.5667
49 int LIBNOVA_EXPORT ln_get_object_rst_horizon(
double JD,
struct ln_lnlat_posn *observer,
52 int LIBNOVA_EXPORT ln_get_object_rst_horizon_offset(
double JD,
struct ln_lnlat_posn *observer,
77 int LIBNOVA_EXPORT ln_get_body_rst_horizon_offset(
double JD,
struct ln_lnlat_posn *observer,
void (*get_equ_body_coords)(
double,
struct ln_equ_posn *),
double horizon,
struct ln_rst_time *rst,
double ut_offset);
93 typedef void (*get_motion_body_coords_t)(double,
void * orbit,
struct ln_equ_posn *);
99 int LIBNOVA_EXPORT ln_get_motion_body_rst_horizon(
double JD,
struct ln_lnlat_posn *observer, get_motion_body_coords_t get_motion_body_coords,
void * orbit,
double horizon,
struct ln_rst_time *rst);
101 int LIBNOVA_EXPORT ln_get_motion_body_rst_horizon_offset(
double JD,
struct ln_lnlat_posn *observer, get_motion_body_coords_t get_motion_body_coords,
void * orbit,
double horizon,
struct ln_rst_time *rst,
double offset);
108 int LIBNOVA_EXPORT ln_get_motion_body_next_rst_horizon(
double JD,
struct ln_lnlat_posn *observer, get_motion_body_coords_t get_motion_body_coords,
void * orbit,
double horizon,
struct ln_rst_time *rst);
115 int LIBNOVA_EXPORT ln_get_motion_body_next_rst_horizon_future(
double JD,
struct ln_lnlat_posn *observer, get_motion_body_coords_t get_motion_body_coords,
void * orbit,
double horizon,
int day_limit,
struct ln_rst_time *rst);
int LIBNOVA_EXPORT ln_get_body_next_rst_horizon(double JD, struct ln_lnlat_posn *observer, void(*get_equ_body_coords)(double, struct ln_equ_posn *), double horizon, struct ln_rst_time *rst)
Calculate the time of next rise, set and transit for an object a body, usually Sun, a planet or Moon. E.g. it's sure, that rise, set and transit will be in range.
Definition: rise_set.c:497
int LIBNOVA_EXPORT ln_get_body_next_rst_horizon_future(double JD, struct ln_lnlat_posn *observer, void(*get_equ_body_coords)(double, struct ln_equ_posn *), double horizon, int day_limit, struct ln_rst_time *rst)
Calculate the time of next rise, set and transit for an object a body, usually Sun, a planet or Moon. E.g. it's sure, that rise, set and transit will be in range.
Definition: rise_set.c:528
Equatorial Coordinates.
Definition: ln_types.h:176
int LIBNOVA_EXPORT ln_get_object_next_rst(double JD, struct ln_lnlat_posn *observer, struct ln_equ_posn *object, struct ln_rst_time *rst)
Calculate the time of next rise, set and transit for an object not orbiting the Sun. E.g. it's sure, that rise, set and transit will be in range. This function is not too precise, it's good to get general idea when object will rise.
Definition: rise_set.c:219
int LIBNOVA_EXPORT ln_get_object_next_rst_horizon(double JD, struct ln_lnlat_posn *observer, struct ln_equ_posn *object, double horizon, struct ln_rst_time *rst)
Calculate the time of next rise, set and transit for an object not orbiting the Sun. E.g. it's sure, that rise, set and transit will be in range.
Definition: rise_set.c:265
Ecliptical (or celestial) Longitude and Latitude.
Definition: ln_types.h:204
Rise, Set and Transit times.
Definition: ln_types.h:314
int LIBNOVA_EXPORT ln_get_body_rst_horizon(double JD, struct ln_lnlat_posn *observer, void(*get_equ_body_coords)(double, struct ln_equ_posn *), double horizon, struct ln_rst_time *rst)
Calculate the time of rise, set and transit for an object a body, usually Sun, a planet or Moon...
Definition: rise_set.c:320
int LIBNOVA_EXPORT ln_get_object_rst(double JD, struct ln_lnlat_posn *observer, struct ln_equ_posn *object, struct ln_rst_time *rst)
Calculate the time of rise, set and transit for an object not orbiting the Sun.
Definition: rise_set.c:63