检查用户位置是不是在颤动的2个地理点的区域内
Posted
技术标签:
【中文标题】检查用户位置是不是在颤动的2个地理点的区域内【英文标题】:Check if user position is withing the area of 2 geopoints in flutter检查用户位置是否在颤动的2个地理点的区域内 【发布时间】:2020-05-25 21:39:28 【问题描述】:如何检查用户地理位置是否位于由定义正方形对角线的 2 个地理点定义的正方形区域内? 就像在下一张照片中一样。
如果用户地理位置在这 2 个点定义的白色方块中,我如何创建一个返回 true 的函数?
【问题讨论】:
【参考方案1】:你可以使用bool overlaps(Rect other)
方法..
从用户位置创建一个半径为 1 的 Rect
Rect userRect = Rect.fromCircle(center:Offset(UserPositionDx,UserPositionDy),radius:1);
从 PointA 和 PointB 创建一个 Rect(如果不转换为 Offset,请检查这些点是否定义为 Offset(double dx,double dy))
Rect areaSquare = Rect.fromPoints(PointA,PointB);
创建一个布尔变量并设置它
一开始是假的
bool isUserInArea=false;
检查用户位置(作为半径为 1 的矩形)是否被区域重叠
isUserInArea=areaSquare.overlaps(userRect);
【讨论】:
以上是关于检查用户位置是不是在颤动的2个地理点的区域内的主要内容,如果未能解决你的问题,请参考以下文章