获取PanoramaView内标记的纬度/经度坐标

时间:2015-11-25 12:08:55

标签: ios google-maps-markers google-maps-sdk-ios

根据谷歌地图iOS SDK,我实现了我的全景视图:

- (void) panoramaView:      (GMSPanoramaView *)     panoramaView
didTap:         (CGPoint)   point  

当我点击panoramaView时,我想获得我刚拍摄的纬度和经度。

这个委托方法是我需要的

unsigned long reverseOne(unsigned long x) {
  x = ((x & 0xFFFFFFFF00000000) >> 32) | ((x & 0x00000000FFFFFFFF) << 32);
  x = ((x & 0xFFFF0000FFFF0000) >> 16) | ((x & 0x0000FFFF0000FFFF) << 16);
  x = ((x & 0xFF00FF00FF00FF00) >> 8)  | ((x & 0x00FF00FF00FF00FF) << 8);
  x = ((x & 0xF0F0F0F0F0F0F0F0) >> 4)  | ((x & 0x0F0F0F0F0F0F0F0F) << 4);
  x = ((x & 0xCCCCCCCCCCCCCCCC) >> 2)  | ((x & 0x3333333333333333) << 2);
  x = ((x & 0xAAAAAAAAAAAAAAAA) >> 1)  | ((x & 0x5555555555555555) << 1);
  return x;
}

我最后一部分将这个CGPoint转换为CLLocation2DCoordinates!我不需要音高,前进等......我需要lat / long元组。

有没有办法处理这些位置,或者这在panoramaView中是不可能的?

提前致谢:)

1 个答案:

答案 0 :(得分:0)

CGPoint与CLLocationCoordinate2D没有任何关联。 CGPoint指的是给定矩形中的点(x,y),可能是由某个CGSize定义的CGRect。

您无法通过此委托方法中定义的对象访问CLLocationCoordinate2D。

您通过以下方式获得CLLocationCoordinate2D:

  • - (void)panoramaView:GMSPanoramaView *)view didMoveToPanorama:(GMSPanorama *)panorama nearCoordinate:(CLLocationCoordinate2D)coordinate
  • - (void)panoramaView:(GMSPanoramaView *)view error:(NSError *)error onMoveNearCoordinate:(CLLocationCoordinate2D)coordinate