如何在代码中绘制这条路径
How to draw in code this path
先祝大家新年快乐!
我有一个关于在代码中绘制背景的问题。我有一个简单的 Android 游戏代码,所有资产都是 png 格式,期待背景。我不是程序员(但我是新手,我通过实例学习)。
我认为这段代码在屏幕上绘制背景云:
//draw cloud layer 1
background_shader.setColor(getResources().getColor(R.color.blue_dark));
int radius = DrawBackgroundCloud(canvas, (ScreenHeight() / 2), 7);
canvas.drawRect(0, (float) ((ScreenHeight() / 2.2) + radius * 1.5), ScreenWidth(), ScreenHeight(), background_shader);
//draw cloud layer 2
background_shader.setColor(getResources().getColor(R.color.blue_darkest));
radius = DrawBackgroundCloud(canvas, (int) (ScreenHeight() / 1.5), 4);
canvas.drawRect(0, (float) ((ScreenHeight() / 1.7) + radius * 1.5), ScreenWidth(), ScreenHeight(), background_shader);
这画了一些随机的圆圈作为云,但我想改变它来画一些像山丘或山脉的东西。这是当前背景的图片以及我正在寻找的内容。
谁能帮我解决这个问题?我会很感激
回复评论中的进一步问题:
你不能用 canvas.drawColor
真正做到这一点,但你可以使用适当的 Paint
对象并使用 canvas.drawPaint
(或其他使用 [=12 的 canvas 方法=] object - 如果你想绘制带有渐变的形状)。
创建渐变 Paint
对象的关键部分是调用其 setShader(...)
方法。例如像这样:
mGradientPaint = new Paint();
mGradientPaint.setStyle(Paint.Style.FILL);
mGradientPaint.setShader(new LinearGradient(0, 0, 0, getHeight(), Color.TRANSPARENT, Color.GREEN, Shader.TileMode.MIRROR));
先祝大家新年快乐!
我有一个关于在代码中绘制背景的问题。我有一个简单的 Android 游戏代码,所有资产都是 png 格式,期待背景。我不是程序员(但我是新手,我通过实例学习)。
我认为这段代码在屏幕上绘制背景云:
//draw cloud layer 1
background_shader.setColor(getResources().getColor(R.color.blue_dark));
int radius = DrawBackgroundCloud(canvas, (ScreenHeight() / 2), 7);
canvas.drawRect(0, (float) ((ScreenHeight() / 2.2) + radius * 1.5), ScreenWidth(), ScreenHeight(), background_shader);
//draw cloud layer 2
background_shader.setColor(getResources().getColor(R.color.blue_darkest));
radius = DrawBackgroundCloud(canvas, (int) (ScreenHeight() / 1.5), 4);
canvas.drawRect(0, (float) ((ScreenHeight() / 1.7) + radius * 1.5), ScreenWidth(), ScreenHeight(), background_shader);
这画了一些随机的圆圈作为云,但我想改变它来画一些像山丘或山脉的东西。这是当前背景的图片以及我正在寻找的内容。
谁能帮我解决这个问题?我会很感激
回复评论中的进一步问题:
你不能用 canvas.drawColor
真正做到这一点,但你可以使用适当的 Paint
对象并使用 canvas.drawPaint
(或其他使用 [=12 的 canvas 方法=] object - 如果你想绘制带有渐变的形状)。
创建渐变 Paint
对象的关键部分是调用其 setShader(...)
方法。例如像这样:
mGradientPaint = new Paint();
mGradientPaint.setStyle(Paint.Style.FILL);
mGradientPaint.setShader(new LinearGradient(0, 0, 0, getHeight(), Color.TRANSPARENT, Color.GREEN, Shader.TileMode.MIRROR));