Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: R: [udig-devel] Udig 1.1.1 problems to read sample value in geotiff 16 bit

Hi Pasquale,
I don't have lots of time right now, but very quickly:

- in your getSample method did you check if the called method enters
the right type?
- did you check whether the geoRes you get as Gridcoverage2d is of
type rendered (for visualization) or geophisical view? I assume you
will need the geophisical one.

Does this help you a bit further?

Ciao
Andrea





On Tue, Feb 10, 2009 at 3:42 PM, Pasquale Paola <pasquale.paola@xxxxxx> wrote:
> This is my core code:
>                                ILayer layer = geoOpt.getLayer();
>                                GridCoverage2D geoRes = null;
>                                /*
>                                 * List<IGeoResource> bobobo =
> layer.getGeoResources(); for
>                                 * (IGeoResource item : bobobo) {
> GridCoverage geo =
>                                 * item.resolve(GridCoverage.class, new
> NullProgressMonitor());
>                                 * geoRes = (GridCoverage2D) geo;
> item.getInfo(new
>                                 * NullProgressMonitor());
>                                 *
>                                 * if (geoRes != null) break; }
>                                 */
>
>                                geoRes = (GridCoverage2D)
> layer.getGeoResource().resolve(
>                                                GridCoverage.class, new
> NullProgressMonitor());
>
>                                Raster raster =
> geoRes.getRenderedImage().getData();
>                                String sample =
> getSample(raster.getSample(i, j, z), dataSampleType);
>
> ----------------------------------------------------------------------------
> ------------------------------------------------
>
> /*******/
> private static String getSample(Object sample, int type)
>        {
>                String result = "";
>                try
>                {
>                        switch (type)
>                        {
>                                case java.awt.image.DataBuffer.TYPE_BYTE:
>                                        result = ((Byte) sample).toString();
>                                        break;
>                                case java.awt.image.DataBuffer.TYPE_DOUBLE:
>                                        result = ((Double)
> sample).toString();
>                                        break;
>                                case java.awt.image.DataBuffer.TYPE_FLOAT:
>                                        result = ((Float)
> sample).toString();
>                                        break;
>                                case java.awt.image.DataBuffer.TYPE_INT:
>                                        result = ((Integer)
> sample).toString();
>                                        break;
>                                case java.awt.image.DataBuffer.TYPE_SHORT:
>                                        result = ((Short)
> sample).toString();
>                                        break;
>                                case
> java.awt.image.DataBuffer.TYPE_UNDEFINED:
>                                        result = sample.toString();
>                                        break;
>                                case java.awt.image.DataBuffer.TYPE_USHORT:
>                                        result = ((Short)
> sample).toString();
>                                        break;
>                                default:
>                                        break;
>
>                        }
>                } catch (ClassCastException e)
>                {
>                        result = ((Integer) sample).toString();
>                }
>                return result;
>        }
>
>
>
> Ciao
> Pasquale
>
>
> -----Messaggio originale-----
> Da: udig-devel-bounces@xxxxxxxxxxxxxxxxxxxxx
> [mailto:udig-devel-bounces@xxxxxxxxxxxxxxxxxxxxx] Per conto di andrea
> antonello
> Inviato: martedì 10 febbraio 2009 15.29
> A: User-friendly Desktop Internet GIS
> Oggetto: Re: [udig-devel] Udig 1.1.1 problems to read sample value in
> geotiff 16 bit
>
>> I'm developing a plugin for udig(1.1.1 win32) and when I try to read
>> the sample value of pixel in a geotiff with 16 bit of  depth, I obtain
>> always the same value 2147483647 (that is 2^31). Some ideas?
>> Can i read sample value of geotiff with 16 bit of depth?
>
> How exactly are you reading the image to get your information?
> Not sure how raster were dealth with in udig 1.1, but you should be able to
> access the imagereader and get your values.
> Do you have some code so show us?
>
> Ciao
> Andrea
>
>
>>
>> Cheers
>> --
>> View this message in context:
>> http://www.nabble.com/Udig-1.1.1-problems-to-read-sample-value-in-geot
>> iff-16-bit-tp21934226p21934226.html
>> Sent from the udig-devel mailing list archive at Nabble.com.
>>
>> _______________________________________________
>> User-friendly Desktop Internet GIS (uDig) http://udig.refractions.net
>> http://lists.refractions.net/mailman/listinfo/udig-devel
>>
> _______________________________________________
> User-friendly Desktop Internet GIS (uDig) http://udig.refractions.net
> http://lists.refractions.net/mailman/listinfo/udig-devel
>
>
> _______________________________________________
> User-friendly Desktop Internet GIS (uDig)
> http://udig.refractions.net
> http://lists.refractions.net/mailman/listinfo/udig-devel
>


Back to the top