十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
画圆一般通过继承JPanel 或者JFrame ,通过调用panel或者frame中的Graphics实例完成画图。
创新互联建站主要为客户提供服务项目涵盖了网页视觉设计、VI标志设计、全网整合营销推广、网站程序开发、HTML5响应式网站建设公司、成都做手机网站、微商城、网站托管及网站维护、WEB系统开发、域名注册、国内外服务器租用、视频、平面设计、SEO优化排名。设计、前端、后端三个建站步骤的完善服务体系。一人跟踪测试的建站服务标准。已经为成都高空作业车租赁行业客户提供了网站营销服务。
java绘图的基本原理:画一个圆
import javax.swing.*;
import java.awt.*;
public class DrawCicle extends JFrame{MyPanel mp=null;public static void main(String[] args) {DrawCicle dc=new DrawCicle();}
public DrawCicle(){mp =new MyPanel();this.add(mp);this.setSize(300, 250);
this.setLocation(600, 300);this.setDefaultCloseOperation(this.EXIT_ON_CLOSE)this.setVisible(true);}}
你先想这道题的思路吧。
首先打印出圆形的话就是在一个60-60这种正方形里面话个圆,你先要知道要画的点的位置对吧。算出所有的点打印出来。就是这个思路。然后是怎么算的问题了
public class SSS {
public static void main(String[] args) {
//半径
int r = 30;
for (int y = 0; y = 2 * r; y += 2) {
long x = Math.round(r - Math.sqrt(2 * r * y - y * y));
long longLength = 2 * (r - x);
for (int i = 0; i = x; i++) {
System.out.print(' ');
}
System.out.print('*');
for (int j = 0; j = longLength; j++) {
System.out.print(' ');
}
System.out.println('*');
}
}
}
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
public class TestDrawArc extends JFrame{
MyCanvas1 cnv;
public TestDrawArc(){
super("半圆");
cnv = new MyCanvas1();
this.add(cnv);
this.setSize(500, 500);
this.setVisible(true);
}
public static void main(String[] args) {
new TestDrawArc();
}
}
class MyCanvas1 extends Canvas{
public MyCanvas1(){
super();
}
public void paint(Graphics g){
super.paint(g);
g.setColor(Color.red);
g.drawArc(50, 50, 300, 300, 0, 180);
}
}
drawArc有6个参数:
前面两个圆的外切矩形左上角的坐标点,中间两个是外切矩形的宽和高,倒数第二个是弧的起始角度,最后一个是弧的跨越角度。
靠,楼上的回答那么长啊,只要一个函数,就是
drawOval(int
x,int
y,int
w,int
h);
这是是画椭圆形的函数,但是它也可以画圆形。
比如
drawOval(100,100,50,50);
就在坐标50,50画一个直径100的圆,只要把,最后的2个参数设成一样就是一个圆。要画直径200的话,就把最后2个参数设成200,200
一切OK了
public class Exam
{
public static void main(String[] args)
{
Circle c=new Circle(3,4,5);
System.out.printf("圆心:(%f,%f),半径:%f,面积:%f",c.x,c.y,c.r,c.countArea());
}
}
class Circle
{
public Circle()
{
this(0,0,0);
}
public Circle(double x,double y,double r)
{
this.x=x;
this.y=y;
this.r=r;
}
public double countArea()
{
return Math.PI*r*r;
}
/*private*/public double x,y,r;
}
代码如下:
import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class TestSw extends JFrame { public static void main(String[] args) { new TestSw(); } public TestSw(){ super("Test"); this.setSize(new Dimension(400,300)); this.setContentPane(new Mypane()); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } class Mypane extends JPanel{ public void paint(Graphics g) { super.paint(g); g.setColor(Color.red); g.setXORMode(Color.white); g.drawArc(20, 20, 100, 100, 0, 360); ///此方法将画一个直径100的圆.红色. } } }