用Graphics画一个管道,中间带有弧线的那种,该怎么画?上面两根垂直的线,下面两根水平的线,用 两根弧线把他们连接起来,最好能有个例子,谢谢了.PS 能带有drawArc的使用实例最好,有点看不懂

解决方案 »

  1.   

    像drawLine都有始终点坐标
    drawArc的话有始角和弧度 
    只要控制端点咬合就行
      

  2.   

    public static class MYJPanel extends JPanel
        {
            public void paint(Graphics g)
            {
                super.paint(g);
                g.setColor(Color.RED);
                //(390, 100)为左上角,长80,高40的长方形内画椭圆
                g.drawArc(390, 100, 80, 40, 0, 360);
                g.setColor(Color.BLUE);
                g.drawLine(390, 120, 390, 340);
                g.drawLine(470, 120, 470, 340);
                g.setColor(Color.RED);
                //(390, 320)为左上角,长80,高40的长方形内画下半椭圆
                g.drawArc(390, 320, 80, 40, 0, -180);
                
                g.drawArc(100, 340, 40, 80, 0, 360);
                g.setColor(Color.BLUE);
                g.drawLine(120, 340, 390, 340);
                g.drawLine(470, 340, 670, 340);
                g.drawLine(120, 420, 670, 420);
                g.setColor(Color.RED);
                g.drawArc(650, 340, 40, 80, 90, -180);
                
                g.setColor(Color.YELLOW);
                g.drawArc(100, 100, 200, 100, 0, 360);
            }   
        }
        
        public static void main(String[] args)
        {
            
            JFrame frame = new JFrame("Test");
            frame.addWindowListener(new WindowAdapter()
            {
                public void windowClosing(WindowEvent we)
                {
                    System.exit(0);
                }
            });
            
            frame.getContentPane().add(new MYJPanel());
            frame.setSize(750,550);
            frame.show();
        }