#include "lat_lng_bounds.hpp" namespace mbgl { namespace android { jni::Local> LatLngBounds::New(jni::JNIEnv& env, mbgl::LatLngBounds bounds) { static auto& javaClass = jni::Class::Singleton(env); static auto constructor = javaClass.GetConstructor(env); return javaClass.New(env, constructor, bounds.north(), bounds.east(), bounds.south(), bounds.west()); } mbgl::LatLngBounds LatLngBounds::getLatLngBounds(jni::JNIEnv& env, const jni::Object& bounds) { static auto& javaClass = jni::Class::Singleton(env); static auto swLatField = javaClass.GetField(env, "latitudeSouth"); static auto swLonField = javaClass.GetField(env, "longitudeWest"); static auto neLatField = javaClass.GetField(env, "latitudeNorth"); static auto neLonField = javaClass.GetField(env, "longitudeEast"); mbgl::LatLng sw = { bounds.Get(env, swLatField), bounds.Get(env, swLonField) }; mbgl::LatLng ne = { bounds.Get(env, neLatField), bounds.Get(env, neLonField) }; return mbgl::LatLngBounds::hull(sw, ne); } void LatLngBounds::registerNative(jni::JNIEnv& env) { jni::Class::Singleton(env); } } // namespace android } // namespace mbgl