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

📄 parallelgatewayview.java

📁 用JGraph编的软件
💻 JAVA
字号:
package org.jgpd.jgraph;import java.awt.BasicStroke;import java.awt.Dimension;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Polygon;import org.jgraph.JGraph;import org.jgraph.graph.CellMapper;import org.jgraph.graph.CellViewRenderer;import org.jgraph.graph.GraphConstants;import org.jgraph.graph.VertexRenderer;import org.jgraph.graph.VertexView;public class ParallelGatewayView extends VertexView{    public static int default_width = 70;    public static int default_height = 70;        public static ParallelGatewayRenderer renderer = new ParallelGatewayRenderer();        public ParallelGatewayView(Object cell, JGraph graph, CellMapper cm) {                super(cell, graph, cm);        }        public CellViewRenderer getRenderer() {                return renderer;        }        public static class ParallelGatewayRenderer extends VertexRenderer {                public void paint(Graphics g) {                        int b = borderWidth;                        Graphics2D g2 = (Graphics2D) g;                        Dimension d = getSize();                        if ( d.width > d.height )                     {                             // Wide and short                             d.width = d.height;                             d.height = d.height;                     }                     else                     {                             // Thin and tall                             d.width = d.width;                             d.height = d.width;                     }                        // Set up x and y arrays for polygon ( which is how we're drawin                        // our diamond shape )                        int [] polyx =  {  0,                                                          (d.width - b)/2,                                                           d.width - b,                                                          (d.width - b)/2 };                        int [] polyy =  { (d.height - b)/2,                                                           0,                                                          (d.height - b)/2,                                                          (d.height - b) };                        boolean tmp = selected;                        if (super.isOpaque()) {                                Polygon poly = new Polygon(polyx, polyy, 4 );                                g.setColor(super.getBackground());                                g2.fillPolygon( poly );                        }                        try {                                setBorder(null);                                setOpaque(false);                                selected = false;                                super.paint(g);                        } finally {                                selected = tmp;                        }                        if (bordercolor != null) {                                g.setColor(bordercolor);                                g2.setStroke(new BasicStroke(b));                                Polygon poly = new Polygon( polyx, polyy, 4 );                                g2.draw(poly);                                g2.setStroke(new BasicStroke(4.0f));                                g2.drawLine(b+d.width/4 , b+d.height/2 , d.width*3/4+b,  b+d.height/2);                                g2.drawLine(b+d.width/2 , b+d.height/4 , b+d.width/2 ,  b+d.height*3/4);                              // g2.drawOval(b+d.width/4 , b+d.height/4 ,( d.width-b)/2, ( d.width-b)/2);                        }                        if (selected) {                                g2.setStroke(GraphConstants.SELECTION_STROKE);                                g.setColor(graph.getHighlightColor());                                Polygon poly = new Polygon( polyx, polyy, 4 );                                g2.draw(poly);                               // System.out.println("x="+b+","+"w="+");                               g2.setStroke(new BasicStroke(4.0f));                               g2.drawLine(b+d.width/4 , b+d.height/2 , d.width*3/4+b,  b+d.height/2);                                g2.drawLine(b+d.width/2 , b+d.height/4 , b+d.width/2 ,  b+d.height*3/4);                        }                }        }}

⌨️ 快捷键说明

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