mirror of
https://codeberg.org/comaps/comaps
synced 2026-01-06 04:24:29 +00:00
[map] Save points altitudes when saving route as a track (#10759)
[map] Save points altitudes when saving route as a track Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
This commit is contained in:
committed by
Konstantin Pastbin
parent
21cc2bbf52
commit
cc6958282b
@@ -1297,7 +1297,7 @@ Java_app_organicmaps_Framework_nativeGetRouteFollowingInfo(JNIEnv * env, jclass)
|
||||
JNIEXPORT jobjectArray JNICALL
|
||||
Java_app_organicmaps_Framework_nativeGetRouteJunctionPoints(JNIEnv * env, jclass)
|
||||
{
|
||||
vector<m2::PointD> junctionPoints;
|
||||
vector<geometry::PointWithAltitude> junctionPoints;
|
||||
if (!frm()->GetRoutingManager().RoutingSession().GetRouteJunctionPoints(junctionPoints))
|
||||
{
|
||||
LOG(LWARNING, ("Can't get the route junction points"));
|
||||
|
||||
@@ -2,19 +2,20 @@
|
||||
|
||||
#include "app/organicmaps/core/jni_helper.hpp"
|
||||
|
||||
#include "geometry/point2d.hpp"
|
||||
#include "geometry/point_with_altitude.hpp"
|
||||
|
||||
#include <vector>
|
||||
|
||||
jobjectArray CreateJunctionInfoArray(JNIEnv * env, std::vector<m2::PointD> const & junctionPoints)
|
||||
jobjectArray CreateJunctionInfoArray(JNIEnv * env, std::vector<geometry::PointWithAltitude> const & junctionPoints)
|
||||
{
|
||||
static jclass const junctionClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/routing/JunctionInfo");
|
||||
// Java signature : JunctionInfo(double lat, double lon)
|
||||
static jmethodID const junctionConstructor = jni::GetConstructorID(env, junctionClazz, "(DD)V");
|
||||
|
||||
return jni::ToJavaArray(env, junctionClazz, junctionPoints,
|
||||
[](JNIEnv * env, m2::PointD const & point)
|
||||
[](JNIEnv * env, geometry::PointWithAltitude const & pointWithAltitude)
|
||||
{
|
||||
auto & point = pointWithAltitude.GetPoint();
|
||||
return env->NewObject(junctionClazz, junctionConstructor, mercator::YToLat(point.y),
|
||||
mercator::XToLon(point.x));
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user