Re: [Fwd: Problem using GeotiffWriter]

Yuan,

The sample you supplied is very close to what I started with, which came from a post you made in September of 2004. The problem is that call to GeotiffWriter seems to be short an argument. I looked at the source code for GeotiffWriter, and it seems to me (again, I'm a Java newbie) that this form of call to GeotiffWriter needs one more argument after the boolean, and that argument gets passed to "LatLonRect", and that is where I am currently stuck.

I tried passing 'null' as the argument, thinking that would cause LatLonRect to return a rectangle covering the entire earth, but I got a NullPointerException. I'm attaching the latest incarnation of my code.

BTW, where is there documentation for GeotiffWriter? I don't see any on the netcdf-java documentation site.

Matt


Yuan Ho wrote:

John Caron wrote:


-------- Original Message --------
Subject:     Problem using GeotiffWriter
Date:     Wed, 14 Sep 2005 09:23:19 -0500
From:     Matt Foster <Matthew.Foster@xxxxxxxx>
Organization:     UCAR/Unidata
To:     netcdf-java@xxxxxxxxxxxxxxxx



I'm a serious Java newbie, so be gentle if I've done something stupid here...

I wrote the attached short program, which is based off of a post to this list last year, to read a single element from a netCDF file, and write a GeoTIFF file, however, I get the following error message when I try to compile it with javac...

GeoTifWriter.java:16: cannot resolve symbol
symbol : method writeGrid (java.lang.String,java.lang.String,int,int,boolean)
location: class ucar.nc2.geotiff.GeotiffWriter
writer.writeGrid("/home/mwfoster/MaxT_test.cdf", "MaxT_SFC", 0, 0, false);
          ^

The "caret" symbol is actually under the dot between writer and writeGrid, in case a variable-width font messed that up.

Can someone help me out here?


Matthew,

Here is a small example of using GeotiffWriter class:

import ucar.ma2.*;
import ucar.nc2.*;
import ucar.nc2.dataset.*;
import ucar.nc2.geotiff;
import ucar.nc2.dataset.grid.*;
import ucar.unidata.geoloc.*;
import ucar.unidata.geoloc.projection.*;

import java.io.*;
import java.util.*;

public static void main(String args[]) throws IOException {
   String fileOut = "totalr1.tif";
   GeotiffWriter writer = new GeotiffWriter(fileOut);
writer.writeGrid("2003091116_ruc2.nc", "P_sfc", 0, 0, false);
   writer.close();
}

If this does not work for you, email me your java code.

Yuan


Matt




--
"Those who would sacrifice essential liberties for a little
temporary safety deserve neither liberty nor safety."
-- Benjamin Franklin


import ucar.ma2.*;
import ucar.nc2.*;
import ucar.nc2.dataset.*;
import ucar.nc2.geotiff.*;
import ucar.nc2.dataset.grid.*;
import ucar.unidata.geoloc.*;
import ucar.unidata.geoloc.projection.*;

import java.io.*;
import java.util.*;

class NetcdfToGeotif {
   public static void main(String args[]) throws IOException {
      String fileOut = "/home/mwfoster/netCDF/maxT_test.tiff";
      GeotiffWriter writer = new GeotiffWriter(fileOut);
      writer.writeGrid("/home/mwfoster/MaxT_test.cdf", "MaxT_SFC", 0, 0, false, 
null);
      writer.close();
   }
}