2020-05-14 Unity 一直圆心 半径 角度 求圆上的

2020-05-14  本文已影响0人  VECTOR_Y
        做圆形的进度条,上面有个光标,需要刷新光标位置,记录一下实现方式

圆心坐标:(x0,y0)
半径:r
角度:a

圆周率: PI

则圆上任一点为:(x1,y1)
x1 = x0 + r * cos(a * PI /180 )
y1 = y0 + r * sin(a * PI /180 )

           //进度   count当前数量   total总量
            float pro = (float)count / (float)total;
            //半径  圆形进度条的半径 减去光标的半径
            float r = img_pro.GetComponent<RectTransform>().sizeDelta.x / 2 - 5;
            //求角度 顺时针由上往下,这个需要根据实际需求修改
            float a = -(360 * pro - 90);
            //
            float x1 = x0 + r * Mathf.Cos(a * Mathf.PI / 180);
            float y1 =y0 + r * Mathf.Sin(a * Mathf.PI / 180);
            trs_point.localPosition = new Vector2(x1, y1);
image.png
上一篇下一篇

猜你喜欢

热点阅读