Revision 15485 import/ext3D/branches/ext3D_v1.1/lib3DMap/src/com/iver/ai2/gvsig3d/cacheservices/FLayerCacheService.java
FLayerCacheService.java | ||
---|---|---|
4 | 4 |
import java.awt.Dimension; |
5 | 5 |
import java.awt.Graphics2D; |
6 | 6 |
import java.awt.Image; |
7 |
import java.awt.geom.AffineTransform; |
|
8 | 7 |
import java.awt.geom.Rectangle2D; |
9 | 8 |
import java.awt.image.BufferedImage; |
10 | 9 |
import java.io.File; |
... | ... | |
21 | 20 |
import org.gvsig.cacheservice.RasterCacheService; |
22 | 21 |
import org.gvsig.cacheservice.TileNum; |
23 | 22 |
import org.gvsig.fmap.raster.layers.FLyrRasterSE; |
24 |
import org.gvsig.raster.buffer.BufferFactory; |
|
25 |
import org.gvsig.raster.buffer.RasterBuffer; |
|
26 |
import org.gvsig.raster.buffer.cache.WriterBufferServer; |
|
27 |
import org.gvsig.raster.dataset.GeoRasterWriter; |
|
28 |
import org.gvsig.raster.dataset.NotSupportedExtensionException; |
|
29 |
import org.gvsig.raster.dataset.Params; |
|
30 |
import org.gvsig.raster.dataset.RasterDriverException; |
|
31 | 23 |
import org.gvsig.remoteClient.utils.Utilities; |
32 | 24 |
import org.gvsig.remoteClient.wcs.WCSStatus; |
33 | 25 |
import org.gvsig.remoteClient.wms.ICancellable; |
... | ... | |
42 | 34 |
import com.iver.cit.gvsig.fmap.drivers.wms.FMapWMSDriver; |
43 | 35 |
import com.iver.cit.gvsig.fmap.drivers.wms.FMapWMSDriverFactory; |
44 | 36 |
import com.iver.cit.gvsig.fmap.layers.FLayer; |
37 |
import com.iver.cit.gvsig.fmap.layers.FLyrDefault; |
|
45 | 38 |
import com.iver.cit.gvsig.fmap.layers.FLyrWCS; |
46 | 39 |
import com.iver.cit.gvsig.fmap.layers.FLyrWMS; |
47 | 40 |
import com.iver.utiles.FileUtils; |
... | ... | |
137 | 130 |
|
138 | 131 |
// CancelDraw canceldraw = new MapControl.CancelDraw(); |
139 | 132 |
// canceldraw.setCanceled(false); |
140 |
|
|
141 | 133 |
// For now we'll use a trick to make sure the layer is drawn |
142 | 134 |
// even if it has scale dependency |
143 | 135 |
// In the future, a scale corresponding to the tile should be passed |
144 | 136 |
double scale = 0.5*(_layer.getMaxScale()+_layer.getMinScale()); |
137 |
// Generate layers 3D properties |
|
138 |
Layer3DProps props3D = Layer3DProps.getLayer3DProps(_layer); |
|
139 |
// Getting layer transparency |
|
140 |
int trans = ((FLyrDefault)_layer).getTransparency(); |
|
141 |
// Casting to float |
|
142 |
float transFloat = (float) ((float) trans/255.0); |
|
143 |
// Setting in the layers 3D props |
|
144 |
props3D.setOpacity(transFloat); |
|
145 |
// fix opaque the layer to save in disk |
|
146 |
((FLyrDefault)_layer).setTransparency(255); |
|
147 |
|
|
145 | 148 |
try { |
146 | 149 |
_layer.draw(image, graphics, vp, new MyCancel(), scale); |
147 | 150 |
} catch (ReadDriverException e) { |
148 | 151 |
e.printStackTrace(); |
149 | 152 |
} |
150 | 153 |
|
154 |
// fix the real transparency to the layer |
|
155 |
((FLyrDefault)_layer).setTransparency(trans); |
|
156 |
|
|
151 | 157 |
try { |
152 | 158 |
File file = new File(fName); |
153 | 159 |
String format = getFileExtension().substring(1); |
Also available in: Unified diff