Fix rounding issue in query coordinates by using toFixed
that internally uses boost::numeric_cast<std::int32_t> instead of static_cast<std::int32_t>
This commit is contained in:
parent
3881ead8e5
commit
543e4fb57d
@ -111,15 +111,15 @@ struct BaseParametersGrammar : boost::spirit::qi::grammar<Iterator, Signature>
|
|||||||
qi::_1,
|
qi::_1,
|
||||||
qi::_2)];
|
qi::_2)];
|
||||||
|
|
||||||
location_rule = (double_ > qi::lit(',') >
|
location_rule =
|
||||||
double_)[qi::_val = ph::bind(
|
(double_ > qi::lit(',') >
|
||||||
[](double lon, double lat) {
|
double_)[qi::_val = ph::bind(
|
||||||
return util::Coordinate(
|
[](double lon, double lat) {
|
||||||
util::FixedLongitude(lon * COORDINATE_PRECISION),
|
return util::Coordinate(util::toFixed(util::FloatLongitude(lon)),
|
||||||
util::FixedLatitude(lat * COORDINATE_PRECISION));
|
util::toFixed(util::FloatLatitude(lat)));
|
||||||
},
|
},
|
||||||
qi::_1,
|
qi::_1,
|
||||||
qi::_2)];
|
qi::_2)];
|
||||||
|
|
||||||
polyline_rule = qi::as_string[qi::lit("polyline(") > +polyline_chars > ')']
|
polyline_rule = qi::as_string[qi::lit("polyline(") > +polyline_chars > ')']
|
||||||
[qi::_val = ph::bind(
|
[qi::_val = ph::bind(
|
||||||
|
Loading…
Reference in New Issue
Block a user