java使用StdDraw绘制一个三角形
时间: 2023-06-11 10:04:28 浏览: 54
可以使用以下代码实现:
```java
import edu.princeton.cs.introcs.StdDraw;
public class DrawTriangle {
public static void main(String[] args) {
StdDraw.setCanvasSize(500, 500);
StdDraw.setScale(-2, 2);
double[] x = {0.5, 1.5, 0.5};
double[] y = {0, 0.5, 1};
StdDraw.polygon(x, y);
}
}
```
这将在画布上绘制一个以(0.5, 0) 、(1.5, 0.5) 、(0.5, 1) 为顶点的三角形。
相关问题
java使用StdDraw和海龟图形绘制一个三角形
好的,以下是绘制一个三角形的Java代码:
```java
import edu.princeton.cs.algs4.StdDraw;
public class DrawTriangle {
public static void main(String[] args) {
double x0 = 0.1, y0 = 0.1; // 三角形的第一个点坐标
double x1 = 0.3, y1 = 0.5; // 三角形的第二个点坐标
double x2 = 0.6, y2 = 0.2; // 三角形的第三个点坐标
// 绘制三角形
StdDraw.line(x0, y0, x1, y1);
StdDraw.line(x1, y1, x2, y2);
StdDraw.line(x2, y2, x0, y0);
}
}
```
其中,`StdDraw` 是一个用于绘制基本图形的类,它可以比较方便地绘制直线、矩形、圆形等等。这里我们使用了它的 `line` 方法来绘制三角形的边。三角形的三个点坐标依次为 `(x0, y0)`、`(x1, y1)`、`(x2, y2)`,我们使用三次 `line` 方法将它们相连起来即可。
java使用Turtle绘制一个三角形
好的,以下是使用Java Turtle绘制三角形的代码:
```java
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Point;
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class TurtleTriangle extends JPanel {
private ArrayList<Point> points;
private static final int PANEL_WIDTH = 500;
private static final int PANEL_HEIGHT = 500;
public TurtleTriangle() {
points = new ArrayList<>();
initializePoints();
setPreferredSize(new Dimension(PANEL_WIDTH, PANEL_HEIGHT));
}
private void initializePoints() {
int startX = PANEL_WIDTH / 2;
int startY = PANEL_HEIGHT - 100;
int leftX = startX - 100;
int leftY = PANEL_HEIGHT - 300;
int rightX = startX + 100;
int rightY = PANEL_HEIGHT - 300;
points.add(new Point(startX, startY));
points.add(new Point(leftX, leftY));
points.add(new Point(rightX, rightY));
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.BLACK);
for (int i = 0; i < points.size(); i++) {
int start = i;
int end = (i + 1) % points.size();
int startX = (int) points.get(start).getX();
int startY = (int) points.get(start).getY();
int endX = (int) points.get(end).getX();
int endY = (int) points.get(end).getY();
g.drawLine(startX, startY, endX, endY);
}
}
public static void main(String[] args) {
JFrame frame = new JFrame("TurtleTriangle");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(new TurtleTriangle());
frame.pack();
frame.setVisible(true);
}
}
```
在这个例子中我们使用了一个 `JPanel`,在这个面板中我们使用了 `TurtleTriangle` 类来绘制三角形。在类的构造函数中,我们初始化了三个点,分别代表三角形三个顶点的坐标。在 `paintComponent()` 方法中,我们将三个点以线的形式连接起来,形成一个三角形。
希望这个代码可以解决你的问题,有问题就在问吧。