Java/Advanced Graphics/Vector

Материал из Java эксперт
Версия от 09:48, 1 июня 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Vector data Graph

   <source lang="java">

import java.awt.*; import java.applet.*; import java.net.URL; import graph.*; /*************************************************************************

    • Applet example1b
    • Version 1.0 September 1996
    • Copyright (C) 1996 Leigh Brookshaw
    • This program is free software; you can redistribute it and/or modify
    • it under the terms of the GNU General Public License as published by
    • the Free Software Foundation; either version 2 of the License, or
    • (at your option) any later version.
    • This program is distributed in the hope that it will be useful,
    • but WITHOUT ANY WARRANTY; without even the implied warranty of
    • MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    • GNU General Public License for more details.
    • You should have received a copy of the GNU General Public License
    • along with this program; if not, write to the Free Software
    • Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
    • This is a simple applet that demonstrates how to use the basic features
    • of the Plotting Class library. The data is vector data calculated
    • locally by the applet
                                                                                                                                                  • /

public class example1b extends Applet {

     G2Dint graph1;
     VectorSet data1;
     Axis    xaxis1;
     Axis    yaxis1;
     double data[];
     int npx = 20;
     int npy = 20;
     Label title;
     public void init() {
       int i;
       int j;
       int count;
       int kount;
       double x, y;
       double data[] = new double[4*npx*npy];

/*

    • Get the passed parameters
  • /
       String st = "TITLE";

/*

    • Create the Graph instance and modify the default behaviour
  • /
       graph1 = new G2Dint();

// graph1.square = true;

       graph1.drawzero = false;
       graph1.drawgrid = false;
       graph1.setDataBackground(new Color(255,230,200));

/*

    • Build the title
  • /
       title = new Label(st, Label.CENTER);
       title.setFont(new Font("TimesRoman",Font.PLAIN,20));
       this.setLayout( new BorderLayout() );
       this.add("North", title);
       this.add("Center", graph1);

/*

    • Calculate the Vector Set.
  • /
       count = 0;
       kount = 0;
       for(j=0; j<npy; j++) {
          y = -1.0 + j*2.0/((double)(npy-1));
          for(i=0; i<npx; i++) {
             x = -1.0 + i*2.0/((double)(npx-1));
       
             if( x*x + y*y <= 1 ) {
                kount++;
                
                data[count++] = x;
                data[count++] = y;
                data[count++] = x;
                data[count++] = y;
             }
          }
       }
       try {
             data1 = new VectorSet(data,kount);
       } catch(Exception e) {
   System.out.println("Failed to load Vector Set!");
       }
 /*
 ** Set up the data
 */
       graph1.borderTop = 50;
       graph1.borderRight = 40;
       data1.linecolor   =  Color.red;
       data1.legend("Standard Vector");

/*

    • Attach the data set to the graph
  • /
       graph1.attachDataSet(data1);

/*

    • Attach data set to the Xaxes
  • /
       xaxis1 = graph1.createXAxis();
       xaxis1.attachDataSet(data1);
       xaxis1.setTitleText("Xaxis");
       xaxis1.setTitleFont(new Font("TimesRoman",Font.PLAIN,20));
       xaxis1.setLabelFont(new Font("Helvetica",Font.PLAIN,15));

/*

    • Attach the data set to the YAxis
  • /
       yaxis1 = graph1.createYAxis();
       yaxis1.attachDataSet(data1);
       yaxis1.setTitleText("Yaxis");
       yaxis1.setTitleFont(new Font("TimesRoman",Font.PLAIN,20));
       yaxis1.setLabelFont(new Font("Helvetica",Font.PLAIN,15));
     }
     public static void main(String[] a){
        javax.swing.JFrame f = new javax.swing.JFrame();
        Applet app = new example1b();
        app.init();
        
        f.getContentPane().add (app);
        f.pack();
        f.setSize (new Dimension (500, 500));
        f.setVisible(true);
     }

}

      </source>