最近工作需要,顺带学了波数学。
要判断点是否在圆内,可以使用圆的几何性质:如果点的坐标(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

最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



