From 7b281eae5e0435fbdb2e08bd4f5085aab2d3dde2 Mon Sep 17 00:00:00 2001 From: Karel Hevessy Date: Fri, 23 Aug 2024 10:05:55 +0200 Subject: [PATCH] Fix my bugs in riebl#233 --- tools/socktap/cam_application.cpp | 2 +- vanetza/facilities/cam_functions.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/socktap/cam_application.cpp b/tools/socktap/cam_application.cpp index a221b8a8e..4b27cc2e1 100644 --- a/tools/socktap/cam_application.cpp +++ b/tools/socktap/cam_application.cpp @@ -79,7 +79,7 @@ void CamApplication::on_timer(Clock::time_point) auto position = positioning_.position_fix(); - if (!std::isfinite(position.latitude.value()) || !std::isfinite(position.latitude.value())) { + if (!std::isfinite(position.latitude.value()) || !std::isfinite(position.longitude.value())) { std::cerr << "Skipping CAM, because no good position is available, yet." << std::endl; return; } diff --git a/vanetza/facilities/cam_functions.cpp b/vanetza/facilities/cam_functions.cpp index 22b539ce0..b1bd0ef3a 100644 --- a/vanetza/facilities/cam_functions.cpp +++ b/vanetza/facilities/cam_functions.cpp @@ -151,10 +151,10 @@ void copy(const PositionFix& position, ReferencePosition& reference_position) { reference_position.longitude = round(position.longitude, microdegree) * Longitude_oneMicrodegreeEast; reference_position.latitude = round(position.latitude, microdegree) * Latitude_oneMicrodegreeNorth; if (std::isfinite(position.confidence.semi_major.value()) - && std::isfinite(position.confidence.semi_major.value())) + && std::isfinite(position.confidence.semi_minor.value())) { if ((position.confidence.semi_major.value() * 100 < SemiAxisLength_outOfRange) - && (position.confidence.semi_major.value() * 100 < SemiAxisLength_outOfRange) + && (position.confidence.semi_minor.value() * 100 < SemiAxisLength_outOfRange) && (position.confidence.orientation.value() * 10 < HeadingValue_unavailable)) { reference_position.positionConfidenceEllipse.semiMajorConfidence = position.confidence.semi_major.value() * 100; // Value in centimeters