Hi All,
Can someone please point me to my error. I've been trying to display a
GridCoverage2D object in a JMapFrame. I keep getting the following casting
error. I know I can just use the reader object (and it works) to display the
image, however, I need to be able to display a passed GridCoverage2D object.
Thanks for your help,
Mike
Error:
2011-04-28 16:09:54 SEVERE: org.geotools.feature.simple.SimpleFeatureImpl
cannot be cast to org.geotools.coverage.grid.GridCoverage2D
(StreamingRenderer.fireErrorEvent())
java.lang.ClassCastException: org.geotools.feature.simple.SimpleFeatureImpl
cannot be cast to org.geotools.coverage.grid.GridCoverage2D
org.geotools.renderer.lite.StreamingRenderer.processSymbolizers(StreamingRenderer.java:2219)
org.geotools.renderer.lite.StreamingRenderer.process(StreamingRenderer.java:2158)
org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2014)
org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1934)
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:766)
org.geotools.swing.RenderingExecutor$Task.call(RenderingExecutor.java:149)
org.geotools.swing.RenderingExecutor$Task.call(RenderingExecutor.java:105)
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
java.util.concurrent.FutureTask.run(FutureTask.java:166)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
java.lang.Thread.run(Thread.java:636)
Code:
AbstractGridFormat format = GridFormatFinder.findFormat( rasterFile );
AbstractGridCoverage2DReader reader = format.getReader(rasterFile);
GridCoverage2D grid = reader.read(null);
CoordinateReferenceSystem crs = CRS.decode("EPSG:26911");
MapContext mapcontext = new MapContext(crs);
mapcontext.addLayer( grid, createGreyscaleStyle(1));
JMapFrame frame = new JMapFrame(mapcontext);
frame.setSize(965, 600);
frame.enableStatusBar(true);
frame.setDefaultCloseOperation( JFrame.DISPOSE_ON_CLOSE);
frame.setVisible(true);
private static Style createGreyscaleStyle(int band) {
ContrastEnhancement ce = sf.contrastEnhancement(ff.literal(1.0),
ContrastMethod.NORMALIZE);
SelectedChannelType sct =
sf.createSelectedChannelType(String.valueOf(band), ce);
RasterSymbolizer sym = sf.getDefaultRasterSymbolizer();
ChannelSelection sel = sf.channelSelection(sct);
sym.setChannelSelection(sel);
return SLD.wrapSymbolizers(sym);
}
------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network
management toolset available today. Delivers lowest initial
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Geotools-gt2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users