首页 > 代码库 > libgdx判断actor与circle是否重叠
libgdx判断actor与circle是否重叠
实质是检测矩形与circle是否重叠
基本函数,判断点是否在circle中
1 public static boolean IsInside( float x, float y, Circle circle ){ 2 float disX = x - circle.x; 3 float disY = y - circle.y; 4 return disX*disX + disY*disY <= circle.radius*circle.radius; 5 }
再判断矩形4个点是否在其中,有一个在即重叠
1 public static boolean IsOverlap( Actor actor, Circle circle ){ 2 float x = actor.getX(), y = actor.getY(), w = actor.getWidth(), h = actor.getHeight(); 3 4 return IsInside(x,y,circle) || IsInside(x+w,y,circle) || IsInside(x,y+h,circle) || IsInside(x+w,y+h,circle); 5 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。