You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.9 KiB
49 lines
1.9 KiB
#if !defined(__has_feature) || !__has_feature(objc_arc) |
|
#error "This file requires ARC support." |
|
#endif |
|
|
|
#import "GoogleMapsDemos/Samples/GroundOverlayViewController.h" |
|
|
|
#import <GoogleMaps/GoogleMaps.h> |
|
|
|
@interface GroundOverlayViewController ()<GMSMapViewDelegate> |
|
@end |
|
|
|
@implementation GroundOverlayViewController |
|
|
|
- (void)viewDidLoad { |
|
[super viewDidLoad]; |
|
|
|
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(40.712216, -74.22655); |
|
CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(40.773941, -74.12544); |
|
|
|
GMSCoordinateBounds *overlayBounds = [[GMSCoordinateBounds alloc] initWithCoordinate:southWest |
|
coordinate:northEast]; |
|
|
|
// Choose the midpoint of the coordinate to focus the camera on. |
|
CLLocationCoordinate2D newark = GMSGeometryInterpolate(southWest, northEast, 0.5); |
|
GMSCameraPosition *camera = [GMSCameraPosition cameraWithTarget:newark |
|
zoom:12 |
|
bearing:0 |
|
viewingAngle:45]; |
|
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; |
|
mapView.delegate = self; |
|
|
|
// Add the ground overlay, centered in Newark, NJ |
|
GMSGroundOverlay *groundOverlay = [[GMSGroundOverlay alloc] init]; |
|
// Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg |
|
groundOverlay.icon = [UIImage imageNamed:@"newark_nj_1922.jpg"]; |
|
groundOverlay.tappable = YES; |
|
groundOverlay.position = newark; |
|
groundOverlay.bounds = overlayBounds; |
|
groundOverlay.map = mapView; |
|
|
|
self.view = mapView; |
|
} |
|
|
|
- (void)mapView:(GMSMapView *)mapView didTapOverlay:(GMSOverlay *)overlay { |
|
float opacity = (((float)arc4random()/0x100000000)*0.5f + 0.5f); |
|
((GMSGroundOverlay *)overlay).opacity = opacity; |
|
} |
|
|
|
@end
|
|
|