我们如何知道地图坐标是否在当前区域?

发布于 2025-01-01 14:57:53 字数 71 浏览 1 评论 0原文

我正在开发地图视图应用程序。我想知道我们如何识别坐标位于我当前的区域(与屏幕绑定的地图区域)或外部。

提前致谢。

I am working on map view app.I want know that how we can identify that coordinates are in my current region(Map region that bound with screen) or outside of it.

Thanks In Advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黑白记忆 2025-01-08 14:57:53

你有不同的选择。您可以从苹果看到此示例代码: 区域。据我了解,通过天线的位置检查设备位置。

或者跟踪设备位置,并检查是否位于您定义的区域内。检查这个问题

如果您找到更好的解决方案,请告诉我。

编辑:

要检查坐标在地图中是否可见,请尝试使用以下命令:

// Your coordinates - Lisbon for example
float lisbonLatitudeValue = 38.7069320;
float lisbonLongitudeValue = -9.1356321;

CLLocationCoordinate2D lisbonCoordinates = CLLocationCoordinate2DMake(lisbonLatitudeValue, lisbonLongitudeValue);

if (MKMapRectContainsPoint(mapView.visibleMapRect, MKMapPointForCoordinate(lisbonCoordinates)))
{
    // do something
    NSLog(@" - Lisbon is visible");
}
else {
    // do something
    NSLog(@" - Lisbon is not visible");
}

希望有帮助

You have different options. You can see this sample code from apple: Regions. That, has I understand, check the device position by the antenna's position.

Or tracking device position, and check if is inside a region defined by You. Check this question

If you find a better solution, please let me know.

EDIT:

To check if a coordinate is visible in the map try using this:

// Your coordinates - Lisbon for example
float lisbonLatitudeValue = 38.7069320;
float lisbonLongitudeValue = -9.1356321;

CLLocationCoordinate2D lisbonCoordinates = CLLocationCoordinate2DMake(lisbonLatitudeValue, lisbonLongitudeValue);

if (MKMapRectContainsPoint(mapView.visibleMapRect, MKMapPointForCoordinate(lisbonCoordinates)))
{
    // do something
    NSLog(@" - Lisbon is visible");
}
else {
    // do something
    NSLog(@" - Lisbon is not visible");
}

Hope it helps

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文