From 2728baf8a5b3b31c2d3194eeaec7ee32700f6ce2 Mon Sep 17 00:00:00 2001 From: Vincent Winter Date: Wed, 26 Nov 2025 15:20:38 +0100 Subject: [PATCH] fix(rename): Rename left over axis variables to object variables --- .../nodes/imu_data_simulator.cpp | 12 +++---- .../nodes/wheel_data_simulator.cpp | 11 +++--- .../src/simulator/Simulator.cpp | 35 +++++++++---------- .../src/simulator/Simulator.hpp | 8 ++--- 4 files changed, 31 insertions(+), 35 deletions(-) diff --git a/src/g2_2025_odometry_pkg/src/g2_2025_imu_data_simulator_node/nodes/imu_data_simulator.cpp b/src/g2_2025_odometry_pkg/src/g2_2025_imu_data_simulator_node/nodes/imu_data_simulator.cpp index 7a9976e..87b5739 100644 --- a/src/g2_2025_odometry_pkg/src/g2_2025_imu_data_simulator_node/nodes/imu_data_simulator.cpp +++ b/src/g2_2025_odometry_pkg/src/g2_2025_imu_data_simulator_node/nodes/imu_data_simulator.cpp @@ -42,12 +42,12 @@ void DataSimulator::publish_imu_data() { double elapsed_time = (this->now() - start_time_).seconds(); // Get values for each axis - imu_msg->linear_acceleration.x = simulator_->get_axis_value("linear_x", elapsed_time); - imu_msg->linear_acceleration.y = simulator_->get_axis_value("linear_y", elapsed_time); - imu_msg->linear_acceleration.z = simulator_->get_axis_value("linear_z", elapsed_time); - imu_msg->angular_velocity.x = simulator_->get_axis_value("angular_x", elapsed_time); - imu_msg->angular_velocity.y = simulator_->get_axis_value("angular_y", elapsed_time); - imu_msg->angular_velocity.z = simulator_->get_axis_value("angular_z", elapsed_time); + imu_msg->linear_acceleration.x = simulator_->get_object_value("linear_x", elapsed_time); + imu_msg->linear_acceleration.y = simulator_->get_object_value("linear_y", elapsed_time); + imu_msg->linear_acceleration.z = simulator_->get_object_value("linear_z", elapsed_time); + imu_msg->angular_velocity.x = simulator_->get_object_value("angular_x", elapsed_time); + imu_msg->angular_velocity.y = simulator_->get_object_value("angular_y", elapsed_time); + imu_msg->angular_velocity.z = simulator_->get_object_value("angular_z", elapsed_time); RCLCPP_INFO(this->get_logger(), "t=%.2fs - Accel: [%.3f, %.3f, %.3f], Gyro: [%.3f, %.3f, %.3f]", diff --git a/src/g2_2025_odometry_pkg/src/g2_2025_wheel_data_simulator_node/nodes/wheel_data_simulator.cpp b/src/g2_2025_odometry_pkg/src/g2_2025_wheel_data_simulator_node/nodes/wheel_data_simulator.cpp index 80f6c6f..1176a0d 100644 --- a/src/g2_2025_odometry_pkg/src/g2_2025_wheel_data_simulator_node/nodes/wheel_data_simulator.cpp +++ b/src/g2_2025_odometry_pkg/src/g2_2025_wheel_data_simulator_node/nodes/wheel_data_simulator.cpp @@ -35,18 +35,15 @@ DataSimulator::~DataSimulator() { void DataSimulator::publish_wheel_data() { auto wheel_msg = std::make_shared(); - // wheel_msg->header.stamp = this->now(); - // wheel_msg->header.frame_id = "wheel_link"; - // Calculate elapsed time since node start double elapsed_time = (this->now() - start_time_).seconds(); // For now, just log wheel values (adjust based on your actual message type) wheel_msg->data = { - simulator_->get_axis_value("wheel_fl", elapsed_time), - simulator_->get_axis_value("wheel_fr", elapsed_time), - simulator_->get_axis_value("wheel_rl", elapsed_time), - simulator_->get_axis_value("wheel_rr", elapsed_time) + simulator_->get_object_value("wheel_fl", elapsed_time), + simulator_->get_object_value("wheel_fr", elapsed_time), + simulator_->get_object_value("wheel_rl", elapsed_time), + simulator_->get_object_value("wheel_rr", elapsed_time) }; RCLCPP_INFO(this->get_logger(), diff --git a/src/g2_2025_odometry_pkg/src/simulator/Simulator.cpp b/src/g2_2025_odometry_pkg/src/simulator/Simulator.cpp index dcc8470..e0cb883 100644 --- a/src/g2_2025_odometry_pkg/src/simulator/Simulator.cpp +++ b/src/g2_2025_odometry_pkg/src/simulator/Simulator.cpp @@ -4,27 +4,26 @@ namespace assignments::three { -Simulator::Simulator(rclcpp::Node* node, const std::vector& axes) { - load_intervals(node, axes); +Simulator::Simulator(rclcpp::Node* node, const std::vector& objects) { + load_intervals(node, objects); } Simulator::~Simulator() { } -void Simulator::load_intervals(rclcpp::Node* node, const std::vector& axes) { +void Simulator::load_intervals(rclcpp::Node* node, const std::vector& objects) { node->declare_parameter("max_intervals", 4); max_intervals_ = node->get_parameter("max_intervals").as_int(); - for (const auto& axis : axes) { - node->declare_parameter(axis + ".num_intervals", 0); - int num_intervals = node->get_parameter(axis + ".num_intervals").as_int(); - - RCLCPP_INFO(node->get_logger(), "Loading %d intervals for axis '%s'", num_intervals, axis.c_str()); + for (const auto& object : objects) { + node->declare_parameter(object + ".num_intervals", 0); + int num_intervals = node->get_parameter(object + ".num_intervals").as_int(); + RCLCPP_INFO(node->get_logger(), "Loading %d intervals for object '%s'", num_intervals, object.c_str()); std::vector intervals; for (int i = 0; i < std::min(num_intervals, max_intervals_); i++) { - std::string prefix = axis + ".interval_" + std::to_string(i); + std::string prefix = object + ".interval_" + std::to_string(i); node->declare_parameter(prefix + ".type", "constant"); node->declare_parameter(prefix + ".t_start", 0.0); @@ -61,13 +60,13 @@ void Simulator::load_intervals(rclcpp::Node* node, const std::vectorget_logger(), - "Axis '%s' Interval %zu: type='%s', t_start=%.6f, t_end=%.6f, y_start=%.6f, y_end=%.6f, t_mid=%.6f, y_mid=%.6f", - axis.c_str(), j, type_str, + "Object '%s' Interval %zu: type='%s', t_start=%.6f, t_end=%.6f, y_start=%.6f, y_end=%.6f, t_mid=%.6f, y_mid=%.6f", + object.c_str(), j, type_str, cfg.t_start, cfg.t_end, cfg.y_start, cfg.y_end, cfg.t_mid, cfg.y_mid ); } - axis_intervals_[axis] = intervals; + object_intervals_[object] = intervals; } } @@ -115,14 +114,14 @@ double Simulator::compute_value(double t, const IntervalConfig& interval) { return 0.0; } -double Simulator::get_axis_value(const std::string& axis, double t) { - // Check if axis exists in configuration - auto it = axis_intervals_.find(axis); - if (it == axis_intervals_.end()) { - return 0.0; // Default value if axis not configured +double Simulator::get_object_value(const std::string& object, double t) { + // Check if object exists in configuration + auto it = object_intervals_.find(object); + if (it == object_intervals_.end()) { + return 0.0; // Default value if object not configured } - // Check each interval for this axis + // Check each interval for this object double last_value = 0.0; for (const auto& interval : it->second) { if (t >= interval.t_start && t <= interval.t_end) { diff --git a/src/g2_2025_odometry_pkg/src/simulator/Simulator.hpp b/src/g2_2025_odometry_pkg/src/simulator/Simulator.hpp index fd56c7b..f0a48c5 100644 --- a/src/g2_2025_odometry_pkg/src/simulator/Simulator.hpp +++ b/src/g2_2025_odometry_pkg/src/simulator/Simulator.hpp @@ -25,18 +25,18 @@ struct IntervalConfig { class Simulator { public: - Simulator(rclcpp::Node* node, const std::vector& axes); + Simulator(rclcpp::Node* node, const std::vector& objects); ~Simulator(); - double get_axis_value(const std::string& axis, double t); + double get_object_value(const std::string& object, double t); private: int max_intervals_; - void load_intervals(rclcpp::Node* node, const std::vector& axes); + void load_intervals(rclcpp::Node* node, const std::vector& objects); double compute_value(double t, const IntervalConfig& interval); - std::map> axis_intervals_; + std::map> object_intervals_; }; } // namespace assignments::three