aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libsurvive/survive_reproject.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/include/libsurvive/survive_reproject.h b/include/libsurvive/survive_reproject.h
index 08d1e96..961db2a 100644
--- a/include/libsurvive/survive_reproject.h
+++ b/include/libsurvive/survive_reproject.h
@@ -27,15 +27,23 @@ void survive_calibration_options_config_apply(
const survive_calibration_config *survive_calibration_default_config();
size_t survive_calibration_config_max_idx();
+
survive_calibration_config survive_calibration_config_create_from_idx(size_t v);
-size_t
-survive_calibration_config_index(const survive_calibration_config *config);
+
+size_t survive_calibration_config_index(const survive_calibration_config *config);
void survive_reproject(const SurviveContext *ctx, int lighthouse, FLT *point3d,
FLT *out);
void survive_reproject_from_pose(const SurviveContext *ctx, int lighthouse,
const SurvivePose *pose, FLT *point3d,
FLT *out);
+
+// This is given a lighthouse -- in the same system as stored in BaseStationData, and
+// a 3d point and finds what the effective 'angle' value for a given lighthouse syste
+// would be.
+// While this is typically opposite of what we want to do -- we want to find the 3d
+// position from a 2D coordinate, this is helpful since the minimization of reprojection
+// error is a core mechanism to many types of solvers.
void survive_reproject_from_pose_with_config(
const SurviveContext *ctx, const survive_calibration_config *config,
int lighthouse, const SurvivePose *pose, const FLT *point3d, FLT *out);