目前我没有任何代码可供共享,但我正试图找出如何解决我的问题。。我希望你们中的一些人能给我一些建议。
geolocation 如果他们在预定的半径区域内,他们可以将数据发布到服务器,但如果他们不在我指定的区域内,则不允许。。以下是一幅图像,例如:
geolocation
因此,在本例中,用户可以在其中一个圆的半径内发布,但如果不在半径内,则不能发布。
我还必须根据他们所在的圆圈获取数据。。
我想知道的是,我该如何指定这些半径的存在位置,以及这种缩放是否容易?如果我需要添加10-30个新位置,这会很容易吗?
您可以从设备中获得用户位置,也可以从圆圈中获得用户位置;你有圆心和半径。发帖时,请检查用户位置到圆圈中心的距离,并列举圆圈位置。如果距离在半径范围内,他们可以张贴,如果不在,则不在。
var radius = 100 //example let canPostLocations = [ CLLocation1, CLLocation2 ] func isInRange() -> Bool { for canPost in canPostLocations { let locationDistance = location.distance(from: canPost) if (locationDistance < radius) { return true } } return false }
用作:
var mayPost = false var userLocation: CLLocation! = nil if userLocation != nil { mayPost = InRange(location: userLocation).isInRange() }