Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android中使用canvas绘制联锁圆_Android_Android Canvas_Drawable - Fatal编程技术网

如何在android中使用canvas绘制联锁圆

如何在android中使用canvas绘制联锁圆,android,android-canvas,drawable,Android,Android Canvas,Drawable,我有一个问题:我想画一个有5个圆圈的奥运会标志,但它需要相互关联。谢谢 不是这样的: 绘制奥林匹克标志最简单的方法是使用高质量的png图像。 但若它不适合你们,还有一种更难的方法——你们需要在画布上画的不是圆,而是弧。您必须计算这些圆弧的所有尺寸并缩放它们以适合您的视图。绘制奥运会徽标最简单的方法是使用高质量的png图像。 但若它不适合你们,还有一种更难的方法——你们需要在画布上画的不是圆,而是弧。您必须计算这些圆弧的所有尺寸并缩放它们以适合您的视图。让我们看看您想要什么 首先,您需要创建一个

我有一个问题:我想画一个有5个圆圈的奥运会标志,但它需要相互关联。谢谢

不是这样的:

绘制奥林匹克标志最简单的方法是使用高质量的png图像。
但若它不适合你们,还有一种更难的方法——你们需要在画布上画的不是圆,而是弧。您必须计算这些圆弧的所有尺寸并缩放它们以适合您的视图。

绘制奥运会徽标最简单的方法是使用高质量的png图像。
但若它不适合你们,还有一种更难的方法——你们需要在画布上画的不是圆,而是弧。您必须计算这些圆弧的所有尺寸并缩放它们以适合您的视图。

让我们看看您想要什么

首先,您需要创建一个自定义视图,以便覆盖
onDraw
方法

这是你画圆圈的地方

要在画布上绘制圆,您将使用

drawCircle(浮动cx、浮动cy、浮动半径、油漆)

在哪里 cx:中心的位置X cy:中心的位置Y 半径:圆的半径 画画:你用来画圆的画

现在,对于你的绘画,你只需要创建一个新的,设置它的颜色
paint.setColor(Color.RED)
以及油漆的风格:
paint.setStyle(paint.Style.Stroke)
最后是笔划宽度和你想要的其他风格


有了所有这些,你应该能够通过自己的方式实现你想要实现的目标。

让我们看看你想要什么

首先,您需要创建一个自定义视图,以便覆盖
onDraw
方法

这是你画圆圈的地方

要在画布上绘制圆,您将使用

drawCircle(浮动cx、浮动cy、浮动半径、油漆)

在哪里 cx:中心的位置X cy:中心的位置Y 半径:圆的半径 画画:你用来画圆的画

现在,对于你的绘画,你只需要创建一个新的,设置它的颜色
paint.setColor(Color.RED)
以及油漆的风格:
paint.setStyle(paint.Style.Stroke)
最后是笔划宽度和你想要的其他风格



有了所有这些,你应该能够完成你想要实现的目标。

我只画了5个圆圈。2个圆圈在上面3个圆圈上绘制。我更新了描述,但我想让它们相互关联。谢谢先生的推荐我只画了5个圈。2个圆圈在上面3个圆圈上绘制。我更新了描述,但我想让它们相互关联。谢谢先生推荐的汉克。但是我想让它们相互关联,你的解决方案只是让它们在彼此之上。只要你为它们中的每一个提供不同的
cx
cy
,它们就不会相互关联。不,我的意思是它们需要相互关联,我只是编辑描述,你能再看一下吗?哦,就像一个在另一个的上面和下面?那么@evgenii是对的,您需要计算圆弧并按正确的顺序绘制它们是的,但是绘制圆弧非常复杂。圆圈不可能做到吗?谢谢。但是我想让它们相互关联,你的解决方案只是让它们在彼此之上。只要你为它们中的每一个提供不同的
cx
cy
,它们就不会相互关联。不,我的意思是它们需要相互关联,我只是编辑描述,你能再看一下吗?哦,就像一个在另一个的上面和下面?那么@evgenii是对的,您需要计算圆弧并按正确的顺序绘制它们是的,但是绘制圆弧非常复杂。圆不可能做到这一点吗?但我认为画弧是非常复杂的。在我的例子中,我需要计算很多东西:(圆是不可能的?是的,因为它们中的一些部分具有不同的相对深度,但在画布中不能对一个圆使用不同的深度。但我认为绘制圆弧非常复杂。在我的例子中,我需要计算很多东西:(圆是不可能的?是的,因为它们中的一些部分具有不同的相对深度,但在画布中不能对一个圆使用不同的深度。