android - 在 android 中绘制一个 2d 圆锥体,如饼图。

标签 android

我正在尝试绘制动态雷达,但无法正确绘制圆锥形状。我可以让这两条线正常工作,但我无法让它们之间的阴影正常工作。

我的目标:

enter image description here

我得到了什么:

enter image description here

这是我的代码:

paint.setColor(Color.WHITE);
RectF oval = new RectF(0,0,200,200);
canvas.drawArc(oval,(float)globalAzimuth+26, (float)globalAzimuth-26,false,paint);

globalAzimuth 是手机朝向的方向。雷达像电话一样旋转。线条旋转得很好并且同步化,但是弧度变得更大并且显然非常偏离。

有人知道怎么做吗?

最佳答案

看起来您正在将参数 sweepAngle 视为停止 角度。它应该是从 startAngle 顺时针方向扫描的度数。

From the docs:

sweepAngle : Sweep angle (in degrees) measured clockwise

编辑:看起来您可以使用常数 52 作为扫描角,因为您只是从 globalAzimuth 向任一方向移动 26 度(尽管您的线看起来比 52 度更近,所以我不确定)。如果这样做,您需要记住它是顺时针方向的,因此您的 startAngle 应该是 globalAzimuth - 26,而不是加号。

关于android - 在 android 中绘制一个 2d 圆锥体,如饼图。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15282283/

相关文章:

android - 是否可以在数据库行上创建队列?

android - 动态网格布局

android - 在 android.os.Looper 中使用 LiveData 方法 getMainLooper 进行单元测试未模拟

java - 广告未加载

JavaScript 插入符号位置

java - 无法导入 MultiDexApplication

java - 如何修复 fragment 重叠?

java - 如何在android中将图像发布到twitter

java - 第二种布局按钮不起作用

android 无法解析方法 runonuithread