svn - r34330 - trunk/modules/plugin/arcsde/datastore/src/main/java/org/geotools/arcsde/raster/jai

1 message Options
Embed this post
Permalink
svn_geotools

svn - r34330 - trunk/modules/plugin/arcsde/datastore/src/main/java/org/geotools/arcsde/raster/jai

Reply Threaded More More options
Print post
Permalink
Author: groldan
Date: 2009-11-04 16:25:42 -0500 (Wed, 04 Nov 2009)
New Revision: 34330

Modified:
   trunk/modules/plugin/arcsde/datastore/src/main/java/org/geotools/arcsde/raster/jai/ArcSDETiledRenderedImage.java
Log:
GEOT-2616, was creating the databuffer for the whole image size instead of the tile size

Modified: trunk/modules/plugin/arcsde/datastore/src/main/java/org/geotools/arcsde/raster/jai/ArcSDETiledRenderedImage.java
===================================================================
--- trunk/modules/plugin/arcsde/datastore/src/main/java/org/geotools/arcsde/raster/jai/ArcSDETiledRenderedImage.java 2009-11-04 20:43:24 UTC (rev 34329)
+++ trunk/modules/plugin/arcsde/datastore/src/main/java/org/geotools/arcsde/raster/jai/ArcSDETiledRenderedImage.java 2009-11-04 21:25:42 UTC (rev 34330)
@@ -21,8 +21,10 @@
 @SuppressWarnings("unchecked")
 class ArcSDETiledRenderedImage extends SimpleRenderedImage {
 
-    private TileReader tileReader;
+    private final TileReader tileReader;
 
+    private final SampleModel tileSampleModel;
+
     public ArcSDETiledRenderedImage(final TileReader tileReader, final ImageTypeSpecifier typeSpec) {
         this.tileReader = tileReader;
         super.colorModel = typeSpec.getColorModel();
@@ -35,6 +37,8 @@
         super.tileGridYOffset = 0;
         super.tileHeight = tileReader.getTileHeight();
         super.tileWidth = tileReader.getTileWidth();
+        this.tileSampleModel = super.sampleModel.createCompatibleSampleModel(tileWidth, tileHeight);
+
     }
 
     /**
@@ -52,12 +56,9 @@
         final int xOrigin = tileXToX(tileX);
         final int yOrigin = tileYToY(tileY);
 
-        final int numBands = sampleModel.getNumBands();
+        final int numBands = tileSampleModel.getNumBands();
 
-        final SampleModel tileSampleModel = super.sampleModel.createCompatibleSampleModel(
-                tileWidth, tileHeight);
-
-        DataBuffer dataBuffer = sampleModel.createDataBuffer();
+        DataBuffer dataBuffer = tileSampleModel.createDataBuffer();
         TileInfo[] tileInfo;
         try {
             tileInfo = tileReader.getTile(tileX, tileY);
@@ -89,7 +90,7 @@
     }
 
     private final LRUMap cache = new LRUMap(5);
-    
+
     private void cache(TileKey key, WritableRaster tile) {
         cache.put(key, tile);
     }


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
GeoTools-commits mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/geotools-commits