上一篇文章:唯物辩证法(1)【分类:马克思主义哲学】,链接唯物辩证法(1)
需求
已知玩家坐标P(x,y),⊙O的圆心坐标为(a,b),半径为r,判断玩家是否在园内
方案1 从O外任意一点引出一条线段AP,若与圆仅有一个焦点(point),则在圆内(代码复杂,耗时)
- 当 point==0或2时,不在圆内
- 一般所以只有一种真条件,不符合的可用’else’实现。
方案2 已知⊙O的半径,则可判断角色距离圆心的长度,若距离渊下宫的长度(l)<r,则符合条件
求得l的表达式:
l=√(a-x)^2+(b-y)^2
实现代码
function ifPlayerInCircle(x,y,a,b,r){
let l=Math.sqrt(Math.pow((a-x),2)+Math.pow((b-y),2);
if(l<=r)return true;/*这里把在圆内定义为包括在圆上*/
return false;
}
推荐:来看看鹿客音乐吧!
分类:科技、数学、游戏