Revision 466

View differences:

2.1/trunk/org.gvsig.view3d/org.gvsig.view3d.swing/org.gvsig.view3d.swing.impl/src/main/java/org/gvsig/view3d/swing/impl/data/GvSIGLayerDataRaster.java
42 42
import org.cresques.cts.IProjection;
43 43
import org.slf4j.Logger;
44 44
import org.slf4j.LoggerFactory;
45

  
46 45
import org.gvsig.fmap.crs.CRSFactory;
47 46
import org.gvsig.fmap.dal.exception.ReadException;
48 47
import org.gvsig.fmap.geom.Geometry.SUBTYPES;
......
53 52
import org.gvsig.fmap.mapcontext.MapContext;
54 53
import org.gvsig.fmap.mapcontext.ViewPort;
55 54
import org.gvsig.fmap.mapcontext.layers.FLayer;
55
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
56
import org.gvsig.fmap.mapcontext.rendering.legend.styling.ILabelable;
56 57
import org.gvsig.tools.task.Cancellable;
57 58

  
58 59
/**
......
195 196
        viewPort.refreshExtent();
196 197

  
197 198
        try {
199
            
198 200
            layer.draw(image, (Graphics2D) image.getGraphics(), viewPort,
199
                new Cancellable() {
201
                getCancel(), getScale(viewPort));
202
            
203
            if (layer instanceof FLyrVect && layer instanceof ILabelable) {
204
                
205
                ILabelable labelable = (ILabelable) layer;
206
                
207
                if (labelable.isLabeled() 
208
                    && labelable.getLabelingStrategy() != null
209
                    && labelable.getLabelingStrategy().shouldDrawLabels(
210
                        getScale(viewPort))) {
211
    
212
                    labelable.drawLabels(image, (Graphics2D) image
213
                        .getGraphics(), viewPort, getCancel(),
214
                        getScale(viewPort), mapContext.getViewPort().getDPI());
215
                }
216
            }
200 217

  
201
                    private boolean canceled = false;
202

  
203
                    public void setCanceled(boolean flag) {
204
                        canceled = flag;
205
                    }
206

  
207
                    public boolean isCanceled() {
208
                        return canceled;
209
                    }
210
                }, getScale(viewPort));
211

  
212 218
        } catch (ReadException e) {
213 219
            LOG.warn(
214 220
                "Can't draw required zone of layer {}, can't read legend",
215 221
                layer.getInfoString());
216 222
            return;
217 223
        }
218

  
219 224
        BufferedImageRaster bufferedImageRaster =
220 225
            new BufferedImageRaster(overlap, image);
221 226
        bufferedImageRaster.drawOnTo(canvas);
......
338 343
            new GvSIGLayerDataRaster(mapContext, layer, params);
339 344
        return subRaster;
340 345
    }
346
    
347
    private Cancellable getCancel(){
348
        Cancellable cancel = new Cancellable() {
349

  
350
            private boolean canceled = false;
351

  
352
            public void setCanceled(boolean flag) {
353
                canceled = flag;
354
            }
355

  
356
            public boolean isCanceled() {
357
                return canceled;
358
            }
359
        };
360
        
361
        return cancel;
362
    }
341 363
}

Also available in: Unified diff