From e072d03aff366b64a2c699e9df22cca745b775b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joan=20Vallv=C3=A9=20Navarro?= <jvallve@iri.upc.edu> Date: Tue, 18 Jan 2022 20:15:24 +0100 Subject: [PATCH] fixing rare clashes --- src/publisher_graph.cpp | 8 ++++++-- src/publisher_pose.cpp | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/publisher_graph.cpp b/src/publisher_graph.cpp index 2eeb823..2c9373f 100644 --- a/src/publisher_graph.cpp +++ b/src/publisher_graph.cpp @@ -316,12 +316,12 @@ void PublisherGraph::publishFactors() // Iterate over the list of factors for (auto fac : fac_list) { - std::string fac_str = factorString(fac); - // Try to fill marker if (not fillFactorMarker(fac, factor_marker, factor_text_marker)) continue; + std::string fac_str = factorString(fac); + // markers id factor_marker.id = fac->id(); factor_text_marker.id = fac->id(); @@ -740,6 +740,10 @@ bool PublisherGraph::fillFrameMarker(FrameBaseConstPtr frm, std::string PublisherGraph::factorString(FactorBaseConstPtr fac) const { std::string factor_string; + + if (not fac or not fac->getCapture() or not fac->getCapture()->getFrame()) + return "invalid factor" + std::to_string(fac->id()); + factor_string = "F" + std::to_string(fac->getCapture()->getFrame()->id()); // FRAME diff --git a/src/publisher_pose.cpp b/src/publisher_pose.cpp index aec2e21..d1ba471 100644 --- a/src/publisher_pose.cpp +++ b/src/publisher_pose.cpp @@ -47,7 +47,7 @@ PublisherPose::PublisherPose(const std::string& _unique_name, max_points_ = getParamWithDefault<int>(_server, prefix_ + "/max_points", - 1e3); + 1e4); line_size_ = getParamWithDefault<double>(_server, prefix_ + "/line_size", 0.1); -- GitLab