Revision 6514
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider.legend/pom.xml | ||
---|---|---|
16 | 16 |
<groupId>org.gvsig</groupId> |
17 | 17 |
<artifactId>org.gvsig.raster.googlemaps.provider</artifactId> |
18 | 18 |
</dependency> |
19 |
<dependency> |
|
20 |
<groupId>org.gvsig</groupId> |
|
21 |
<artifactId>org.gvsig.fmap.dal.raster.spi</artifactId> |
|
22 |
</dependency> |
|
19 | 23 |
</dependencies> |
20 | 24 |
</project> |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider.legend/src/main/java/org/gvsig/raster/googlemaps/provider/legend/GoogleMapsRasterGetColorTable.java | ||
---|---|---|
28 | 28 |
import java.util.ArrayList; |
29 | 29 |
import java.util.List; |
30 | 30 |
|
31 |
import org.omg.PortableInterceptor.INACTIVE; |
|
32 | 31 |
import org.slf4j.LoggerFactory; |
33 | 32 |
|
34 |
import org.gvsig.fmap.dal.exception.DataException; |
|
35 |
import org.gvsig.fmap.dal.exception.ValidateDataParametersException; |
|
36 | 33 |
import org.gvsig.fmap.dal.raster.api.RasterStore; |
37 |
import org.gvsig.fmap.geom.exception.CreateEnvelopeException; |
|
38 | 34 |
import org.gvsig.raster.googlemaps.provider.GoogleMapsRasterProvider; |
39 |
import org.gvsig.raster.googlemaps.provider.GoogleMapsRasterProviderParameters; |
|
40 |
import org.gvsig.raster.lib.buffer.api.exceptions.BufferException; |
|
41 | 35 |
import org.gvsig.raster.lib.legend.api.ColorInterpretation; |
42 | 36 |
import org.gvsig.raster.lib.legend.api.ColorTable; |
43 | 37 |
import org.gvsig.raster.lib.legend.api.ColorTableClass; |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider/src/main/java/org/gvsig/raster/googlemaps/provider/GoogleMapsRasterProviderParameters.java | ||
---|---|---|
167 | 167 |
} |
168 | 168 |
|
169 | 169 |
/** |
170 |
* @param region
|
|
170 |
* @param format
|
|
171 | 171 |
*/ |
172 | 172 |
public void setFormat(String format) { |
173 | 173 |
this.setDynValue(GOOGLEMAPS_FORMAT_PARAMTER_NAME, format); |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider/src/main/java/org/gvsig/raster/googlemaps/provider/GoogleMapsImage.java | ||
---|---|---|
1 | 1 |
package org.gvsig.raster.googlemaps.provider; |
2 | 2 |
|
3 | 3 |
import java.awt.image.BufferedImage; |
4 |
import java.awt.image.DataBuffer; |
|
5 |
import java.awt.image.Raster; |
|
6 |
import java.awt.image.SampleModel; |
|
7 | 4 |
import java.util.HashMap; |
8 | 5 |
import java.util.Iterator; |
9 | 6 |
import java.util.Map; |
10 | 7 |
import java.util.Map.Entry; |
11 | 8 |
import java.util.Set; |
12 | 9 |
|
13 |
import org.cresques.cts.ICoordTrans; |
|
14 | 10 |
import org.slf4j.Logger; |
15 | 11 |
import org.slf4j.LoggerFactory; |
16 | 12 |
|
17 |
import org.gvsig.fmap.crs.CRSFactory; |
|
18 | 13 |
import org.gvsig.fmap.dal.DataStoreParameters; |
19 | 14 |
import org.gvsig.fmap.dal.exception.DataException; |
20 | 15 |
import org.gvsig.fmap.dal.exception.ValidateDataParametersException; |
... | ... | |
26 | 21 |
import org.gvsig.fmap.geom.exception.CreateGeometryException; |
27 | 22 |
import org.gvsig.fmap.geom.primitive.Envelope; |
28 | 23 |
import org.gvsig.fmap.geom.primitive.Point; |
29 |
import org.gvsig.googlemaps.lib.api.GoogleMapsLibrary; |
|
30 | 24 |
import org.gvsig.googlemaps.lib.api.GoogleMapsLocator; |
31 | 25 |
import org.gvsig.googlemaps.lib.api.GoogleMapsManager; |
32 | 26 |
import org.gvsig.googlemaps.lib.api.GoogleMapsRequest; |
... | ... | |
36 | 30 |
import org.gvsig.raster.lib.buffer.api.Band; |
37 | 31 |
import org.gvsig.raster.lib.buffer.api.Buffer; |
38 | 32 |
import org.gvsig.raster.lib.buffer.api.BufferLocator; |
39 |
import org.gvsig.raster.lib.buffer.api.BufferManager; |
|
40 |
import org.gvsig.raster.lib.buffer.api.NoData; |
|
41 | 33 |
import org.gvsig.raster.lib.buffer.api.TileStruct; |
42 | 34 |
import org.gvsig.raster.lib.buffer.api.exceptions.BufferException; |
43 | 35 |
import org.gvsig.tools.ToolsLocator; |
... | ... | |
63 | 55 |
private GoogleMapsRasterProvider provider; |
64 | 56 |
|
65 | 57 |
/** |
66 |
* @param innerProvider
|
|
58 |
* @param provider
|
|
67 | 59 |
* @param query |
68 | 60 |
* @param tileStruct |
69 | 61 |
*/ |
... | ... | |
241 | 233 |
|
242 | 234 |
downloaded = false; |
243 | 235 |
|
244 |
int imageType = img.getType(); |
|
245 |
int bufferType; |
|
246 |
switch (imageType) { |
|
247 |
case BufferedImage.TYPE_3BYTE_BGR: |
|
248 |
case BufferedImage.TYPE_4BYTE_ABGR: |
|
249 |
case BufferedImage.TYPE_4BYTE_ABGR_PRE: |
|
250 |
case BufferedImage.TYPE_BYTE_BINARY: |
|
251 |
case BufferedImage.TYPE_BYTE_GRAY: |
|
252 |
case BufferedImage.TYPE_BYTE_INDEXED: |
|
253 |
bufferType = BufferManager.TYPE_BYTE; |
|
254 |
break; |
|
255 |
case BufferedImage.TYPE_INT_ARGB: |
|
256 |
case BufferedImage.TYPE_INT_ARGB_PRE: |
|
257 |
case BufferedImage.TYPE_INT_BGR: |
|
258 |
case BufferedImage.TYPE_INT_RGB: |
|
259 |
bufferType = BufferManager.TYPE_INT; |
|
260 |
break; |
|
261 |
case BufferedImage.TYPE_USHORT_555_RGB: |
|
262 |
case BufferedImage.TYPE_USHORT_565_RGB: |
|
263 |
case BufferedImage.TYPE_USHORT_GRAY: |
|
264 |
bufferType = BufferManager.TYPE_USHORT; |
|
265 |
break; |
|
266 |
default: |
|
267 |
bufferType = BufferManager.TYPE_UNDEFINED; |
|
268 |
break; |
|
269 |
} |
|
270 |
|
|
271 |
SampleModel sampleModel = img.getSampleModel(); |
|
272 |
int bands = sampleModel.getNumBands(); |
|
273 |
int[] bandDataTypes = new int[bands]; |
|
274 |
NoData[] bandNoData = new NoData[bands]; |
|
275 |
for (int i = 0; i < bandDataTypes.length; i++) { |
|
276 |
bandDataTypes[i] = bufferType; |
|
277 |
bandNoData[i] = null; |
|
278 |
} |
|
279 |
|
|
280 |
// FIXME: ?se hace as?? |
|
281 |
// Raster raster = img.getData(); |
|
282 | 236 |
try { |
237 |
|
|
283 | 238 |
this.buffer = |
284 |
BufferLocator.getBufferManager().createBuffer(img.getHeight(), img.getWidth(), bandDataTypes, |
|
285 |
bandNoData, GoogleMapsRasterProvider.GOOGLE_MAPS_PROJECTION, this.envelope, null); |
|
239 |
BufferLocator.getBufferManager().createBuffer(img, GoogleMapsRasterProvider.GOOGLE_MAPS_PROJECTION, |
|
240 |
this.envelope); |
|
241 |
|
|
286 | 242 |
} catch (LocatorException | BufferException e) { |
287 | 243 |
logger.warn("Can't create buffer to load downloaded image.", e); |
288 | 244 |
} |
289 | 245 |
|
290 |
// byte[] dataElements = (byte[]) raster.getDataElements(0, 0, img.getWidth(), img.getHeight(), null); |
|
291 |
// FIXME: For now img has only one band because format is default |
|
292 |
// (png) |
|
293 |
// Band band = this.buffer.getBand(0); |
|
294 |
// byte[] rowBuffer = (byte[]) band.createRowBuffer(); |
|
295 |
// for (int row = 0; row < img.getHeight(); row++) { |
|
296 |
// System.arraycopy(dataElements, row * img.getWidth(), rowBuffer, 0, img.getWidth()); |
|
297 |
// band.putRow(row, rowBuffer); |
|
298 |
// } |
|
299 |
// |
|
300 |
|
|
301 |
Raster raster = img.getData(); |
|
302 |
DataBuffer dataBuffer = raster.getDataBuffer(); |
|
303 |
for (int i = 0; i < bands; i++) { |
|
304 |
Band band = this.buffer.getBand(i); |
|
305 |
byte[] rowBuffer = (byte[]) band.createRowBuffer(); |
|
306 |
int[] intRowBuffer = new int[rowBuffer.length]; |
|
307 |
for (int row = 0; row < img.getHeight(); row++) { |
|
308 |
sampleModel.getSamples(0, row, img.getWidth(), 1, i, intRowBuffer, dataBuffer); |
|
309 |
for(int c=0; c<rowBuffer.length; c++) { |
|
310 |
rowBuffer[c] = (byte)intRowBuffer[c]; |
|
311 |
} |
|
312 |
band.putRow(row, rowBuffer); |
|
313 |
} |
|
314 |
// System.arraycopy(dataElements, row * img.getWidth(), rowBuffer, 0, img.getWidth()); |
|
315 |
// } |
|
316 |
|
|
317 |
} |
|
318 |
|
|
319 | 246 |
this.downloaded = true; |
320 | 247 |
logger.info("Tile listo : " + this.key); |
321 | 248 |
this.notify(); |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider/src/main/java/org/gvsig/raster/googlemaps/provider/GoogleMapsRasterLibrary.java | ||
---|---|---|
26 | 26 |
import java.util.ArrayList; |
27 | 27 |
import java.util.List; |
28 | 28 |
|
29 |
import org.cresques.ProjectionLibrary; |
|
30 |
import org.cresques.cts.IProjection; |
|
31 |
|
|
32 |
import org.gvsig.fmap.crs.CRSFactory; |
|
33 | 29 |
import org.gvsig.fmap.dal.DALFileLibrary; |
34 | 30 |
import org.gvsig.fmap.dal.DALLibrary; |
35 | 31 |
import org.gvsig.fmap.dal.FileHelper; |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider/src/main/java/org/gvsig/raster/googlemaps/provider/GoogleMapsBandTileManager.java | ||
---|---|---|
53 | 53 |
|
54 | 54 |
/** |
55 | 55 |
* @param tileStruct |
56 |
* @param googleMapsImage |
|
56 | 57 |
* @param zoomLevel |
57 | 58 |
* @param bandNumber |
59 |
* @param provider |
|
58 | 60 |
*/ |
59 | 61 |
public GoogleMapsBandTileManager(TileStruct tileStruct, GoogleMapsImage googleMapsImage, int zoomLevel, int bandNumber, RasterStoreProvider provider) { |
60 | 62 |
this.bandNumber = bandNumber; |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/org.gvsig.raster.googlemaps.provider/pom.xml | ||
---|---|---|
10 | 10 |
<dependencies> |
11 | 11 |
<dependency> |
12 | 12 |
<groupId>org.gvsig</groupId> |
13 |
<artifactId>org.gvsig.raster.lib.buffer.api</artifactId>
|
|
13 |
<artifactId>org.gvsig.fmap.dal.raster.spi</artifactId>
|
|
14 | 14 |
</dependency> |
15 | 15 |
<dependency> |
16 | 16 |
<groupId>org.gvsig</groupId> |
17 |
<artifactId>org.gvsig.fmap.dal.raster.spi</artifactId> |
|
17 |
<artifactId>org.gvsig.googlemaps.lib.api</artifactId> |
|
18 |
</dependency> |
|
19 |
<dependency> |
|
20 |
<groupId>org.gvsig</groupId> |
|
21 |
<artifactId>org.gvsig.fmap.dal.raster.api</artifactId> |
|
18 | 22 |
</dependency> |
19 | 23 |
<dependency> |
20 | 24 |
<groupId>org.gvsig</groupId> |
21 | 25 |
<artifactId>org.gvsig.raster.lib.buffer.spi</artifactId> |
22 | 26 |
</dependency> |
23 |
<dependency> |
|
24 |
<groupId>org.gvsig</groupId> |
|
25 |
<artifactId>org.gvsig.googlemaps.lib.api</artifactId> |
|
26 |
</dependency> |
|
27 | 27 |
</dependencies> |
28 | 28 |
</project> |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.googlemaps/pom.xml | ||
---|---|---|
1 | 1 |
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
2 | 2 |
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
3 | 3 |
<modelVersion>4.0.0</modelVersion> |
4 |
<parent>
|
|
5 |
<groupId>org.gvsig</groupId>
|
|
6 |
<artifactId>org.gvsig.raster</artifactId>
|
|
7 |
<version>2.4.1-SNAPSHOT</version>
|
|
8 |
</parent>
|
|
4 |
<parent> |
|
5 |
<groupId>org.gvsig</groupId> |
|
6 |
<artifactId>org.gvsig.desktop</artifactId>
|
|
7 |
<version>2.0.155-SNAPSHOT</version>
|
|
8 |
</parent> |
|
9 | 9 |
<artifactId>org.gvsig.raster.googlemaps</artifactId> |
10 | 10 |
<packaging>pom</packaging> |
11 | 11 |
<name>org.gvsig.raster.googlemaps</name> |
... | ... | |
14 | 14 |
<module>org.gvsig.raster.googlemaps.provider</module> |
15 | 15 |
<module>org.gvsig.raster.googlemaps.provider.legend</module> |
16 | 16 |
</modules> |
17 |
<dependencyManagement> |
|
18 |
<dependencies> |
|
19 |
<dependency> |
|
20 |
<groupId>org.gvsig</groupId> |
|
21 |
<artifactId>org.gvsig.raster</artifactId> |
|
22 |
<version>${org.gvsig.raster.version}</version> |
|
23 |
<type>pom</type> |
|
24 |
<scope>import</scope> |
|
25 |
</dependency> |
|
26 |
<dependency> |
|
27 |
<groupId>org.gvsig</groupId> |
|
28 |
<artifactId>org.gvsig.googlemaps</artifactId> |
|
29 |
<version>${org.gvsig.googlemaps.version}</version> |
|
30 |
<type>pom</type> |
|
31 |
<scope>import</scope> |
|
32 |
</dependency> |
|
33 |
<dependency> |
|
34 |
<groupId>org.gvsig</groupId> |
|
35 |
<artifactId>org.gvsig.raster.googlemaps.provider</artifactId> |
|
36 |
<version>2.4.1-SNAPSHOT</version> |
|
37 |
</dependency> |
|
38 |
<dependency> |
|
39 |
<groupId>org.gvsig</groupId> |
|
40 |
<artifactId>org.gvsig.raster.googlemaps.provider.legend</artifactId> |
|
41 |
<version>2.4.1-SNAPSHOT</version> |
|
42 |
</dependency> |
|
43 |
</dependencies> |
|
44 |
</dependencyManagement> |
|
45 |
<properties> |
|
46 |
<org.gvsig.googlemaps.version>1.0.9-SNAPSHOT</org.gvsig.googlemaps.version> |
|
47 |
<org.gvsig.raster.version>2.4.1-SNAPSHOT</org.gvsig.raster.version> |
|
48 |
</properties> |
|
49 |
|
|
50 |
<version>2.4.1-SNAPSHOT</version> |
|
51 |
<dependencies> |
|
52 |
</dependencies> |
|
53 |
<groupId>org.gvsig</groupId> |
|
17 | 54 |
</project> |
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/pom.xml | ||
---|---|---|
70 | 70 |
<module>org.gvsig.raster.gdal</module> |
71 | 71 |
<!-- <module>org.gvsig.raster.wms</module> --> |
72 | 72 |
<module>org.gvsig.raster.tilecache</module> |
73 |
<module>org.gvsig.raster.googlemaps</module>
|
|
73 |
<!-- <module>org.gvsig.raster.googlemaps</module> -->
|
|
74 | 74 |
</modules> |
75 | 75 |
<dependencyManagement> |
76 | 76 |
<dependencies> |
... | ... | |
184 | 184 |
<artifactId>org.gvsig.raster.tilecache.provider.legend</artifactId> |
185 | 185 |
<version>2.4.1-SNAPSHOT</version> |
186 | 186 |
</dependency> |
187 |
<dependency> |
|
187 |
<!-- <dependency>
|
|
188 | 188 |
<groupId>org.gvsig</groupId> |
189 | 189 |
<artifactId>org.gvsig.raster.googlemaps.provider</artifactId> |
190 | 190 |
<version>2.4.1-SNAPSHOT</version> |
... | ... | |
203 | 203 |
<groupId>org.gvsig</groupId> |
204 | 204 |
<artifactId>org.gvsig.googlemaps.lib.impl</artifactId> |
205 | 205 |
<version>1.0.9-SNAPSHOT</version> |
206 |
</dependency> |
|
206 |
</dependency> -->
|
|
207 | 207 |
</dependencies> |
208 | 208 |
</dependencyManagement> |
209 | 209 |
|
Also available in: Unified diff