⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 draw.java

📁 用java开发的一段小动画片 包含技术文档和用户手册
💻 JAVA
字号:
////////////////////////////////////////////////////////////////////////////////
//
// Draw.java
//
//    开发者:刘嘉祥
//
////////////////////////////////////////////////////////////////////////////////
//
// 功能:
//     实现在程序中需要调用的各种绘制方法。
//
////////////////////////////////////////////////////////////////////////////////

import java.awt.Graphics2D;
import java.awt.Color;
import java.awt.Rectangle;
import java.awt.geom.Ellipse2D;


public class Draw
{
	  //定义画粗直线的方法drawLine
    static void drawLine(Graphics2D g2d,int x1,int y1,int x2,int y2)
    {
    	  double angle;
    	  double width = Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
    	  
    	  if((x1==x2)&&(y2>=y1))
    	      angle = Math.PI/2;
    	  else if((x1==x2)&&(y2<y1))
    	      angle = -Math.PI/2;
    	  else if(x2-x1>0)
    	      angle = Math.atan((y2-y1)/(double)(x2-x1));
    	  else
    	      angle = Math.atan((y2-y1)/(double)(x2-x1)) + Math.PI;
    	  g2d.translate(x1,y1);
  	    g2d.rotate(angle);
  	    g2d.fill(new Rectangle(0,-3,(int)width,6));
  	    g2d.fill(new Ellipse2D.Double(-3,-3,6,6));
  	    g2d.fill(new Ellipse2D.Double(width-3,-3,6,6));
  	    g2d.rotate(-angle);
  	    g2d.translate(-x1,-y1);
    }//方法drawLine结束
    
    
    //定义画粗边圆/椭圆的方法drawCircle
    static void drawCircle(Graphics2D g2d,int x,int y,int a,int b)
    {
    	  Color c = g2d.getColor();
    	  
    	  g2d.fill(new Ellipse2D.Double(x-a-3,y-b-3,2*(a+3),2*(b+3)));
    	  g2d.setColor(Color.white);
    	  g2d.fill(new Ellipse2D.Double(x-a+3,y-b+3,2*(a-3),2*(b-3)));
    	  g2d.setColor(c);
    }//方法drawCircle结束
    
    
    //定义填充圆/椭圆的方法fillCircle
    static void fillCircle(Graphics2D g2d,int x,int y,int a,int b)
    {
    	  g2d.fill(new Ellipse2D.Double(x-a,y-b,2*a,2*b));
    }//方法fillCircle结束
    
    
    //定义过渡效果的刷屏方法clearScreen
    static void cleanScreen(Graphics2D g2d,int a_frame)
    {	
    	  Color c0 = g2d.getColor();
    	  Color c = new Color(255,255,255,a_frame*255/40);
    	  
    	  if(a_frame==1)
    	      Animation.fadeInSound.play();
    	  g2d.setColor(c);
    	  g2d.fill(new Rectangle(0,0,600,400));
    	  g2d.setColor(c0);
    }//方法clearScreen结束
    
}//类Draw结束

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -