unioil-loyalty-rn-app/ios/Pods/GoogleMaps/Example/GoogleMapsDemos/Samples/CameraViewController.m

73 lines
2.4 KiB
Objective-C
Executable File

/*
* Copyright 2016 Google Inc. All rights reserved.
*
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
* file except in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
* ANY KIND, either express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
#import "GoogleMapsDemos/Samples/CameraViewController.h"
#import <GoogleMaps/GoogleMaps.h>
@implementation CameraViewController {
GMSMapView *_mapView;
NSTimer *timer;
}
- (void)viewDidLoad {
[super viewDidLoad];
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-37.809487
longitude:144.965699
zoom:20
bearing:0
viewingAngle:0];
_mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
_mapView.settings.zoomGestures = NO;
_mapView.settings.scrollGestures = NO;
_mapView.settings.rotateGestures = NO;
_mapView.settings.tiltGestures = NO;
self.view = _mapView;
}
- (void)moveCamera {
GMSCameraPosition *camera = _mapView.camera;
float zoom = fmaxf(camera.zoom - 0.1f, 17.5f);
GMSCameraPosition *newCamera =
[[GMSCameraPosition alloc] initWithTarget:camera.target
zoom:zoom
bearing:camera.bearing + 10
viewingAngle:camera.viewingAngle + 10];
[_mapView animateToCameraPosition:newCamera];
}
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
timer = [NSTimer scheduledTimerWithTimeInterval:1.f/30.f
target:self
selector:@selector(moveCamera)
userInfo:nil
repeats:YES];
}
- (void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
[timer invalidate];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
[timer invalidate];
}
@end