Revision 18218

View differences:

trunk/libraries/libCacheService/src/org/gvsig/cacheservice/CacheService.java
81 81
		return new Dimension(getTileSize(),getTileSize());
82 82
	}
83 83

  
84
	/**
85
	 * Calcula el Extent de un tile a partir de su level y num
86
	 * @param tileNum
87
	 * @return
88
	 */
89
	public Rectangle2D computeBBox(TileNum tileNum) {
90
		int partsX = getFullSize(tileNum.getLevel()).width/getTileSize();
91
		int partsY = partsX/2;
92
		double stepX = (getFullExtent().getMaxX()-getFullExtent().getMinX())/partsX;
93
		double stepY = (getFullExtent().getMaxY()-getFullExtent().getMinY())/partsY;
94
		double l = getFullExtent().getMinX()+(double)tileNum.getX()*stepX;
95
		//double r = l+stepX;
96
		double b;
97
		if ((_cacheType & SPHERIC) == SPHERIC)
98
			b = getFullExtent().getMaxY()-(double)tileNum.getY()*stepY - stepY;
99
		else
100
		    b = getFullExtent().getMinY()+(double)tileNum.getY()*stepY;
101

  
102
		return new Rectangle2D.Double(l,b,stepX, Math.abs(stepY));
103
	}
104

  
105 84
	public Dimension getFullSize(int level) {
106 85
		int w = getTileSize() * (int)Math.pow(2,level);
107 86
		return new Dimension(w, w/2);
trunk/libraries/libCacheService/src/org/gvsig/cacheservice/RasterCacheService.java
2 2

  
3 3
import java.awt.Image;
4 4
import java.awt.Point;
5
import java.awt.geom.Rectangle2D;
5 6
import java.awt.image.RenderedImage;
6 7
import java.io.File;
7 8
import java.io.FileOutputStream;
......
53 54
	 * @return The image of the.
54 55
	 * @throws CacheServiceException
55 56
	 */
56
	abstract public Image getTileAsImage(TileNum tileNum)
57
	abstract public Image getTileAsImage(TileNum tileNum, Rectangle2D extent)
57 58
			throws CacheServiceException;
58 59

  
59
	public Image getTileAsImage(int level, Point num)
60
	public Image getTileAsImage(int level, Point num, Rectangle2D extent)
60 61
			throws CacheServiceException {
61
		return getTileAsImage(new TileNum(level, num));
62
		return getTileAsImage(new TileNum(level, num), extent);
62 63
	}
63 64

  
64 65
	/**
......
69 70
	 * @throws MalformedURLException
70 71
	 * @throws IOException
71 72
	 */
72
	abstract public String getTileAsFName(TileNum tileNum)
73
	abstract public String getTileAsFName(TileNum tileNum, Rectangle2D extent)
73 74
			throws CacheServiceException;
74 75

  
75 76
	/**
......
83 84
	 * @throws MalformedURLException
84 85
	 * @throws IOException
85 86
	 */
86
	public String getTileAsFName(int level, Point num)
87
	public String getTileAsFName(int level, Point num, Rectangle2D extent)
87 88
			throws CacheServiceException {
88
		return getTileAsFName(new TileNum(level, num));
89
		return getTileAsFName(new TileNum(level, num), extent);
89 90
	}
90 91

  
91 92
	public Image getImageFromCachedFile(String fName) throws IOException {

Also available in: Unified diff