Android计算点击坐标是否在圆内和椭圆内

最近工作需要,顺带学了波数学。

要判断点是否在圆内,可以使用圆的几何性质:如果点的坐标(x, y)满足(x - 圆心x)^2 + (y - 圆心y)^2 < 半径^2,则该点在圆内。

计算点击坐标是否在圆内

// 圆的半径
float radius =circleView.getWidth() / 2;
// 按下的坐标
float touchX = event.getX();
float touchY = event.getY();

float distanceX = Math.abs(touchX - radius);
float distanceY = Math.abs(touchY - radius);
//是否在圆内
if ((distanceX * distanceX + distanceY * distanceY) > radius * radius) {
    // 在圆外
    return false;
} else {
	// 在圆内
    return true;
}

计算点击坐标是否在椭圆内

在Android中,你可以使用椭圆的标准方程来判断一个点是否在椭圆内部。椭圆的标准方程如下:
其中,(h, k) 是椭圆的中心点,a 和 b 分别是椭圆的长轴和短轴。
如果一个点 (x, y) 满足这个方程,那么这个点就在椭圆内部。如果不满足,那么这个点就在椭圆外部。

float radiusX = mOvalWidth / 2f;
float radiusY = mOvalHeight / 2f;
// 椭圆的中心点 centerX  centerY
float centerX = mOvalWidth / 2f;
float centerY = mOvalHeight / 2f;
float touchX = event.getX();
float touchY = event.getY();
//是否在圆内  因为是裁剪居中的椭圆,所以touchX需要平移到对应位置
if (!isPoint
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值