Java中画带有箭头的线段
最近由于要画活动图,所以需要画带有箭头的线段,于是结合有关资料,写出了这个方法。
import java.awt.*;
import javax.swing.*;
import java.awt.geom.*;
public class test//读者可以更改类test的名字,以适合自己定义的.java文件,因为它只是用来测试的。
{
public static void main (String args[]){
DrawFrame frame=new DrawFrame();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setVisible(true);
}
}
class DrawFrame extends JFrame
{
public DrawFrame()
{
setTitle("Activity Diagram");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
// add panel to frame
ArrowLinePanel panel=new ArrowLinePanel();
add(panel);
}
// 活动图窗口大小
public static final int DEFAULT_WIDTH=1000;
public static final int DEFAULT_HEIGHT=800;
}
class ArrowLinePanel extends JPanel
{
// confirm the line position
public ArrowLinePanel()
{
setBackground(Color.white);
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2=(Graphics2D) g;
g2.setPaint(Color.black);
drawAL(x1, y1, x2, y2, g2);//这里x1, y1, x2, y2必须要声明并且初始化,而具体声明的位置和初始化的值
//由编者自己决定,在这里,笔者没有声明它们。
}
public static void drawAL(int sx, int sy, int ex, int ey,Graphics2D g2)
{
double H = 6 ; // 箭头高度
double L = 6 ; // 底边的一半
int x3 = 0 ;
int y3 = 0 ;
int x4 = 0
相关文档:
先来了解一下链表模式的原理:
首先写一个JavaBean,内容是要添加的元素和该元素的节点。
public class NodeBean implements Serializable
{
private Object data; //元素本身
private NodeBean next; //下一个节点
&n ......
1、 类型装载、链接与初始化
Java虚拟机通过装载、链接和初始化一个Java类型,使该类型可以被正在运行的Java程序所使用。其中,装载就是把二进制的Java类型读入Java虚拟机中,而连接就是把这种已经读入虚拟机的二进制形式的类型数据合并到虚拟机的运行状态中去。连接阶段分了三个步骤:验 ......
北京 刘玉强 软件工程师 简历 java php
求职简历
· 基本信息
姓 名:
刘玉强
出生日期:
1988年10月23日
性 别:
男
民 族:
汉族
专 业:
软件技术
健康状况:
健康
E - Mail:
mengxiangbaidu@qq.com
联系电话 ......
基于Java的mp3播放器源代码
(1 folders, 2 files, 1.38 KB, 962.53 KB in total.)
源码
(1 folders, 2 files, 1.38 KB, 961.15 KB in total.)
Java写的一个m ......