62,621
社区成员
发帖
与我相关
我的任务
分享
import java.awt.*;
import javax.swing.JFrame;
public class TestCirCles {
public static void main(String[] args) {
// Circle.drawCircle(100, 100, 50);
// System.out.println("hello world");
// Parts.drawCircle(100, 100, 50);
MyCanvas ca = new MyCanvas();
ca.paint();
}
}
class MyCanvas {
static Graphics g1;
static JFrame f;
static Image imag;
static {
f = new JFrame("画图演示");
// 创建一个区域
Canvas canvas = new Canvas();
f.add(canvas);
f.setSize(400, 400);
f.setBackground(Color.white);
f.setVisible(true);
//imag = f.createImage(400,300);
//g1 = imag .getGraphics();
// 要先让组件显示后,才会返回Graphics对象,否则会返回null
g1=canvas.getGraphics();
f.setDefaultCloseOperation(3);
}
int x = 100, y = 100, r = 100, n = 100;
int x0 = 10, y0 = 10;
/**
* 画圆 知识点:引入 double数据类型
*/
public void paint() {
for (int i = 0; i <= 360; i = i + 360 / n) {
// 数据类型double
double cs = Math.cos(i);
double ss = Math.sin(i);
x0 = (int) (x + r * cs);
y0 = (int) (y + r * ss);
g1.drawString("*", x0, y0);
}
}
}
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Ellipse2D;
import javax.swing.JFrame;
public class Circle extends JFrame {
private static final long serialVersionUID = -2420677068593785097L;
public static final int WIDTH = 800;
public static final int HEIGHT = 600;
// static MyPanel panel = new MyPanel();
static Graphics g;
static JFrame f;
static {
f = new JFrame("画图演示");
// 创建一个区域
Canvas canvas = new Canvas();
f.add(canvas);
f.setSize(400, 400);
f.setBackground(Color.white);
f.setVisible(true);
// 要先让组件显示后,才会返回Graphics对象,否则会返回null
g = canvas.getGraphics();
}
public static void drawCircle(double pointX, double pointY, float radius) {
Graphics2D g2 = (Graphics2D) g;
radius = 100;
g.setColor(Color.RED);
Ellipse2D circle = new Ellipse2D.Double();
circle.setFrameFromCenter(pointX, pointY, pointX + radius, pointY
+ radius);
g2.fill(circle);
}
}