1. 三个点:圆心A,半径r,度数0的点B,任意点C.
先计算∠BAC的度数(弧度)。
public double calculatorDegree(float x1, float y1, float x2, float y2, float x3, float y3) { double radian = 0; double ab = getDistance(x1, y1, x2, y2); double ac = getDistance(x1, y1, x3, y3); double bc = getDistance(x2, y2, x3, y3); double value = (ab * ab + ac * ac - (bc * bc)) / (2 * ab * ac); radian = Math.acos(value); return radian; } public double getDistance(float x1, float y1, float x2, float y2) { double distance = 0; distance = Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); return distance; }
2. 根据弧度计算度数并且计算AC距离。
float x = event.getX(); float y = event.getY(); double radian = calculatorDegree(width / 2, height / 2, width / 2 + radius, height / 2, x, y); double degree = (180 / Math.PI * radian); double distance = getDistance(width / 2, height / 2, x, y);
3,根据度数和距离计算。
使用度数前先判断是否用补角。
计算扇型弧线起始点坐标:
(float) (center_X + r * Math.cos(startAngle * Math.PI / 180)),(float) (center_Y + r * Math.sin(startAngle * Math.PI / 180))
相关推荐
判断点是否在扇形区域内
安卓判断某个点是否在扇形或者区域内,系统自带判断,效率高
一个圆均分四部分根据坐标判断点击区域,功能很简答 看代码就可以
主要为大家详细介绍了android判断点击位置是否在扇形区域内,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
android 扇形菜单(属性动画实现)
android 饼形图 扇形图统计 简单实现自定义viwe 动画绘制扇形图形 android 饼形图 扇形图统计 简单实现自定义viwe 动画绘制扇形图形
安卓Android源码——PathButton(扇形旋转菜单).zip
以动画的方式显示各个扇形区域,以直线的方式间隔各个扇形区域,可点击放大缩小
Android画圆、画矩形、写字、椭圆、扇形
Android扇形进度条的实现,随着进度的增加,扇形的面积越来越大
实现扇形的按钮,区分按钮有背景图片区域和无背景图片区域
android 源码学习
博客地址:http://www.cnblogs.com/ityizhainan/p/6306748.html
扇形布局上加入扇形按钮, 实行了按钮点击事件, 按钮按照圆圈排布
目前Path风格的菜单已经很普遍了。这个demo不同于path,是一个真实的扇形的菜单,有扇形的打开关闭效果,也可以对每个扇区添加点击事件,不过是个半成品,没有弄成可配置属性的。
在VC6中使用CRgn类提供的方法实现。 1)利用CreateFromPath从绘制的路径中创建扇形区域。 2)利用CombineRgn对两个扇形区域进行与操作。 3)使用PtInRegion实现鼠标在扇形区域中的响应。
根据圆台的两底面直径和高,计算圆台展开扇形的角度,面积等相关参数
android 扇形菜单Demo(可直接打包运行)、可直接使用,很经典的ui,本人花大量的时间整理好的,在项目中也用过,5分真的很值!
利用flex画一个扇形区域,可以自己设置半径,圆心,和图形形状。