23 void setReference(
const double& referenceLatitude,
const double& referenceLongitude,
const double& referenceAltitude,
24 const double& referenceHeading);
29 Eigen::Vector3d
gnssToCartesian(
const double& latitudeInDegrees,
const double& longitudeInDegrees,
const double& altitude);
30 Eigen::Vector3d
cartesianToGps(
const Eigen::Matrix<double, 3, 1> position)
const;
31 Eigen::Vector3d
besselEllipsoidToMercator(
const double& latitudeInRad,
const double& longitudeInRad,
const double& altitude);
33 Eigen::Vector3d
gnssToLv03Raw(
const double latitude_in_degrees,
const double longitude_in_degrees,
const double altitude);
34 Eigen::Vector3d
gnssToLv03(
const double latitude_in_degrees,
const double longitude_in_degrees,
const double altitude);
35 double wGStoCHx(
double lat,
double lng);
36 double wGStoCHy(
double lat,
double lng);
77 const double a_ = 6377397.155;
79 const double e2_ = 0.006674372230614;
81 const double phi0_ = 46.95241 * M_PI / 180.0;
83 const double lambda0_ = 7.43958 * M_PI / 180.0;
91 const double k_ = log(tan(M_PI_4 +
b0_ / 2.0)) -
alpha_ * log(tan(M_PI_4 +
phi0_ / 2.0)) +
double wGStoCHy(double lat, double lng)
double referenceLatitude_
Reference latitude of the GPS measurements [deg].
Eigen::Vector3d besselEllipsoidToMercator(const double &latitudeInRad, const double &longitudeInRad, const double &altitude)
double sexAngleToSeconds(double dms)
Eigen::Vector3d referencePointLv03_
double getReferenceHeading() const
double referenceAltitude_
Reference altitude of the GPS measurements [m].
void setMercatorReferenceFrame(const Eigen::Vector3d newReferencePoint)
Eigen::Vector3d xyzOffset_
const double excentricity2_
double getReferenceLatitude() const
double referenceLongitude_
Reference longitude of the GPS measurements [deg].
Eigen::Vector3d gnssToLv03(const double latitude_in_degrees, const double longitude_in_degrees, const double altitude)
void setReference(const double &referenceLatitude, const double &referenceLongitude, const double &referenceAltitude, const double &referenceHeading)
double referenceHeading_
Reference heading for the GPS measurements [rad].
double getReferenceLongitude() const
Eigen::Vector3d cartesianToGps(const Eigen::Matrix< double, 3, 1 > position) const
double wGStoCHx(double lat, double lng)
double getReferenceAltitude() const
Eigen::Vector3d gnssToCartesian(const double &latitudeInDegrees, const double &longitudeInDegrees, const double &altitude)
void calculateConversionParameters()
Eigen::Vector3d gnssToLv03Raw(const double latitude_in_degrees, const double longitude_in_degrees, const double altitude)
double decToSexAngle(double dec)
const double equatorialRadius_