gpt4 book ai didi

iphone -- 将 MKMapPoint 距离转换为米

转载 作者:行者123 更新时间:2023-12-03 20:23:08 26 4
gpt4 key购买 nike

假设我有一个由四个 CLLocationCooperative2D 点组成的正方形,这些点的单位为经纬度,我想找到该正方形的面积(以米为单位)。我将 CLLocationCooperative2D 点转换为 MKMapPoints,然后找到 X-Y 空间中的区域。但是,我找到的面积是以 MKMapPoint 为单位的,它不能直接转换为米。如何将 MKMapPoint 空间中的该区域转换回米?

最佳答案

MapKit 函数 MKMetersBetweenMapPoints 使这变得更容易。

例如,如果你想获取当前显示区域的面积:

MKMapPoint mpTopLeft = mapView.visibleMapRect.origin;

MKMapPoint mpTopRight = MKMapPointMake(
mapView.visibleMapRect.origin.x + mapView.visibleMapRect.size.width,
mapView.visibleMapRect.origin.y);

MKMapPoint mpBottomRight = MKMapPointMake(
mapView.visibleMapRect.origin.x + mapView.visibleMapRect.size.width,
mapView.visibleMapRect.origin.y + mapView.visibleMapRect.size.height);

CLLocationDistance hDist = MKMetersBetweenMapPoints(mpTopLeft, mpTopRight);
CLLocationDistance vDist = MKMetersBetweenMapPoints(mpTopRight, mpBottomRight);

double vmrArea = hDist * vDist;

文档指出该函数“考虑了地球的曲率。”

关于iphone -- 将 MKMapPoint 距离转换为米,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7395925/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com