在我的自定义视图中,我绘制了多个填充的Arc
,如下所示:
canvas.drawArc(oval, startAngle, sweepAngle, true, sectorPaint);
现在,我想在Arc的中心绘制一个图标。我从这开始:
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.my_icon);
canvas.drawBitmap(bitmap, pointX, pointY, null); //pointX & pointY ??
但是,我不知道应该为pointX
和pointY
设置什么。这是我的数据:
有没有办法知道提供这些输入的值pointX
和pointY
?
编辑:插图草图:
答案 0 :(得分:3)
This answer给了我很多帮助:
double radius = width/2;
double x = radius + (radius)*Math.cos(-angle);
double y = radius + (radius)*Math.sin(-angle);
答案 1 :(得分:0)
使用您的vars。
试试这个:
double x = C.x + r * Math.cos(theta * Math.PI / 180);
double y = C.y + r * Math.sin(theta * Math.PI / 180);
theta
的结束角度为arc
- start angle of arc