用java画一个玫瑰花的代码(Java玫瑰花代码)

介绍:

Java中,你可以使用图形化编程库像Swing, AWT和JavaFX来创建以及绘制各种不同类型的图形。在这个例子中,我们将要介绍如何使用JavaFX,通过画一个玫瑰花来展示Java图形化编程库的使用。

准备工作:

首先,你需要在本地安装JavaFX。然后,我们需要一些重要的类(class)来完成这个任务,其中包含;Canvas, GraphicsContext和 Color这些需要使用的类,它们分别用于绘制。然后,我们起用一个面板来承载所有图形。

用java画一个玫瑰花的代码(Java玫瑰花代码)

绘制玫瑰花:

我们绘制一个玫瑰花需要以下步骤:

  1. 定义花瓣半径和颜色数组。
  2. 画出一朵完整的红色玫瑰花。
  3. 在红色玫瑰花的中心绘制黄色的小圆。
  4. 使用花瓣半径和颜色数组画出剩下的两个颜色的玫瑰花。
  5. 最初的红色玫瑰花被覆盖在第二朵玫瑰花上面。

以下是Java代码:

```java
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;

public class Rose extends Application {

private static final int WIDTH = 400;
private static final int HEIGHT = 400;
private static final int NUM_PETALS = 7;

public static void main(String[] args) {
launch(args);
}

@Override
public void start(Stage primaryStage) {

StackPane root = new StackPane();
Canvas canvas = new Canvas(WIDTH, HEIGHT);
root.getChildren().add(canvas);
Scene scene = new Scene(root, WIDTH, HEIGHT);
primaryStage.setScene(scene);

GraphicsContext gc = canvas.getGraphicsContext2D();
drawRose(gc);

primaryStage.show();
}

private void drawRose(GraphicsContext gc) {

double[] petalRadius = {
0.4, 0.55,
0.63, 0.71,
0.78, 0.87,
1.0
};

Color[] petalColors = {
Color.RED,
Color.rgb(255, 128, 128),
Color.YELLOW,
Color.rgb(255, 192, 0),
Color.rgb(255, 255, 0),
Color.rgb(255, 255, 160),
Color.WHITE
};

double centerX = WIDTH / 2.0;
double centerY = HEIGHT / 2.0;

// Draw red rose
gc.setFill(Color.RED);
gc.fillOval(centerX - 20, centerY - 30, 40, 60);

// Draw yellow center
gc.setFill(Color.YELLOW);
gc.fillOval(centerX - 7, centerY - 7, 14, 14);

// Draw other colored roses
for (int i = 0; i < petalRadius.length; i++) {
gc.setFill(petalColors[i]);
gc.fillOval(centerX - 20 * petalRadius[i], centerY - 30 * petalRadius[i], 40 * petalRadius[i], 60 * petalRadius[i]);
}
}
}
```

通过这段代码,我们为你呈现了一个简单的玫瑰花例子。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/javapeixuncl.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年4月25日 上午5:42
下一篇 2023年4月25日 上午5:43

猜你喜欢