• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Devaka Cooray
  • Liutauras Vilda
Sheriffs:
  • Jeanne Boyarsky
  • paul wheaton
  • Henry Wong
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Tim Moores
  • Carey Brown
  • Mikalai Zaikin
Bartenders:
  • Lou Hamers
  • Piet Souris
  • Frits Walraven

getting class file in java

 
Ranch Hand
Posts: 59
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
import java.awt.*;
import java.awt.image.*;
import java.io.*;
import java.util.*;
//import src.javax.imageio.*;
//import src.javax.imageio.stream.*;

public class Graph
{
static private final int border =25;
private BufferedImage image;
private double data[];
private int width ,height;
static private final int gridWidth=12,gridHeight=10;
static private final String months[]={
"Jan","Feb","March","Apr","ay","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
public Graph(double data[], int width,int height)
{
this.data=data;
this.width=width;
this.height=height;
}
private void generateImage()
{
image = new BufferedImage(width,height,BufferedImage.TYPE_INT_ARGB);
Graphics2D g2= image.createGraphics();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
GradientPaint paint= new GradientPaint(0,0,Color.white,width,height,Color.lightGray);
g2.setPaint(paint);
g2.fillRect(0,0,width-1,height-1);
g2.setPaint(Color.black);
BasicStroke veryThin= new BasicStroke(1,BasicStroke.CAP_ROUND,BasicStroke.JOIN_ROUND);
BasicStroke thin=new BasicStroke(3,BasicStroke.CAP_ROUND,BasicStroke.JOIN_ROUND);
BasicStroke thick = new BasicStroke(7,BasicStroke.CAP_ROUND,BasicStroke.JOIN_ROUND);
g2.setStroke(thin);
g2.setPaint(new Color(155,155,155));
for(int i=0;i<gridWidth;++i)
{
int x= border+(i*(width-2*border))/(gridWidth-1);
g2.drawLine(x,border,x, height-border);
}
for(int i=0; i<gridHeight;++i)
{
int y=border+(i*(width-2*border))/(gridHeight-1);
g2.drawLine(border,y,width-border,y);
}
g2.setStroke(thick);
g2.setPaint(Color.black);
for(int i=1; i<data.length;++i)
{
int x0= border +
(int)(((width-2*border)*(i-1))/(gridWidth-1));

int y0= border+
(int)(((width-2*border)*data[i-1])/(gridWidth-1));
int x1 = border+
(int)(((height-2*border)*i)/(gridWidth-1));
int y1=border+(int)(((height-2*border)*data[i])/(gridHeight-1));
y0=height-1-y0;
y1=height-1-y1;
g2.drawLine(x0,y0,x1,y1);
}
g2.setStroke(veryThin);
g2.setPaint(Color.darkGray);
Font font = new Font("Courier", Font.BOLD,12);
g2.setFont(font);
for(int i=0;i<12;++i)
{
String month=months[i];
FontMetrics fontMetrics = g2.getFontMetrics();
int stringWidth =fontMetrics.stringWidth(month);
int stringHeight=fontMetrics.getAscent();
int x=border+
(int)(((width +2*border)*(i))/(gridWidth-1))-stringWidth/2;
int y = height-border+stringHeight;
g2.drawString(month,x,y);
}
}
public void write(String filename)throws IOException{
if(image==null)
generateImage();
String suffix=filename.substring(filename.lastIndexOf('.')+1);
Iterator ImageWriters=ImageIO.getImageWritersBySuffix(suffix);
ImageWriter imageWriter=(ImageWriter)imageWriters.next();
if(imageWriter==null)
throw new RuntimeException("Format for"+filename+"not supported");
File file = new File(filename);
ImageOutputStream ios=ImageIO.createImageOutputStream(file);
imageWriter.setOutput(ios);
imageWriter.write(image);
}
static public void main(String args[])throws IOException{
double data0[]={4.2,4.3,5.3,6.5,9.0,8.5,0.2,0.4,1.3,4.3,2.6,7.8};
Graph graph0 = new Graph(data0,400,250);
graph0.write("graph0.png");
double data1[]={0,3.3,1.2,6.6,2.5,8.3,4.7,5,4.7,3.9,2.6,1.1};
Graph graph1= new Graph(data1,400,250);
graph1.write("graph1.png");
}
}

The above code does not produce class file on debugging/compilation? can you pl help
to make it executable.Thanks
C.R.Muthukumar
 
author & internet detective
Posts: 41967
911
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Two comments on the compilation:
1) The commented imports are required (preferable without the "src.")
2) Java is case sensitive. imageWriters is not the same as ImageWriters

In the future, it is helpful to include the compiler error messages with your code. And welcome to JavaRanch!
 
C.R.Muthukumar
Ranch Hand
Posts: 59
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Jeanne Boyarsky:
Two comments on the compilation:
1) The commented imports are required (preferable without the "src.")
2) Java is case sensitive. imageWriters is not the same as ImageWriters

In the future, it is helpful to include the compiler error messages with your code. And welcome to JavaRanch!



C:\jdk1.3\bin\Graph.java:83: cannot resolve symbol
symbol : variable ImageIO
location: class Graph
Iterator ImageWriters=ImageIO.getImageWritersBySuffix(suffix);
^
C:\jdk1.3\bin\Graph.java:84: cannot resolve symbol
symbol : class ImageWriter
location: class Graph
ImageWriter imageWriter=(ImageWriter)ImageWriters.next();
^
C:\jdk1.3\bin\Graph.java:84: cannot resolve symbol
symbol : class ImageWriter
location: class Graph
ImageWriter imageWriter=(ImageWriter)ImageWriters.next(); ^
C:\jdk1.3\bin\Graph.java:88: cannot resolve symbol
symbol : class ImageOutputStream
location: class Graph
ImageOutputStream ios=ImageIO.createImageOutputStream(file);
^
C:\jdk1.3\bin\Graph.java:88: cannot resolve symbol
symbol : variable ImageIO
location: class Graph
ImageOutputStream ios=ImageIO.createImageOutputStream(file);
^
5 errors

Tool completed with exit code 1
As per try , pl find the result of the compilation for ur perusal and needful
Thanks a lot if a solution is forwarded for these errors.
 
Bartender
Posts: 9626
16
Mac OS X Linux Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
The Java Tutorial has a chapter on how to create and use packages.
 
When you have exhausted all possibilities, remember this: you haven't - Edison. Tiny ad:
We need your help - Coderanch server fundraiser
https://coderanch.com/wiki/782867/Coderanch-server-fundraiser
reply
    Bookmark Topic Watch Topic
  • New Topic