Revision 11416
trunk/extensions/extRasterTools-SE/src/org/gvsig/rastertools/cutting/WriterBufferServer.java | ||
---|---|---|
18 | 18 |
*/ |
19 | 19 |
package org.gvsig.rastertools.cutting; |
20 | 20 |
|
21 |
import java.util.ArrayList; |
|
22 |
|
|
21 | 23 |
import org.gvsig.gui.beans.incrementabletask.IIncrementable; |
22 | 24 |
import org.gvsig.raster.dataset.IBuffer; |
23 | 25 |
import org.gvsig.raster.dataset.IDataWriter; |
... | ... | |
44 | 46 |
* @version 27/04/2007 |
45 | 47 |
*/ |
46 | 48 |
public class WriterBufferServer implements IDataWriter, IIncrementable, ICancellable { |
47 |
private IBuffer buffer = null;
|
|
49 |
private IBuffer buffer = null;
|
|
48 | 50 |
private int row = 0; |
51 |
/** |
|
52 |
* Tama?o de bloque. Este se asignar? en la primera petici?n |
|
53 |
*/ |
|
49 | 54 |
private int block = 0; |
50 |
private int percent = 0; |
|
51 |
private int increment = 0; |
|
52 |
private boolean canceled = false; |
|
53 |
private int nBand = 0; |
|
55 |
/** |
|
56 |
* N?mero de bloques del proceso |
|
57 |
*/ |
|
58 |
private int nblocks = 0; |
|
59 |
private double percent = 0; |
|
60 |
private double increment = 0; |
|
61 |
private boolean canceled = false; |
|
62 |
private int nBand = 0; |
|
63 |
private boolean initProcess = false; |
|
64 |
private StringBuffer logs = new StringBuffer(); |
|
54 | 65 |
|
55 | 66 |
/** |
56 | 67 |
* Crea un nuevo <code>WriterBufferServer</code> |
... | ... | |
94 | 105 |
* @param sizeY Tama?o en Y del bloque |
95 | 106 |
*/ |
96 | 107 |
private void initRead(int sizeY) { |
108 |
//Si es la primera linea se asigna el tama?o de bloque y el incremento |
|
97 | 109 |
if (row == 0) { |
98 | 110 |
block = sizeY; |
99 |
increment = (int) Math.ceil((double) buffer.getHeight() / (double) sizeY); |
|
111 |
nblocks = (int)Math.ceil(((double) buffer.getHeight() / (double) sizeY)); |
|
112 |
increment = 100D / ((double) buffer.getHeight() / (double) sizeY); |
|
100 | 113 |
} |
114 |
|
|
115 |
//Linea para el log |
|
116 |
int b = 0; |
|
117 |
if (block != 0) |
|
118 |
b = (int) (row / block); |
|
119 |
logs.append(PluginServices.getText(this, "generando_bloque") + "..." + b + "/" + nblocks + "\n"); |
|
120 |
|
|
101 | 121 |
} |
102 | 122 |
|
103 | 123 |
/* |
... | ... | |
205 | 225 |
* @see org.gvsig.gui.beans.incrementabletask.IIncrementable#getLog() |
206 | 226 |
*/ |
207 | 227 |
public String getLog() { |
208 |
int b = 0; |
|
209 |
if (block != 0) |
|
210 |
b = (int) (row / block); |
|
211 |
return PluginServices.getText(this, "generando_bloque") + "..." + b; |
|
228 |
if(!initProcess) { |
|
229 |
initProcess = true; |
|
230 |
logs.append(PluginServices.getText(this, "leyendo_raster") + "\n"); |
|
231 |
} |
|
232 |
return logs.toString(); |
|
212 | 233 |
} |
213 | 234 |
|
214 | 235 |
/* |
... | ... | |
216 | 237 |
* @see org.gvsig.gui.beans.incrementabletask.IIncrementable#getPercent() |
217 | 238 |
*/ |
218 | 239 |
public int getPercent() { |
219 |
return Math.min(percent, 100); |
|
240 |
return Math.min((int)percent, 100);
|
|
220 | 241 |
} |
221 | 242 |
|
222 | 243 |
/* |
Also available in: Unified diff