summaryrefslogtreecommitdiff
path: root/platform/darwin/src/MGLRasterStyleLayer.mm
diff options
context:
space:
mode:
Diffstat (limited to 'platform/darwin/src/MGLRasterStyleLayer.mm')
-rw-r--r--platform/darwin/src/MGLRasterStyleLayer.mm88
1 files changed, 88 insertions, 0 deletions
diff --git a/platform/darwin/src/MGLRasterStyleLayer.mm b/platform/darwin/src/MGLRasterStyleLayer.mm
index 2108a5a0c8..b4d1a10f0d 100644
--- a/platform/darwin/src/MGLRasterStyleLayer.mm
+++ b/platform/darwin/src/MGLRasterStyleLayer.mm
@@ -4,6 +4,7 @@
#import "MGLSource.h"
#import "MGLMapView_Private.h"
#import "NSPredicate+MGLAdditions.h"
+#import "NSDate+MGLAdditions.h"
#import "MGLStyleLayer_Private.h"
#import "MGLStyleValue_Private.h"
#import "MGLRasterStyleLayer.h"
@@ -91,6 +92,23 @@
#pragma mark - Accessing the Paint Attributes
+- (NSArray *)transitionKeys
+{
+ NSMutableArray *transitionKeys = [NSMutableArray array];
+ [transitionKeys addObject:@"maximumRasterBrightness"];
+ [transitionKeys addObject:@"rasterBrightnessMax"];
+ [transitionKeys addObject:@"minimumRasterBrightness"];
+ [transitionKeys addObject:@"rasterBrightnessMin"];
+ [transitionKeys addObject:@"rasterContrast"];
+ [transitionKeys addObject:@"rasterFadeDuration"];
+ [transitionKeys addObject:@"rasterHueRotation"];
+ [transitionKeys addObject:@"rasterHueRotate"];
+ [transitionKeys addObject:@"rasterOpacity"];
+ [transitionKeys addObject:@"rasterSaturation"];
+
+ return transitionKeys;
+}
+
- (void)setMaximumRasterBrightness:(MGLStyleValue<NSNumber *> *)maximumRasterBrightness {
MGLAssertStyleLayerIsValid();
@@ -98,6 +116,16 @@
self.rawLayer->setRasterBrightnessMax(mbglValue);
}
+- (void)mbx_setMaximumRasterBrightnessTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterBrightnessMaxTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)maximumRasterBrightness {
MGLAssertStyleLayerIsValid();
@@ -122,6 +150,16 @@
self.rawLayer->setRasterBrightnessMin(mbglValue);
}
+- (void)mbx_setMinimumRasterBrightnessTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterBrightnessMinTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)minimumRasterBrightness {
MGLAssertStyleLayerIsValid();
@@ -146,6 +184,16 @@
self.rawLayer->setRasterContrast(mbglValue);
}
+- (void)mbx_setRasterContrastTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterContrastTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)rasterContrast {
MGLAssertStyleLayerIsValid();
@@ -163,6 +211,16 @@
self.rawLayer->setRasterFadeDuration(mbglValue);
}
+- (void)mbx_setRasterFadeDurationTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterFadeDurationTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)rasterFadeDuration {
MGLAssertStyleLayerIsValid();
@@ -180,6 +238,16 @@
self.rawLayer->setRasterHueRotate(mbglValue);
}
+- (void)mbx_setRasterHueRotationTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterHueRotateTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)rasterHueRotation {
MGLAssertStyleLayerIsValid();
@@ -204,6 +272,16 @@
self.rawLayer->setRasterOpacity(mbglValue);
}
+- (void)mbx_setRasterOpacityTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterOpacityTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)rasterOpacity {
MGLAssertStyleLayerIsValid();
@@ -221,6 +299,16 @@
self.rawLayer->setRasterSaturation(mbglValue);
}
+- (void)mbx_setRasterSaturationTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setRasterSaturationTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)rasterSaturation {
MGLAssertStyleLayerIsValid();