我希望有人能给我正确的输入!
我正在使用GMSMapvIEw显示兴趣点(GMSMarkers).
目前我只是使用此代码将地图置于当前POI坐标的中心(DEFAulT_ZOOM为15.f):
GMSCameraposition *newposition = [GMSCameraposition cameraWithLatitude:activePOI.coordinate.latitude longitude:activePOI.coordinate.longitude zoom:DEFAulT_ZOOM bearing:0. //True north vIEwingAngle:0.]; //Facing down[self.mapVIEw animatetoCameraposition:newposition];
我尝试使用GMSCoordinateBounds显示POI和用户位置,使用以下代码:
GMSCoordinateBounds *cb = [[GMSCoordinateBounds alloc] initWithCoordinate:activePOI.coordinate coordinate:user.coordinate];[GMSCameraUpdate fitBounds:cb];
它工作得很好,但两个位置都显示在地图的角落.
我需要在中心显示POI,但同时显示用户位置.
有关如何实现这一点的任何想法?
干杯.
解决方法 要在中心显示POI,以及在地图边缘显示用户位置,您应该派生第三个位置点,以反映用户ID与POI另一侧POI的相对距离.如果我们被允许忽略地球的曲率,这是简单的向量加法
即
loc3 = poiLoc + (poiLoc - userLoc) = 2*poiLoc - userLoc;
然后你的map rect由userLoc和loc3定义.
总结以上是内存溢出为你收集整理的ios – GMSMapView:以坐标为中心,缩小以显示用户位置全部内容,希望文章能够帮你解决ios – GMSMapView:以坐标为中心,缩小以显示用户位置所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)