• 大小: 26KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-11
  • 语言: Java
  • 标签: ISM  java  

资源简介

用界面实现了ism,很不错的东西,支持支持,主要是图形界面的实现。

资源截图

代码片段和文件信息

package com.ism.Controller;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.GeneralPath;
import java.util.ArrayList;
import java.util.Dictionary;
import java.util.Hashtable;

import javax.swing.JPanel;

public class DrawGraph extends JPanel{
private ArrayList> Graph=new ArrayList>();
private String[] KeyStr;
private Dictionary objectToPoint=new Hashtable();
private Dictionary> causalPair=new Hashtable>();


public DrawGraph(ArrayList> graphString[] keyStrint[][] InitArray){
KeyStr=keyStr;
Graph=graph;
for(int i=0;i ArrayList temcausal=new ArrayList();//临时因果关系
for(int j=0;j {
if(InitArray[i][j]==1){
temcausal.add(j);
}
}
causalPair.put(i temcausal);

}
}
public void paintComponent(Graphics g) {  
        super.paintComponent(g);  
        Graphics2D g2 = (Graphics2D) g;  
        g2.setPaint(Color.black);
        for(int i=0;i         for(int j=0;j         Point endpt=new Point();        
         int l=Graph.get(i).get(j);
        
         Point startpt=new Point();        
         startpt.x=60*(j+1)+75*j+37;
         startpt.y=90*(i+1);
         objectToPoint.put(l startpt);
         DrawEntity(startpt.x-37startpt.yKeyStr[l]g2);
         if(!causalPair.get(l).isEmpty()&&(causalPair.get(l).size()!=0)){
         for(int k=0;k         {
         objectToPoint.get(causalPair.get(l).get(k));
         endpt.x=objectToPoint.get(causalPair.get(l).get(k)).x;
         endpt.y=objectToPoint.get(causalPair.get(l).get(k)).y+30;
         DrawArrowLine(startpt.xstartpt.y endpt.x endpt.y g2);
         }
        
         }
        
         }
        }
//        DrawEntity(2020“ok“g2);
//     DrawArrowLine(8070 20 50 g2);// 这里x1 y1 x2 y2必须要声明并且初始化,而具体声明的位置和初始化的值  
    }  

//画一个方框
public static void DrawEntity(int startx int starty String entityinfo Graphics2D g2)
{
g2.drawRoundRect(startx starty 75 30 5 5);
g2.drawString(entityinfo startx+10 starty+20);
}
//画箭头
 public static void DrawArrowLine(int startx int starty int endx int endy Graphics2D g2)  
    {     
        double H = 10; // 箭头高度  
        double L = 4; // 底边的一半  
        int x3 = 0;  
        int y3 = 0;  
        int x4 = 0;  
        int y4 = 0;  
        double awrad = Math.atan(L / H); // 箭头角度  
        double arraow_len = Math.sqrt(L * L + H * H); // 箭头的长度  
        double[] arrXY_1 = rotateVec(endx - startx endy - starty awrad true arraow_len);  
        double[] arrXY_2 = rotateVec(endx - startx endy - starty -awrad true ar

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-09-28 10:24  ism\
     文件         301  2012-09-28 10:24  ism\.classpath
     文件         379  2012-09-28 10:24  ism\.project
     目录           0  2012-09-28 10:24  ism\.settings\
     文件         598  2012-09-28 10:24  ism\.settings\org.eclipse.jdt.core.prefs
     目录           0  2012-09-28 15:05  ism\bin\
     文件         101  2012-09-28 11:15  ism\bin\applet.applet71348802117940.html
     目录           0  2012-09-28 11:14  ism\bin\com\
     目录           0  2012-09-28 11:14  ism\bin\com\ism\
     目录           0  2012-10-09 21:44  ism\bin\com\ism\Controller\
     文件         504  2012-10-10 09:10  ism\bin\com\ism\Controller\DrawGraph$Point.class
     文件        4888  2012-10-10 09:10  ism\bin\com\ism\Controller\DrawGraph.class
     文件        3024  2012-10-09 11:06  ism\bin\com\ism\Controller\MTableModel.class
     目录           0  2012-10-09 15:02  ism\bin\com\ism\entity\
     文件        5747  2012-10-10 08:32  ism\bin\com\ism\entity\ArrayEntity.class
     目录           0  2012-10-09 09:35  ism\bin\com\ism\frame\
     文件        1165  2012-10-10 08:21  ism\bin\com\ism\frame\ArrayInputframe$1.class
     文件        1180  2012-10-10 08:21  ism\bin\com\ism\frame\ArrayInputframe$2.class
     文件        1054  2012-10-10 08:21  ism\bin\com\ism\frame\ArrayInputframe$3.class
     文件        1661  2012-10-10 08:21  ism\bin\com\ism\frame\ArrayInputframe$4.class
     文件        5874  2012-10-10 08:21  ism\bin\com\ism\frame\ArrayInputframe.class
     文件        1070  2012-10-10 08:21  ism\bin\com\ism\frame\Graphframe.class
     文件         141  2012-09-28 11:14  ism\bin\java.policy.applet
     目录           0  2012-09-28 15:05  ism\src\
     目录           0  2012-09-28 10:26  ism\src\com\
     目录           0  2012-09-28 10:29  ism\src\com\ism\
     目录           0  2012-10-09 14:28  ism\src\com\ism\Controller\
     文件        4770  2012-10-10 09:10  ism\src\com\ism\Controller\DrawGraph.java
     文件        2555  2012-10-09 10:49  ism\src\com\ism\Controller\MTableModel.java
     目录           0  2012-10-09 14:28  ism\src\com\ism\entity\
     文件        6069  2012-10-10 08:32  ism\src\com\ism\entity\ArrayEntity.java
............此处省略3个文件信息

评论

共有 条评论