Simone, thanks so much for your help, here it is; code snippet: somewhere in my processing chain, I set up cell values as follows: WritableRaster myraster myraster.setSample(xx, yy, 0, 6);
and then: GridCoverageFactory gcFactory = new GridCoverageFactory(); GridCoverage2D gchor = gcFactoryhor.create("test", myraster, envelope); File sldfile = new File("C:\\dev\\GTViewshed\\tmp\\gcstyle.sld"); SLDParser stylereader = new SLDParser(new StyleFactoryImpl() , sldfile); StyledLayerDescriptor sld = stylereader.parseSLD(); // the RasterSymbolizer Helper SubchainStyleVisitorCoverageProcessingAdapter rsh_SLD = new RasterSymbolizerHelper(gchor, null); // build the RasterSymbolizer final UserLayer nl = (UserLayer) sld.getStyledLayers()[0]; final Style style = nl.getUserStyles()[0]; final FeatureTypeStyle fts = style.getFeatureTypeStyles()[0]; final Rule rule = fts.getRules()[0]; final RasterSymbolizer rs_1 = (RasterSymbolizer) rule.getSymbolizers()[0]; // visit the RasterSymbolizer //GridCoverage2D tmpgc = (GridCoverage2D)rsh_SLD.getOutput(); //tmpgc.show(); rsh_SLD.visit(rs_1); ((GridCoverage2D)rsh_SLD.getOutput()).show(); gdalinfo horizon5.tif: Driver: GTiff/GeoTIFF Files: horizon5.tif Size is 240, 301 Coordinate System is: GEOGCS["WGS 84", DATUM["WGS_1984", SPHEROID["WGS 84",6378137,298.2572235630016, AUTHORITY["EPSG","7030"]], AUTHORITY["EPSG","6326"]], PRIMEM["Greenwich",0], UNIT["degree",0.0174532925199433], AUTHORITY["EPSG","4326"]] Origin = (7.000416666666666,46.199584717607976) Pixel Size = (0.000833333333333,-0.000830564784053) Metadata: AREA_OR_POINT=Point TIFFTAG_XRESOLUTION=1 TIFFTAG_YRESOLUTION=1 TIFFTAG_RESOLUTIONUNIT=1 (unitless) Image Structure Metadata: INTERLEAVE=BAND Corner Coordinates: Upper Left ( 7.0004167, 46.1995847) ( 7d 0'1.50"E, 46d11'58.50"N) Lower Left ( 7.0004167, 45.9495847) ( 7d 0'1.50"E, 45d56'58.50"N) Upper Right ( 7.2004167, 46.1995847) ( 7d12'1.50"E, 46d11'58.50"N) Lower Right ( 7.2004167, 45.9495847) ( 7d12'1.50"E, 45d56'58.50"N) Center ( 7.1004167, 46.0745847) ( 7d 6'1.50"E, 46d 4'28.50"N) Band 1 Block=240x17 Type=Int16, ColorInterp=Gray the sld : <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd?" version="1.0.0"> <UserLayer> <Name>raster_layer</Name> <LayerFeatureConstraints> <FeatureTypeConstraint/> </LayerFeatureConstraints> <UserStyle> <Name>raster</Name> <Title>A boring default style</Title> <Abstract>A sample style for rasters</Abstract> <FeatureTypeStyle> <FeatureTypeName>Feature</FeatureTypeName> <Rule> <RasterSymbolizer> <!-- ColorMap type="ramp" extended="true"> <ColorMapEntry color="#ffffff" quantity="-1.0" opacity="1.0"/> <ColorMapEntry color="#000000" quantity="0.0" opacity="1.0"/> <ColorMapEntry color="#ffff00" quantity="1.0" opacity="1.0"/> <ColorMapEntry color="#00ff00" quantity="2.0" opacity="1.0"/> <ColorMapEntry color="#00ffff" quantity="3.0" opacity="1.0"/> <ColorMapEntry color="#0000ff" quantity="4.0" opacity="1.0"/> <ColorMapEntry color="#ff00ff" quantity="5.0" opacity="1.0"/> <ColorMapEntry color="#ff0000" quantity="6.0" opacity="1.0"/> </ColorMap --> <Opacity>1.0</Opacity> <ChannelSelection> <GrayChannel> <SourceChannelName>1</SourceChannelName> </GrayChannel> </ChannelSelection> </RasterSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </UserLayer> </StyledLayerDescriptor> thanks, Martin Simone Giannecchini wrote: > Ciao Martin, > yeah, you are correct. > > However, I need to know a few things (yesterday I sent you back stuff > in a rush I might have given you bad code :-) ). > > 1> your sld > 2> code snippet > 3> gdalinfo of a sample geotiff > > > Simone. > ------------------------------------------------------- > Ing. Simone Giannecchini > GeoSolutions S.A.S. > Owner - Software Engineer > Via Carignoni 51 > 55041 Camaiore (LU) > Italy > > phone: +39 0584983027 > fax: +39 0584983027 > mob: +39 333 8128928 > > > http://www.geo-solutions.it > http://simboss.blogspot.com/ > http://www.linkedin.com/in/simonegiannecchini > > ------------------------------------------------------- > > > > On Tue, Feb 17, 2009 at 12:25 PM, Martin Tomko <martin.to...@geo.uzh.ch> > wrote: > >> Hi Simone, >> thanks for the exaplanation. I would still like to use the acceleration >> provided through the mlib wrapper, is there a way to use it through maven? >> >> Regarding the colors: all the cells are displayed in shades of grey, despite >> my styling that contains something like: >> <ColorMapEntry color="#ffffff" quantity="-1.0" opacity="1.0"/> >> <ColorMapEntry color="#000000" quantity="0.0" opacity="1.0"/> >> <ColorMapEntry color="#ffff00" quantity="1.0" opacity="1.0"/> >> <ColorMapEntry color="#00ff00" quantity="2.0" opacity="1.0"/> >> <ColorMapEntry color="#00ffff" quantity="3.0" opacity="1.0"/> >> <ColorMapEntry color="#0000ff" quantity="4.0" opacity="1.0"/> >> <ColorMapEntry color="#ff00ff" quantity="5.0" opacity="1.0"/> >> <ColorMapEntry color="#ff0000" quantity="6.0" opacity="1.0"/> >> So, for instance, I would assume cells with a value of 6 to be rendered as >> #ff0000 (red), is that right? >> >> Thanks >> Martin >> >> Simone Giannecchini wrote: >> >>> Ciao Martin, >>> what you are seeing is just a warning, the only consequence (or at >>> least the one you should care of) is that JAI will work in pure java >>> mode, withou native acceleration. >>> >>> About the shaded gray, can you be more specific? >>> >>> >>> Simone. >>> >>> >>> ------------------------------------------------------- >>> Ing. Simone Giannecchini >>> GeoSolutions S.A.S. >>> Owner - Software Engineer >>> Via Carignoni 51 >>> 55041 Camaiore (LU) >>> Italy >>> >>> phone: +39 0584983027 >>> fax: +39 0584983027 >>> mob: +39 333 8128928 >>> >>> >>> http://www.geo-solutions.it >>> http://simboss.blogspot.com/ >>> http://www.linkedin.com/in/simonegiannecchini >>> >>> ------------------------------------------------------- >>> >>> >>> >>> On Tue, Feb 17, 2009 at 11:46 AM, Martin Tomko <martin.to...@geo.uzh.ch> >>> wrote: >>> >>> >>>> Dear Simone, >>>> thank you very much for the simplified sld and the code. Indeed, there is >>>> progress: the change to the last two lines : >>>> >>>> rsh.visit(rs); >>>> ((GridCoverage2D)rsh.getOutput()).show(); >>>> >>>> helped. I guess this is the way it should be included in the tutorial as >>>> well. However, not all is good yet - while I get the output, it is all >>>> only >>>> in shades of grey, and I am getting the followng error (see stack trace >>>> at >>>> the end of the message). My reading is that it results from the missing >>>> library (I think the JAI libraries, specially mlibwrapper_jai.jar ). Now, >>>> I >>>> did not install the jai on my machine, as I ues maven to handle my >>>> classpaths. I searched for a dependency for mlibwrapper_jai.jar without >>>> success (tried: >>>> <dependency> >>>> <groupId>javax.media</groupId> >>>> <artifactId>mlibwrapper_jai</artifactId> >>>> <version>${jai.version}</version> >>>> </dependency>) >>>> but that throws errors. Even in mvnbrowser there is not artefact declared >>>> for this class. I have found soem discussion pointing to this requirement >>>> in >>>> the new geotools >>>> >>>> (http://www.mail-archive.com/geotools-de...@lists.sourceforge.net/msg16471.html). >>>> Is there a way to run this without the mlibwrapper_jai yet, or a way to >>>> add this as a dependency in the maven build? As I am going to package my >>>> program as a webservice, I cannot rely on external installation of jai, I >>>> am >>>> afraid. >>>> >>>> Thanks a lot for all the help. >>>> >>>> Martin >>>> >>>> >>>> >>>> >>>> Feb 17, 2009 11:37:13 AM org.geotools.styling.SLDParser parseUserLayer >>>> INFO: layer name: raster_layer >>>> Error: Could not find mediaLib accelerator wrapper classes. Continuing in >>>> pure Java mode. >>>> Occurs in: com.sun.media.jai.mlib.MediaLibAccessor >>>> java.lang.NoClassDefFoundError: com/sun/medialib/mlib/Image >>>> at >>>> com.sun.media.jai.mlib.MediaLibAccessor$1.run(MediaLibAccessor.java:248) >>>> at java.security.AccessController.doPrivileged(Native Method) >>>> at >>>> >>>> com.sun.media.jai.mlib.MediaLibAccessor.setUseMlib(MediaLibAccessor.java:245) >>>> at >>>> >>>> com.sun.media.jai.mlib.MediaLibAccessor.useMlib(MediaLibAccessor.java:177) >>>> at >>>> >>>> com.sun.media.jai.mlib.MediaLibAccessor.isMediaLibCompatible(MediaLibAccessor.java:357) >>>> at com.sun.media.jai.mlib.MlibExtremaRIF.create(MlibExtremaRIF.java:44) >>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>> at >>>> >>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >>>> at >>>> >>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >>>> at java.lang.reflect.Method.invoke(Method.java:597) >>>> at javax.media.jai.FactoryCache.invoke(FactoryCache.java:122) >>>> at >>>> >>>> javax.media.jai.OperationRegistry.invokeFactory(OperationRegistry.java:1674) >>>> at >>>> >>>> javax.media.jai.ThreadSafeOperationRegistry.invokeFactory(ThreadSafeOperationRegistry.java:473) >>>> at javax.media.jai.registry.RIFRegistry.create(RIFRegistry.java:332) >>>> at javax.media.jai.RenderedOp.createInstance(RenderedOp.java:819) >>>> at javax.media.jai.RenderedOp.createRendering(RenderedOp.java:867) >>>> at javax.media.jai.RenderedOp.getRendering(RenderedOp.java:888) >>>> at javax.media.jai.RenderedOp$1.getPropertyNames(RenderedOp.java:1791) >>>> at >>>> >>>> javax.media.jai.PropertyEnvironment.mapDefaults(PropertyEnvironment.java:270) >>>> at >>>> >>>> javax.media.jai.PropertyEnvironment.getPropertyNames(PropertyEnvironment.java:125) >>>> at >>>> >>>> javax.media.jai.WritablePropertySourceImpl.addProperties(WritablePropertySourceImpl.java:298) >>>> at javax.media.jai.RenderedOp.createPropertySource(RenderedOp.java:1817) >>>> at javax.media.jai.RenderedOp.getProperty(RenderedOp.java:1968) >>>> at >>>> org.geotools.image.ImageWorker.getComputedProperty(ImageWorker.java:585) >>>> at org.geotools.image.ImageWorker.getExtremas(ImageWorker.java:605) >>>> at org.geotools.image.ImageWorker.rescaleToBytes(ImageWorker.java:748) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.RasterSymbolizerHelper.execute(RasterSymbolizerHelper.java:108) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.RasterSymbolizerHelper.execute(RasterSymbolizerHelper.java:48) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.StyleVisitorCoverageProcessingNodeAdapter$1.execute(StyleVisitorCoverageProcessingNodeAdapter.java:140) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.checkExecuted(BaseCoverageProcessingNode.java:235) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.getOutput(BaseCoverageProcessingNode.java:337) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.getOutput(BaseCoverageProcessingNode.java:42) >>>> at >>>> >>>> org.geotools.renderer.lite.gridcoverage2d.StyleVisitorCoverageProcessingNodeAdapter.getOutput(StyleVisitorCoverageProcessingNodeAdapter.java:180) >>>> at ch.uzh.geo.tomko.GTViewshed.GTtest.main(GTtest.java:209) >>>> Caused by: java.lang.ClassNotFoundException: com.sun.medialib.mlib.Image >>>> at java.net.URLClassLoader$1.run(URLClassLoader.java:200) >>>> at java.security.AccessController.doPrivileged(Native Method) >>>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188) >>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:306) >>>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) >>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:251) >>>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) >>>> ... 34 more >>>> >>>> >>>> >>>> >>>> Simone Giannecchini wrote: >>>> >>>> >>>>> Ciao Martin, >>>>> I copied and pasted (with few modifications) your stile inside the >>>>> renderer tests and it worked. I am attaching it to this email. >>>>> >>>>> The code used is as follows: >>>>> >>>>> RasterSymbolizerHelper rsh = new >>>>> RasterSymbolizerHelper(gc, >>>>> null); >>>>> final UserLayer nl = (UserLayer) sld.getStyledLayers()[0]; >>>>> final Style style = nl.getUserStyles()[0]; >>>>> final FeatureTypeStyle fts = >>>>> style.getFeatureTypeStyles()[0]; >>>>> final Rule rule = fts.getRules()[0]; >>>>> RasterSymbolizer rs = (RasterSymbolizer) >>>>> rule.getSymbolizers()[0]; >>>>> rsh.visit(rs); >>>>> ((GridCoverage2D)rsh.getOutput()).show(); >>>>> >>>>> What are the characteristics of your data? A gdalinfo might help. >>>>> >>>>> Let me know if this works. >>>>> >>>>> Simone. >>>>> ------------------------------------------------------- >>>>> Ing. Simone Giannecchini >>>>> GeoSolutions S.A.S. >>>>> Owner - Software Engineer >>>>> Via Carignoni 51 >>>>> 55041 Camaiore (LU) >>>>> Italy >>>>> >>>>> phone: +39 0584983027 >>>>> fax: +39 0584983027 >>>>> mob: +39 333 8128928 >>>>> >>>>> >>>>> http://www.geo-solutions.it >>>>> http://simboss.blogspot.com/ >>>>> http://www.linkedin.com/in/simonegiannecchini >>>>> >>>>> ------------------------------------------------------- >>>>> >>>>> >>>>> >>>>> On Mon, Feb 16, 2009 at 6:15 PM, Martin Tomko <martin.to...@geo.uzh.ch> >>>>> wrote: >>>>> >>>>> >>>>> >>>>>> Hi Simone, >>>>>> I used the one in your example, with changed values that are to be >>>>>> mapped, >>>>>> as follows: >>>>>> Thanks >>>>>> Martin >>>>>> >>>>>> <?xml version="1.0" encoding="UTF-8" ?> >>>>>> - <#> <StyledLayerDescriptor xmlns="*http://www.opengis.net/sld*" >>>>>> xmlns:ogc="*http://www.opengis.net/ogc*" >>>>>> xmlns:xlink="*http://www.w3.org/1999/xlink*" >>>>>> xmlns:xsi="*http://www.w3.org/2001/XMLSchema-instance*" >>>>>> xsi:schemaLocation="*http://www.opengis.net/sld >>>>>> http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd?*" >>>>>> version="*1.0.0*"> >>>>>> - <#> <UserLayer> >>>>>> <Name>raster_layer</Name> >>>>>> - <#> <LayerFeatureConstraints> >>>>>> <FeatureTypeConstraint /> >>>>>> </LayerFeatureConstraints> >>>>>> - <#> <UserStyle> >>>>>> <Name>raster</Name> >>>>>> <Title>A boring default style</Title> >>>>>> <Abstract>A sample style for rasters</Abstract> >>>>>> - <#> <FeatureTypeStyle> >>>>>> <FeatureTypeName>Feature</FeatureTypeName> >>>>>> - <#> <Rule> >>>>>> - <#> <RasterSymbolizer> >>>>>> - <#> <!-- >>>>>> >>>>>> ColorMap type="ramp" extended="true"> >>>>>> <ColorMapEntry color="#000000" quantity="-1.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#ff0000" quantity="0.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#ffff00" quantity="1.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#00ff00" quantity="2.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#00ffff" quantity="3.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#0000ff" quantity="4.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#ff00ff" quantity="5.0" opacity="1.0"/> >>>>>> <ColorMapEntry color="#ffffff" quantity="6.0" opacity="1.0"/> >>>>>> </ColorMap >>>>>> --> >>>>>> <Opacity>1.0</Opacity> >>>>>> - <#> <ChannelSelection> >>>>>> - <#> <GrayChannel> >>>>>> <SourceChannelName>1</SourceChannelName> >>>>>> - <#> <ContrastEnhancement> >>>>>> <Normalize /> >>>>>> </ContrastEnhancement> >>>>>> </GrayChannel> >>>>>> </ChannelSelection> >>>>>> - <#> <ContrastEnhancement> >>>>>> <GammaValue>1</GammaValue> >>>>>> </ContrastEnhancement> >>>>>> </RasterSymbolizer> >>>>>> </Rule> >>>>>> </FeatureTypeStyle> >>>>>> </UserStyle> >>>>>> </UserLayer> >>>>>> </StyledLayerDescriptor> >>>>>> >>>>>> >>>>>> Simone Giannecchini wrote: >>>>>> >>>>>> >>>>>> >>>>>>> Ciao Martin, >>>>>>> please, send over the SLD file you are using. >>>>>>> >>>>>>> >>>>>>> Simone. >>>>>>> ------------------------------------------------------- >>>>>>> Ing. Simone Giannecchini >>>>>>> GeoSolutions S.A.S. >>>>>>> Owner - Software Engineer >>>>>>> Via Carignoni 51 >>>>>>> 55041 Camaiore (LU) >>>>>>> Italy >>>>>>> >>>>>>> phone: +39 0584983027 >>>>>>> fax: +39 0584983027 >>>>>>> mob: +39 333 8128928 >>>>>>> >>>>>>> >>>>>>> http://www.geo-solutions.it >>>>>>> http://simboss.blogspot.com/ >>>>>>> http://www.linkedin.com/in/simonegiannecchini >>>>>>> >>>>>>> ------------------------------------------------------- >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Mon, Feb 16, 2009 at 5:57 PM, Martin Tomko >>>>>>> <martin.to...@geo.uzh.ch> >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hi Simone, >>>>>>>> I have solved the Style factory problem as follows: >>>>>>>> SLDParser stylereader = new SLDParser(new StyleFactoryImpl() , >>>>>>>> sldfile); >>>>>>>> I have imported the UserLayer, Style and all following classess from >>>>>>>> org.geotools.styling (it seems that classes with the same name are >>>>>>>> also >>>>>>>> in >>>>>>>> org.opemgis...). The methods called are shown as deprecated (I work >>>>>>>> with >>>>>>>> 2.5-SNAPSHOT thorugh maven). Anyway, I tried to use them. >>>>>>>> >>>>>>>> I am not able to run your example because of the line: >>>>>>>> rsh_SLD.visit(rs_1).show(); >>>>>>>> >>>>>>>> where >>>>>>>> SubchainStyleVisitorCoverageProcessingAdapter rsh_SLD = new >>>>>>>> RasterSymbolizerHelper(gc, null); >>>>>>>> final RasterSymbolizer rs_1 = (RasterSymbolizer) >>>>>>>> rule.getSymbolizers()[0]; >>>>>>>> >>>>>>>> where show() cannot be invoked on a type void. Any idea why this is? >>>>>>>> I tried a workaround (also tried through theexecute method): >>>>>>>> GridCoverage2D tmpgc = (GridCoverage2D)rsh_SLD.getOutput(); >>>>>>>> tmpgc.show(); >>>>>>>> >>>>>>>> but I am getting the following error: >>>>>>>> Feb 16, 2009 5:49:01 PM org.geotools.styling.SLDParser parseUserLayer >>>>>>>> INFO: layer name: raster_layer >>>>>>>> Exception in thread "main" >>>>>>>> org.geotools.coverage.processing.CoverageProcessingException: >>>>>>>> java.lang.NullPointerException >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.getOutput(BaseCoverageProcessingNode.java:339) >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.getOutput(BaseCoverageProcessingNode.java:42) >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.StyleVisitorCoverageProcessingNodeAdapter.getOutput(StyleVisitorCoverageProcessingNodeAdapter.java:180) >>>>>>>> at ch.uzh.geo.tomko.GTViewshed.GTtest.main(GTtest.java:207) >>>>>>>> Caused by: java.lang.NullPointerException >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.RasterSymbolizerHelper.execute(RasterSymbolizerHelper.java:69) >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.RasterSymbolizerHelper.execute(RasterSymbolizerHelper.java:48) >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.StyleVisitorCoverageProcessingNodeAdapter$1.execute(StyleVisitorCoverageProcessingNodeAdapter.java:140) >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.checkExecuted(BaseCoverageProcessingNode.java:235) >>>>>>>> at >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> org.geotools.renderer.lite.gridcoverage2d.BaseCoverageProcessingNode.getOutput(BaseCoverageProcessingNode.java:337) >>>>>>>> ... 3 more >>>>>>>> >>>>>>>> Any help more than welcome, >>>>>>>> Martin >>>>>>>> >>>>>>>> >>>>>>>> Simone Giannecchini wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Ciao Martin, >>>>>>>>> a way to achieve that is by using the RasterSymbolizer (2.5.0 and >>>>>>>>> successive releases). >>>>>>>>> See >>>>>>>>> http://docs.codehaus.org/display/GEOTOOLS/Raster+Symbolizer+support >>>>>>>>> for more information. >>>>>>>>> >>>>>>>>> >>>>>>>>> Simone. >>>>>>>>> ------------------------------------------------------- >>>>>>>>> Ing. Simone Giannecchini >>>>>>>>> GeoSolutions S.A.S. >>>>>>>>> Owner - Software Engineer >>>>>>>>> Via Carignoni 51 >>>>>>>>> 55041 Camaiore (LU) >>>>>>>>> Italy >>>>>>>>> >>>>>>>>> phone: +39 0584983027 >>>>>>>>> fax: +39 0584983027 >>>>>>>>> mob: +39 333 8128928 >>>>>>>>> >>>>>>>>> >>>>>>>>> http://www.geo-solutions.it >>>>>>>>> http://simboss.blogspot.com/ >>>>>>>>> http://www.linkedin.com/in/simonegiannecchini >>>>>>>>> >>>>>>>>> ------------------------------------------------------- >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Mon, Feb 16, 2009 at 3:59 PM, Martin Tomko >>>>>>>>> <martin.to...@geo.uzh.ch> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Dear all, >>>>>>>>>> I am creating a gridcoverage2D (and consequently a geotiff, based >>>>>>>>>> on >>>>>>>>>> processing of a source geotiff DEM), and I want to quickly >>>>>>>>>> visualize >>>>>>>>>> the >>>>>>>>>> results of the analysis. Instead of opening it in some GIS, I would >>>>>>>>>> like >>>>>>>>>> to assign a color model to the result.and display it through the >>>>>>>>>> show() >>>>>>>>>> method. I tried to change the viewtype, but it does not seem to >>>>>>>>>> help. >>>>>>>>>> >>>>>>>>>> My GridCoverage2D is created as follows: >>>>>>>>>> >>>>>>>>>> WritableRaster hor = ...; >>>>>>>>>> GridCoverage2D gchor = gcFactoryhor.create("hor", hor, env); >>>>>>>>>> gchor.view(ViewType.GEOPHYSICS); >>>>>>>>>> gchor.show(); >>>>>>>>>> >>>>>>>>>> and I use a GeoTiffWriter to output the geoTiff. Note that ArcMap >>>>>>>>>> open >>>>>>>>>> the geotiff fine (requiring classification to assign colors), as >>>>>>>>>> well >>>>>>>>>> as >>>>>>>>>> a normal image viewer (e.g., XnView), but the result is just a >>>>>>>>>> binary >>>>>>>>>> nodata/anydata black and white rendering. >>>>>>>>>> >>>>>>>>>> I see that it is possible to assign colors in the GridCoverage2D >>>>>>>>>> gchor >>>>>>>>>> = >>>>>>>>>> gcFactoryhor.create(...) part, but I am not sure how to map the >>>>>>>>>> values >>>>>>>>>> in the raster to the colors. Any hints welcome. >>>>>>>>>> >>>>>>>>>> Thanks >>>>>>>>>> Martin >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ------------------------------------------------------------------------------ >>>>>>>>>> Open Source Business Conference (OSBC), March 24-25, 2009, San >>>>>>>>>> Francisco, >>>>>>>>>> CA >>>>>>>>>> -OSBC tackles the biggest issue in open source: Open Sourcing the >>>>>>>>>> Enterprise >>>>>>>>>> -Strategies to boost innovation and cut costs with open source >>>>>>>>>> participation >>>>>>>>>> -Receive a $600 discount off the registration fee with the source >>>>>>>>>> code: >>>>>>>>>> SFAD >>>>>>>>>> http://p.sf.net/sfu/XcvMzF8H >>>>>>>>>> _______________________________________________ >>>>>>>>>> Geotools-gt2-users mailing list >>>>>>>>>> Geotools-gt2-users@lists.sourceforge.net >>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> -- >>>>>> Martin Tomko >>>>>> Postdoctoral Research Assistant Geographic Information Systems >>>>>> Division >>>>>> Department of Geography >>>>>> University of Zurich - Irchel >>>>>> Winterthurerstr. 190 >>>>>> CH-8057 Zurich, Switzerland >>>>>> >>>>>> email: martin.to...@geo.uzh.ch >>>>>> site: http://www.geo.uzh.ch/~mtomko >>>>>> mob: +41-788 629 558 >>>>>> tel: +41-44-6355256 >>>>>> fax: +41-44-6356848 >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>> >>>> >>> >>> >> >> > > > -- Martin Tomko Postdoctoral Research Assistant Geographic Information Systems Division Department of Geography University of Zurich - Irchel Winterthurerstr. 190 CH-8057 Zurich, Switzerland email: martin.to...@geo.uzh.ch site: http://www.geo.uzh.ch/~mtomko mob: +41-788 629 558 tel: +41-44-6355256 fax: +41-44-6356848 ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Geotools-gt2-users mailing list Geotools-gt2-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users