[android] Integration of DMS.

This commit is contained in:
Dmitry Kunin 2013-06-21 16:36:29 +03:00 committed by Alex Zolotarev
parent a453aa087e
commit f11de6990c
3 changed files with 18 additions and 2 deletions

View file

@ -5,6 +5,7 @@
#include "../core/render_context.hpp"
#include "../../../../../map/framework.hpp"
#include "../../../../../map/measurement_utils.hpp"
#include "../../../../../gui/controller.hpp"
@ -1036,4 +1037,11 @@ extern "C"
const double merX = MercatorBounds::LonToX(lon);
return Java_com_mapswithme_maps_Framework_nativeGetDistanceAndAzimut(env, clazz, merX, merY, cLat, cLon, north);
}
JNIEXPORT jobject JNICALL
Java_com_mapswithme_maps_Framework_nativeLatLon2DMS(JNIEnv * env, jclass clazz, jdouble lat, jdouble lon)
{
const string dms = MeasurementUtils::FormatLatLonAsDMS(lat, lon, false);
return jni::ToJavaString(env, dms);
}
}

View file

@ -114,12 +114,19 @@ public class Framework
return nativeGetDistanceAndAzimutFromLatLon(lat, lon, cLat, cLon, north);
}
public static String latLon2DMS(double lat, double lon)
{
return nativeLatLon2DMS(lat, lon);
}
/*
* "Implementation" - native methods
*/
private native static DistanceAndAzimut nativeGetDistanceAndAzimut(double merX, double merY, double cLat, double cLon, double north);
private native static DistanceAndAzimut nativeGetDistanceAndAzimutFromLatLon(double lat, double lon, double cLat, double cLon, double north);
private native static String nativeLatLon2DMS(double lat, double lon);
private native static String nativeGetGe0Url(double lat, double lon, double zoomLevel, String name);
private native static String nativeGetNameAndAddress4Point(double lat, double lon);

View file

@ -6,6 +6,8 @@ import android.view.View;
import java.util.Locale;
import com.mapswithme.maps.Framework;
public final class UiUtils
{
@ -16,8 +18,7 @@ public final class UiUtils
public static String formatLatLonToDMS(double lat, double lon)
{
// TODO add native conversion method
return "40°2647″N 079°5836″W";
return Framework.latLon2DMS(lat, lon);
}
public static Drawable setCompoundDrawableBounds(Drawable d, int dimenId, Resources res)