#include <gps_conversion.h>
Public Member Functions | |
GpsConversion () | |
Private Types | |
typedef message_filters::sync_policies::ApproximateTime < sensor_msgs::NavSatFix, asctec_hl_comm::mav_imu > | GpsImuSyncPolicy |
Private Member Functions | |
Eigen::Vector3d | ecefToEnu (const Eigen::Vector3d &ecef) |
void | gpsCallback (const sensor_msgs::NavSatFixConstPtr &gps) |
void | gpsCustomCallback (const asctec_hl_comm::GpsCustomConstPtr &gps) |
void | imuCallback (const asctec_hl_comm::mav_imuConstPtr &imu) |
void | initReference (const double &latitude, const double &longitude, const double &altitude) |
void | syncCallback (const sensor_msgs::NavSatFixConstPtr &gps, const asctec_hl_comm::mav_imuConstPtr &imu) |
Eigen::Vector3d | wgs84ToEcef (const double &latitude, const double &longitude, const double &altitude) |
geometry_msgs::Point | wgs84ToEnu (const double &latitude, const double &longitude, const double &altitude) |
geometry_msgs::Point | wgs84ToNwu (const double &latitude, const double &longitude, const double &altitude) |
bool | zeroHeightCb (std_srvs::EmptyRequest &req, std_srvs::EmptyResponse &resp) |
Private Attributes | |
Eigen::Quaterniond | ecef_ref_orientation_ |
Eigen::Vector3d | ecef_ref_point_ |
ros::Publisher | gps_custom_pub_ |
ros::Subscriber | gps_custom_sub_ |
message_filters::Synchronizer < GpsImuSyncPolicy > | gps_imu_sync_ |
ros::Publisher | gps_pose_pub_ |
geometry_msgs::Point | gps_position_ |
ros::Publisher | gps_position_pub_ |
ros::Subscriber | gps_sub_ |
message_filters::Subscriber < sensor_msgs::NavSatFix > | gps_sub_sync_ |
bool | have_reference_ |
double | height_offset_ |
ros::Subscriber | imu_sub_ |
message_filters::Subscriber < asctec_hl_comm::mav_imu > | imu_sub_sync_ |
ros::NodeHandle | nh_ |
const Eigen::Quaterniond | Q_90_DEG |
double | ref_altitude_ |
double | ref_latitude_ |
double | ref_longitude_ |
bool | set_height_zero_ |
bool | use_pressure_height_ |
ros::ServiceServer | zero_height_srv_ |
Static Private Attributes | |
static const double | DEG2RAD = M_PI/180.0 |
Definition at line 28 of file gps_conversion.h.
typedef message_filters::sync_policies::ApproximateTime<sensor_msgs::NavSatFix, asctec_hl_comm::mav_imu> asctec_hl_gps::GpsConversion::GpsImuSyncPolicy [private] |
Definition at line 30 of file gps_conversion.h.
Definition at line 43 of file gps_conversion.cpp.
Eigen::Vector3d asctec_hl_gps::GpsConversion::ecefToEnu | ( | const Eigen::Vector3d & | ecef | ) | [private] |
Definition at line 262 of file gps_conversion.cpp.
void asctec_hl_gps::GpsConversion::gpsCallback | ( | const sensor_msgs::NavSatFixConstPtr & | gps | ) | [private] |
Definition at line 120 of file gps_conversion.cpp.
void asctec_hl_gps::GpsConversion::gpsCustomCallback | ( | const asctec_hl_comm::GpsCustomConstPtr & | gps | ) | [private] |
Definition at line 146 of file gps_conversion.cpp.
void asctec_hl_gps::GpsConversion::imuCallback | ( | const asctec_hl_comm::mav_imuConstPtr & | imu | ) | [private] |
Definition at line 178 of file gps_conversion.cpp.
void asctec_hl_gps::GpsConversion::initReference | ( | const double & | latitude, |
const double & | longitude, | ||
const double & | altitude | ||
) | [private] |
Definition at line 218 of file gps_conversion.cpp.
void asctec_hl_gps::GpsConversion::syncCallback | ( | const sensor_msgs::NavSatFixConstPtr & | gps, |
const asctec_hl_comm::mav_imuConstPtr & | imu | ||
) | [private] |
Definition at line 88 of file gps_conversion.cpp.
Eigen::Vector3d asctec_hl_gps::GpsConversion::wgs84ToEcef | ( | const double & | latitude, |
const double & | longitude, | ||
const double & | altitude | ||
) | [private] |
Definition at line 242 of file gps_conversion.cpp.
geometry_msgs::Point asctec_hl_gps::GpsConversion::wgs84ToEnu | ( | const double & | latitude, |
const double & | longitude, | ||
const double & | altitude | ||
) | [private] |
Definition at line 267 of file gps_conversion.cpp.
geometry_msgs::Point asctec_hl_gps::GpsConversion::wgs84ToNwu | ( | const double & | latitude, |
const double & | longitude, | ||
const double & | altitude | ||
) | [private] |
Definition at line 285 of file gps_conversion.cpp.
bool asctec_hl_gps::GpsConversion::zeroHeightCb | ( | std_srvs::EmptyRequest & | req, |
std_srvs::EmptyResponse & | resp | ||
) | [private] |
Definition at line 82 of file gps_conversion.cpp.
const double asctec_hl_gps::GpsConversion::DEG2RAD = M_PI/180.0 [static, private] |
Definition at line 59 of file gps_conversion.h.
Eigen::Quaterniond asctec_hl_gps::GpsConversion::ecef_ref_orientation_ [private] |
Definition at line 52 of file gps_conversion.h.
Eigen::Vector3d asctec_hl_gps::GpsConversion::ecef_ref_point_ [private] |
Definition at line 51 of file gps_conversion.h.
Definition at line 35 of file gps_conversion.h.
Definition at line 43 of file gps_conversion.h.
message_filters::Synchronizer<GpsImuSyncPolicy> asctec_hl_gps::GpsConversion::gps_imu_sync_ [private] |
Definition at line 40 of file gps_conversion.h.
Definition at line 33 of file gps_conversion.h.
Definition at line 45 of file gps_conversion.h.
Definition at line 34 of file gps_conversion.h.
Definition at line 42 of file gps_conversion.h.
message_filters::Subscriber<sensor_msgs::NavSatFix> asctec_hl_gps::GpsConversion::gps_sub_sync_ [private] |
Definition at line 38 of file gps_conversion.h.
bool asctec_hl_gps::GpsConversion::have_reference_ [private] |
Definition at line 47 of file gps_conversion.h.
double asctec_hl_gps::GpsConversion::height_offset_ [private] |
Definition at line 54 of file gps_conversion.h.
Definition at line 44 of file gps_conversion.h.
message_filters::Subscriber<asctec_hl_comm::mav_imu> asctec_hl_gps::GpsConversion::imu_sub_sync_ [private] |
Definition at line 39 of file gps_conversion.h.
Definition at line 32 of file gps_conversion.h.
const Eigen::Quaterniond asctec_hl_gps::GpsConversion::Q_90_DEG [private] |
Definition at line 60 of file gps_conversion.h.
double asctec_hl_gps::GpsConversion::ref_altitude_ [private] |
Definition at line 50 of file gps_conversion.h.
double asctec_hl_gps::GpsConversion::ref_latitude_ [private] |
Definition at line 48 of file gps_conversion.h.
double asctec_hl_gps::GpsConversion::ref_longitude_ [private] |
Definition at line 49 of file gps_conversion.h.
bool asctec_hl_gps::GpsConversion::set_height_zero_ [private] |
Definition at line 55 of file gps_conversion.h.
bool asctec_hl_gps::GpsConversion::use_pressure_height_ [private] |
Definition at line 57 of file gps_conversion.h.
Definition at line 36 of file gps_conversion.h.