diff options
Diffstat (limited to 'platform/android/src')
4 files changed, 30 insertions, 0 deletions
diff --git a/platform/android/src/style/conversion/types.hpp b/platform/android/src/style/conversion/types.hpp index 8a75b870b3..e87782fad0 100644 --- a/platform/android/src/style/conversion/types.hpp +++ b/platform/android/src/style/conversion/types.hpp @@ -93,6 +93,13 @@ struct Converter<jni::jobject*, mbgl::style::CirclePitchScaleType> { }; template <> +struct Converter<jni::jobject*, mbgl::style::RasterResamplingType> { + Result<jni::jobject*> operator()(jni::JNIEnv& env, const mbgl::style::RasterResamplingType& value) const { + return convert<jni::jobject*, std::string>(env, toString(value)); + } +}; + +template <> struct Converter<jni::jobject*, mbgl::style::HillshadeIlluminationAnchorType> { Result<jni::jobject*> operator()(jni::JNIEnv& env, const mbgl::style::HillshadeIlluminationAnchorType& value) const { return convert<jni::jobject*, std::string>(env, toString(value)); diff --git a/platform/android/src/style/conversion/types_string_values.hpp b/platform/android/src/style/conversion/types_string_values.hpp index 7e4fd4a7f7..ff79fa4f1c 100644 --- a/platform/android/src/style/conversion/types_string_values.hpp +++ b/platform/android/src/style/conversion/types_string_values.hpp @@ -206,6 +206,20 @@ namespace conversion { } } + // raster-resampling + inline std::string toString(mbgl::style::RasterResamplingType value) { + switch (value) { + case mbgl::style::RasterResamplingType::Linear: + return "linear"; + break; + case mbgl::style::RasterResamplingType::Nearest: + return "nearest"; + break; + default: + throw std::runtime_error("Not implemented"); + } + } + // hillshade-illumination-anchor inline std::string toString(mbgl::style::HillshadeIlluminationAnchorType value) { switch (value) { diff --git a/platform/android/src/style/layers/raster_layer.cpp b/platform/android/src/style/layers/raster_layer.cpp index 6d36298bb1..53086951e4 100644 --- a/platform/android/src/style/layers/raster_layer.cpp +++ b/platform/android/src/style/layers/raster_layer.cpp @@ -149,6 +149,12 @@ namespace android { layer.as<mbgl::style::RasterLayer>()->RasterLayer::setRasterContrastTransition(options); } + jni::Object<jni::ObjectTag> RasterLayer::getRasterResampling(jni::JNIEnv& env) { + using namespace mbgl::android::conversion; + Result<jni::jobject*> converted = convert<jni::jobject*>(env, layer.as<mbgl::style::RasterLayer>()->RasterLayer::getRasterResampling()); + return jni::Object<jni::ObjectTag>(*converted); + } + jni::Object<jni::ObjectTag> RasterLayer::getRasterFadeDuration(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result<jni::jobject*> converted = convert<jni::jobject*>(env, layer.as<mbgl::style::RasterLayer>()->RasterLayer::getRasterFadeDuration()); @@ -193,6 +199,7 @@ namespace android { METHOD(&RasterLayer::getRasterContrastTransition, "nativeGetRasterContrastTransition"), METHOD(&RasterLayer::setRasterContrastTransition, "nativeSetRasterContrastTransition"), METHOD(&RasterLayer::getRasterContrast, "nativeGetRasterContrast"), + METHOD(&RasterLayer::getRasterResampling, "nativeGetRasterResampling"), METHOD(&RasterLayer::getRasterFadeDuration, "nativeGetRasterFadeDuration")); } diff --git a/platform/android/src/style/layers/raster_layer.hpp b/platform/android/src/style/layers/raster_layer.hpp index ed6fc3e1b2..d1c1b45234 100644 --- a/platform/android/src/style/layers/raster_layer.hpp +++ b/platform/android/src/style/layers/raster_layer.hpp @@ -53,6 +53,8 @@ public: void setRasterContrastTransition(jni::JNIEnv&, jlong duration, jlong delay); jni::Object<TransitionOptions> getRasterContrastTransition(jni::JNIEnv&); + jni::Object<jni::ObjectTag> getRasterResampling(jni::JNIEnv&); + jni::Object<jni::ObjectTag> getRasterFadeDuration(jni::JNIEnv&); jni::jobject* createJavaPeer(jni::JNIEnv&); |