- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我的应用程序中有一个方形 MKMapView,我希望设置一个中心点和以米为单位的 View 的确切高度/宽度。
创建一个 MKCoordinateRegion 并将 map 设置到它(如在此代码中...
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(center_coord, 1000.0, 1000.0);
[self.mapView setRegion:region animated:YES];
..) 无法正常工作,因为在此处使用区域仅意味着至少显示该区域,通常比显示的区域多。
我打算使用 setVisibleMapRect:animated:方法,因为我相信这会放大到实际的 MKMapRect通过。
那么,有没有一种简单的方法可以在 MKcoordinateRegion 和 MKMapRect 之间进行转换?也许获取该区域的左上角和右下角坐标,并使用它们来制作 MKMapRect?
我在 Map Kit Functions Reference 中看不到任何有用的东西.
(使用 iOS 5、Xcode 4.2)
最佳答案
向堆中添加另一个实现:
- (MKMapRect)MKMapRectForCoordinateRegion:(MKCoordinateRegion)region
{
MKMapPoint a = MKMapPointForCoordinate(CLLocationCoordinate2DMake(
region.center.latitude + region.span.latitudeDelta / 2,
region.center.longitude - region.span.longitudeDelta / 2));
MKMapPoint b = MKMapPointForCoordinate(CLLocationCoordinate2DMake(
region.center.latitude - region.span.latitudeDelta / 2,
region.center.longitude + region.span.longitudeDelta / 2));
return MKMapRectMake(MIN(a.x,b.x), MIN(a.y,b.y), ABS(a.x-b.x), ABS(a.y-b.y));
}
注意:MKMapRect
和MKCoordinateRegion
之间有多种转换方式。这当然不是 MKCoordinateRegionMakeWithDistance()
的精确逆函数,但相当接近它。因此,来回转换时要小心,因为信息可能会丢失。
关于ios - 将 MKCoordinateRegion 转换为 MKMapRect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9270268/
我正在使用Apple的Footprint: Indoor Positioning with Core Location sample code构建移动应用程序。此代码采用 Swift 3.0 格式,我
我使用此代码在 map 上显示所有注释: MKMapRect zoomRect = MKMapRectNull; for (id annotation in mapView.ann
我正在尝试放大 map ,重点关注与该 map 关联的所有图钉。我已将该信息保存在我的 map 属性中。 我从这个开始,但它还没有工作: double maxLatitude = 0;
我使用MKMapRectMake 标记东北和西南以显示区域。以下是我的做法: routeRect = MKMapRectMake(southWestPoint.x, southWestPoint.y,
我必须在 MKMapView 上显示一个 MKMapRoute,它必须显示在我 map 上的特定区域,而不是在中心,而是在顶部区域。它必须放在一个大约 80 点高的“框架”中。 我以为我可以通过使用M
我想得到一个在所有方向上都比当前 visibleMapRect 大 10-20% 的结果 MKMapRect。如果这是一个 CGRect,我将使用具有负 x 和 y 值的 CGRectInset,为我
我有一个自定义类,它扩展了 NSObject 并实现了 MKOverlay 协议(protocol)。因此,我需要实现协议(protocol)的 boundingMapRect 属性,它是一个 MKM
我需要在 map 上注释一个可见点(无需用户输入)。我正在使用 MKMapView visibleMapRect计算我想要的点。但是,从我下面的代码中,我正在阅读类似的值 let rect = map
我正在绘制一个图像作为 MKMapview 的叠加层,为此,我需要知道 MKMapRect 和 CGRect 之间的关系,以便在可见的映射矩形的矩形中绘制图像。 我没有找到任何解决方案..,请建议我,
我正在使用以下方法: - (void)loadTileAtPath:(MKTileOverlayPath)path result:(void (^)(NSData *data, NSError *er
如何将 map View 的可见矩形转换为 CLRegion 以与 CLGeocoder 一起使用? 最佳答案 哦,我刚刚在这里找到了这个答案: https://gist.github.com/340
我试图在给定的 MKMapRect 中将注释/坐标居中。我首先创建了 rect,它是 mapview 和另一个 View 之间的可见区域。然后将该矩形转换为与 map View 成比例的矩形,以便正确
我想在使用 Mapkit 的 MKMap 上使用 MKPolygon 绘制走廊。我有一条从 A 站到 B 站的路线。 我在绘制走廊的路线周围有 MKMapRects。现在我想将所有矩形合并为一个多边形
我搜索了很多答案,我无法想象这样的方法不存在!!我有一个 MKTileOverlayPath (x , y & z) 并且还能够得到这个矩形中心的经度/纬度。现在我需要获取每个矩形的跨度,这可能吗?
我正在创建一个 MKMapView 应用程序,需要在 plist 中保存几个 MKMapRect 类型的变量,以便在需要时引用它们。 我知道 MKMapRect 有 MKMapPoint origin
我的应用程序中有一个方形 MKMapView,我希望设置一个中心点和以米为单位的 View 的确切高度/宽度。 创建一个 MKCoordinateRegion 并将 map 设置到它(如在此代码中..
我有以下代码: MKMapRect mRect = self.mapView.visibleMapRect; MKMapPoint eastMapPoint = MKMapPointMake(MK
我正在尝试查看我拥有的某些范围(最大 x、最大 y、最小 x、最小 y 坐标)是否位于当前可见 map View 中。 我采用我的范围并创建一个MKMapRect: MKMapPoint upperL
给定一个 MKMapView,它包含 map 上不同点的可变数量的注释([mapView annotations])和 MKMapRect 值MKMapRectWorld,如何确定 map 上最集中于
所以我有一个函数接受两个 MKMapRect,第二个与第一个相交。因此该函数创建了一个 MKPolygon,它是第一个没有相交部分的矩形: -(void) polygons:(MKMapRe
我是一名优秀的程序员,十分优秀!