47 std::string
name()
const override {
return star_.
name(); }
56 return rad.to<qtty::Degree>();
60 qtty::Degree threshold,
66 qtty::Degree threshold,
72 qtty::Degree threshold,
90 std::vector<AzimuthCrossingEvent>
Altitude computations for Sun, Moon, stars, and arbitrary ICRS directions.
Azimuth computations for Sun, Moon, stars, and arbitrary ICRS directions.
RAII Star handle, Planet value type, and catalog helpers.
Target implementation wrapping a const Star&.
std::vector< CrossingEvent > crossings(const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
Find threshold-crossing events (rising / setting).
std::vector< AzimuthCrossingEvent > azimuth_crossings(const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree bearing, const SearchOptions &opts={}) const override
Find epochs when the object crosses a given azimuth bearing.
std::vector< CulminationEvent > culminations(const Geodetic &obs, const Period< TT, MJD > &window, const SearchOptions &opts={}) const override
Find culmination (local altitude extremum) events.
std::vector< Period< TT, MJD > > below_threshold(const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
Find periods when the object is below a threshold altitude.
qtty::Degree altitude_at(const Geodetic &obs, const Time< TT, MJD > &mjd) const override
Compute altitude (degrees) at a given Time<TT, MJD> instant.
qtty::Degree azimuth_at(const Geodetic &obs, const Time< TT, MJD > &mjd) const override
Compute azimuth (degrees, N-clockwise) at a given Time<TT, MJD> instant.
std::string name() const override
Returns the star's catalog name (delegates to Star::name()).
std::vector< Period< TT, MJD > > above_threshold(const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
Find periods when the object is above a threshold altitude.
StarTarget(const Star &star)
Wrap a Star reference as a Target.
const Star & star() const
Access the underlying Star reference.
RAII handle to a Star (opaque Rust object).
Abstract base for any celestial object that can be tracked from an observer location.
std::vector< AzimuthCrossingEvent > azimuth_crossings(const Star &s, const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree bearing, const SearchOptions &opts={})
Find epochs when a star crosses a given azimuth bearing.
std::vector< CulminationEvent > culminations(const Star &s, const Geodetic &obs, const Period< TT, MJD > &window, const SearchOptions &opts={})
Find culmination events for a star.
qtty::Radian altitude_at(const Star &s, const Geodetic &obs, const Time< TT, MJD > &mjd)
Compute a star's altitude (radians) at a given Time<TT, MJD> instant.
std::vector< Period< TT, MJD > > below_threshold(const Star &s, const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={})
Find periods when a star is below a threshold altitude.
std::vector< Period< TT, MJD > > above_threshold(const Star &s, const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={})
Find periods when a star is above a threshold altitude.
qtty::Degree azimuth_at(const Star &s, const Geodetic &obs, const Time< TT, MJD > &mjd)
Compute a star's azimuth (degrees, N-clockwise) at a given Time<TT, MJD> instant.
std::vector< CrossingEvent > crossings(const Star &s, const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={})
Find threshold-crossing events for a star.
tempoch::EncodedTime< Scale, Format > Time
tempoch::Period< Time< Scale, Format > > Period
Geodetic position (WGS84 ellipsoid).
Options for altitude search algorithms.
Abstract base class for all celestial targets.