Spacecraft Control Framework 1.0
Spacecraft Control Library
|
Near matrix class. More...
#include <sc_star_catalog.h>
Public Member Functions | |
near_matrix () | |
Default constructor. More... | |
near_matrix (star_catalog catalog, double field_of_view) | |
Create a near matrix from the star catalog. More... | |
near_matrix (ml_int_array ids, ml_matrix u_star, double field_of_view) | |
Create a near matrix from the star unit vectors. More... | |
vector< StarDot > | get_angle_range (double angle, double tol) |
Use the k-vector to extract a subset of the stored dot products. More... | |
vector< StarDot > | get_nearby_stars (int star_id) |
Retrieve dot products stored for a specific star. More... | |
int | size () |
Near matrix class.
This is a collection of star dot products defined for a given star catalog and camera field of view. This implementation stores a k-vector which allows lookup of dot products within a range of angles without performing a search.
near_matrix::near_matrix | ( | ) |
Default constructor.
Clear the list of dot products.
near_matrix::near_matrix | ( | star_catalog | catalog, |
double | field_of_view | ||
) |
Create a near matrix from the star catalog.
catalog | A star catalog |
field_of_view | The field of view of the camera, in radians. This is the total field of view, not the half-angle. |
References star::UnitVector().
near_matrix::near_matrix | ( | ml_int_array | ids, |
ml_matrix | u_star, | ||
double | field_of_view | ||
) |
Create a near matrix from the star unit vectors.
This stored a vector of StarDot objects sorted by star angle.
ids | Array of star IDs, to be stored with the angles |
u_star | Star unit vectors from the catalog |
field_of_view | The field of view of the camera, in radians. This is the total field of view, not the half-angle. If the field of view is square or rectangular this should be the length of the diagonal. |
vector< StarDot > near_matrix::get_angle_range | ( | double | angle, |
double | tol | ||
) |
Use the k-vector to extract a subset of the stored dot products.
angle | The star angle of interest |
tol | A tolerance for specifying a range around the angle, +/- tol |
Referenced by star_meas::Pyramid().
vector< StarDot > near_matrix::get_nearby_stars | ( | int | star_id | ) |
Retrieve dot products stored for a specific star.
star_id | ID of star |