Revision 1718

View differences:

tags/org.gvsig.app.document.layout2.app-2.0.300/org.gvsig.app.document.layout2.app.mainplugin/buildNumber.properties
1
#Tue Mar 19 11:32:05 CET 2024
2
buildNumber=323
tags/org.gvsig.app.document.layout2.app-2.0.300/org.gvsig.app.document.layout2.app.mainplugin/src/test/java/org/gvsig/layout/mapbox/model/TestMapBoxModel.java
1
/*
2
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
3
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
4
 */
5
package org.gvsig.layout.mapbox.model;
6

  
7
import java.awt.geom.Dimension2D;
8
import java.awt.geom.Rectangle2D;
9
import java.util.List;
10
import org.gvsig.tools.junit.AbstractLibraryAutoInitTestCase;
11

  
12
/**
13
 *
14
 * @author fdiaz
15
 */
16
public class TestMapBoxModel extends AbstractLibraryAutoInitTestCase {
17
    
18
    private static double TOLERANCE = 0.0000000000001;
19

  
20
    @Override
21
    protected void doSetUp() throws Exception {
22
        
23
    }
24
    
25
    private void checkCells(Rectangle2D.Double[] expecteds, List<Cell> actual) {
26
        assertEquals(expecteds.length, actual.size());
27
        for (int i = 0; i < expecteds.length; i++) {
28
            checkCell(expecteds[i], actual.get(i));
29
        }
30
    } 
31
    
32
    private void checkCell(Rectangle2D.Double expected, Cell actual) {
33
        
34
        checkDoubles(expected.x, actual.getX());
35
        checkDoubles(expected.y, actual.getY());
36
        checkDoubles(expected.width, actual.getWidth());
37
        checkDoubles(expected.height, actual.getHeight());
38

  
39
//        assertEquals(expected.x, actual.getX());
40
//        assertEquals(expected.y, actual.getY());
41
//        assertEquals(expected.width, actual.getWidth());
42
//        assertEquals(expected.height, actual.getHeight());
43
    } 
44
    
45
    private void checkDoubles(double expected, double actual){
46
        assertTrue("expected: "+expected+" actual: "+actual, Math.abs(expected - actual)<TOLERANCE);
47
        
48
    }
49
    
50
    public void test01_CreateAndSort() {
51
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
52
        model.sort();
53
        model.dump(null);
54
        
55
        checkCells(new Rectangle2D.Double[] {
56
                new Rectangle2D.Double(0, 0, 25, 100d/3),
57
                new Rectangle2D.Double(25, 0, 25, 100d/3),
58
                new Rectangle2D.Double(50, 0, 25, 100d/3),
59
                new Rectangle2D.Double(75, 0, 25, 100d/3),
60
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
61
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
62
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
63
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
64
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
65
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
66
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
67
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
68

  
69
            },
70
            model.getCells()
71
        );
72
    }
73

  
74
    public void test02_getCell() {
75
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
76
        Cell cell = model.getCell(35, 35);
77
        System.out.println(cell.toString());
78
        checkCell(new Rectangle2D.Double(25, 100d/3, 25, 100d/3), cell);
79
    }
80

  
81
    public void test03_addRowCell() {
82
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
83
        System.out.println("==================");
84
        Cell cell = model.getCell(35, 35);
85
        checkCell(new Rectangle2D.Double(25, 100d/3, 25, 100d/3), cell);
86
        model.addRow(cell);
87
        model.sort();
88
        model.dump(null);
89
        checkCells(new Rectangle2D.Double[] {
90
                new Rectangle2D.Double(0d, 0d, 25d, 25d),
91
                new Rectangle2D.Double(25, 0, 25, 25),
92
                new Rectangle2D.Double(50, 0, 25, 25),
93
                new Rectangle2D.Double(75, 0, 25, 25),
94
                new Rectangle2D.Double(0, 25, 25, 25),
95
                new Rectangle2D.Double(25, 25, 25, 25),
96
                new Rectangle2D.Double(50, 25, 25, 25),
97
                new Rectangle2D.Double(75, 25, 25, 25),
98
                new Rectangle2D.Double(0, 50, 25, 25),
99
                new Rectangle2D.Double(25, 50, 25, 25),
100
                new Rectangle2D.Double(50, 50, 25, 25),
101
                new Rectangle2D.Double(75, 50, 25, 25),
102
                new Rectangle2D.Double(0, 75, 25, 25),
103
                new Rectangle2D.Double(25, 75, 25, 25),
104
                new Rectangle2D.Double(50, 75, 25, 25),
105
                new Rectangle2D.Double(75, 75, 25, 25)
106
            },
107
            model.getCells()
108
        );
109
    }
110
    
111
    public void test04_getCells() {
112
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
113
        model.dump(null);
114
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
115
        model.dump(cells);
116
        checkCells(new Rectangle2D.Double[] {
117
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
118
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3)
119
            }, cells);
120
    }
121

  
122
    public void test05_join() {
123
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
124
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
125
        Cell join = model.join(cells);
126
        checkCell(new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3), join);
127
    }
128
    
129
    public void test06_removeCell() {
130
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
131
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
132
        model.removeCells(cells);
133
        model.sort();
134
        model.dump(null);
135
        checkCells(new Rectangle2D.Double[] {
136
                new Rectangle2D.Double(0, 0, 25, 100d/3),
137
                new Rectangle2D.Double(25, 0, 25, 100d/3),
138
                new Rectangle2D.Double(50, 0, 25, 100d/3),
139
                new Rectangle2D.Double(75, 0, 25, 100d/3),
140
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
141
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
142
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
143
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
144
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
145
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
146
            },
147
            model.getCells()
148
        );
149
    }
150

  
151
    public void test07_combineStepByStep() {
152
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
153
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
154
        Cell join = model.join(cells);
155
        checkCell(new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3), join);
156
        model.removeCells(cells);
157
        model.sort();
158
        model.dump(null);
159
        checkCells(new Rectangle2D.Double[] {
160
                new Rectangle2D.Double(0, 0, 25, 100d/3),
161
                new Rectangle2D.Double(25, 0, 25, 100d/3),
162
                new Rectangle2D.Double(50, 0, 25, 100d/3),
163
                new Rectangle2D.Double(75, 0, 25, 100d/3),
164
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
165
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
166
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
167
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
168
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
169
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
170
            },
171
            model.getCells()
172
        );
173
        model.add(join);
174
        model.sort();
175
        model.dump(null);
176
        checkCells(new Rectangle2D.Double[] {
177
                new Rectangle2D.Double(0, 0, 25, 100d/3),
178
                new Rectangle2D.Double(25, 0, 25, 100d/3),
179
                new Rectangle2D.Double(50, 0, 25, 100d/3),
180
                new Rectangle2D.Double(75, 0, 25, 100d/3),
181
                new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3),
182
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
183
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
184
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
185
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
186
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
187
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
188
            },
189
            model.getCells()
190
        );
191
        
192
    }
193
    
194
    public void test08_combine() {
195
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
196
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
197
        model.combine(cells);
198
        model.sort();
199
        model.dump(null);
200
        checkCells(new Rectangle2D.Double[] {
201
                new Rectangle2D.Double(0, 0, 25, 100d/3),
202
                new Rectangle2D.Double(25, 0, 25, 100d/3),
203
                new Rectangle2D.Double(50, 0, 25, 100d/3),
204
                new Rectangle2D.Double(75, 0, 25, 100d/3),
205
                new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3),
206
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
207
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
208
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
209
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
210
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
211
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
212
            },
213
            model.getCells()
214
        );
215
        
216
    }
217
    
218
    public void test08_combineSelection() {
219
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
220
        SelectionCell selection = new SelectionCellImpl();
221
        selection.add(model.getCell(10, 35));
222
        selection.add(model.getCell(20, 68));
223
        List<Cell> cells = model.getCells(selection.getRectangle());
224
        model.combine(cells);
225
        model.sort();
226
        model.dump(null);
227
        checkCells(new Rectangle2D.Double[] {
228
                new Rectangle2D.Double(0, 0, 25, 100d/3),
229
                new Rectangle2D.Double(25, 0, 25, 100d/3),
230
                new Rectangle2D.Double(50, 0, 25, 100d/3),
231
                new Rectangle2D.Double(75, 0, 25, 100d/3),
232
                new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3),
233
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
234
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
235
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
236
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
237
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
238
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
239
            },
240
            model.getCells()
241
        );
242
        
243
    }
244
    
245
    public void test09_insertRowCell() {
246
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
247
        Cell cell = model.getCell(35, 35);
248
        checkCell(new Rectangle2D.Double(25, 100d/3, 25, 100d/3), cell);
249
        model.insertRow(cell);
250
        model.sort();
251
//        model.dump(null);
252
        checkCells(new Rectangle2D.Double[] {
253
                new Rectangle2D.Double(0, 0, 25, 25),
254
                new Rectangle2D.Double(25, 0, 25, 25),
255
                new Rectangle2D.Double(50, 0, 25, 25),
256
                new Rectangle2D.Double(75, 0, 25, 25),
257
                new Rectangle2D.Double(0, 25, 25, 25),
258
                new Rectangle2D.Double(25, 25, 25, 25),
259
                new Rectangle2D.Double(50, 25, 25, 25),
260
                new Rectangle2D.Double(75, 25, 25, 25),
261
                new Rectangle2D.Double(0, 50, 25, 25),
262
                new Rectangle2D.Double(25, 50, 25, 25),
263
                new Rectangle2D.Double(50, 50, 25, 25),
264
                new Rectangle2D.Double(75, 50, 25, 25),
265
                new Rectangle2D.Double(0, 75, 25, 25),
266
                new Rectangle2D.Double(25, 75, 25, 25),
267
                new Rectangle2D.Double(50, 75, 25, 25),
268
                new Rectangle2D.Double(75, 75, 25, 25)
269
            },
270
            model.getCells()
271
        );
272
    }
273
    
274
    public void test10_Scale() {
275
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
276
        model.sort();
277
        model.dump(null);
278
        
279
        checkCells(new Rectangle2D.Double[] {
280
                new Rectangle2D.Double(0, 0, 25, 100d/3),
281
                new Rectangle2D.Double(25, 0, 25, 100d/3),
282
                new Rectangle2D.Double(50, 0, 25, 100d/3),
283
                new Rectangle2D.Double(75, 0, 25, 100d/3),
284
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
285
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
286
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
287
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
288
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
289
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
290
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
291
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
292

  
293
            },
294
            model.getCells()
295
        );
296
        
297
        model.resize((Dimension2D)(new Dimension2DDouble(200d,200d)));
298
        
299
        checkCells(new Rectangle2D.Double[] {
300
                new Rectangle2D.Double(0, 0, 50, 2*100d/3),
301
                new Rectangle2D.Double(50, 0, 50, 2*100d/3),
302
                new Rectangle2D.Double(100, 0, 50, 2*100d/3),
303
                new Rectangle2D.Double(150, 0, 50, 2*100d/3),
304
                new Rectangle2D.Double(0, 2*100d/3, 50, 2*100d/3),
305
                new Rectangle2D.Double(50, 2*100d/3, 50, 2*100d/3),
306
                new Rectangle2D.Double(100, 2*100d/3, 50, 2*100d/3),
307
                new Rectangle2D.Double(150, 2*100d/3, 50, 2*100d/3),
308
                new Rectangle2D.Double(0, 4*100d/3, 50, 2*100d/3),
309
                new Rectangle2D.Double(50, 4*100d/3, 50, 2*100d/3),
310
                new Rectangle2D.Double(100, 4*100d/3, 50, 2*100d/3),
311
                new Rectangle2D.Double(150, 4*100d/3, 50, 2*100d/3)
312

  
313
            },
314
            model.getCells()
315
        );
316
    }
317

  
318
    public void test11_SplitVerticallyCell() {
319
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
320
        model.sort();
321
        model.dump(null);
322
        
323
        checkCells(new Rectangle2D.Double[] {
324
                new Rectangle2D.Double(0, 0, 25, 100d/3),
325
                new Rectangle2D.Double(25, 0, 25, 100d/3),
326
                new Rectangle2D.Double(50, 0, 25, 100d/3),
327
                new Rectangle2D.Double(75, 0, 25, 100d/3),
328
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
329
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
330
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
331
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
332
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
333
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
334
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
335
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
336

  
337
            },
338
            model.getCells()
339
        );
340
        
341
        Cell cell = model.getCell(35, 35);
342
        model.splitCellVertically(cell);
343
        
344
        model.sort();
345
        System.out.println("===================");
346
        model.dump(null);
347
        
348
        checkCells(new Rectangle2D.Double[] {
349
                new Rectangle2D.Double(0, 0, 25, 100d/3),
350
                new Rectangle2D.Double(25, 0, 25, 100d/3),
351
                new Rectangle2D.Double(50, 0, 25, 100d/3),
352
                new Rectangle2D.Double(75, 0, 25, 100d/3),
353
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
354
                new Rectangle2D.Double(25, 100d/3, 12.5, 100d/3),
355
                new Rectangle2D.Double(37.5, 100d/3, 12.5, 100d/3),
356
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
357
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
358
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
359
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
360
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
361
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
362

  
363
            },
364
            model.getCells()
365
        );
366

  
367
    }
368

  
369
    public void test12_SplitVerticallyCells() {
370
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
371
        model.sort();
372
        model.dump(null);
373
        
374
        checkCells(new Rectangle2D.Double[] {
375
                new Rectangle2D.Double(0, 0, 25, 100d/3),
376
                new Rectangle2D.Double(25, 0, 25, 100d/3),
377
                new Rectangle2D.Double(50, 0, 25, 100d/3),
378
                new Rectangle2D.Double(75, 0, 25, 100d/3),
379
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
380
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
381
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
382
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
383
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
384
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
385
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
386
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
387

  
388
            },
389
            model.getCells()
390
        );
391
        
392
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
393
        model.splitCellsVertically(cells);
394
        
395
        model.sort();
396
        System.out.println("===================");
397
        model.dump(null);
398
        
399
        checkCells(new Rectangle2D.Double[] {
400
                new Rectangle2D.Double(0, 0, 25, 100d/3),
401
                new Rectangle2D.Double(25, 0, 25, 100d/3),
402
                new Rectangle2D.Double(50, 0, 25, 100d/3),
403
                new Rectangle2D.Double(75, 0, 25, 100d/3),
404
                new Rectangle2D.Double(0, 100d/3, 12.5, 100d/3),
405
                new Rectangle2D.Double(12.5, 100d/3, 12.5, 100d/3),
406
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
407
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
408
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
409
                new Rectangle2D.Double(0, 2*100d/3, 12.5, 100d/3),
410
                new Rectangle2D.Double(12.5, 2*100d/3, 12.5, 100d/3),
411
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
412
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
413
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
414

  
415
            },
416
            model.getCells()
417
        );
418
        
419
    }
420

  
421

  
422
    public void test13_SplitHorizontallyCell() {
423
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
424
        model.sort();
425
        model.dump(null);
426
        
427
        checkCells(new Rectangle2D.Double[] {
428
                new Rectangle2D.Double(0, 0, 25, 100d/3),
429
                new Rectangle2D.Double(25, 0, 25, 100d/3),
430
                new Rectangle2D.Double(50, 0, 25, 100d/3),
431
                new Rectangle2D.Double(75, 0, 25, 100d/3),
432
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
433
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
434
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
435
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
436
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
437
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
438
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
439
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
440

  
441
            },
442
            model.getCells()
443
        );
444
        
445
        Cell cell = model.getCell(35, 35);
446
        model.splitCellHorizontally(cell);
447
        
448
        model.sort();
449
        System.out.println("===================");
450
        model.dump(null);
451
        
452
        checkCells(new Rectangle2D.Double[] {
453
                new Rectangle2D.Double(0, 0, 25, 100d/3),
454
                new Rectangle2D.Double(25, 0, 25, 100d/3),
455
                new Rectangle2D.Double(50, 0, 25, 100d/3),
456
                new Rectangle2D.Double(75, 0, 25, 100d/3),
457
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
458
                new Rectangle2D.Double(25, 100d/3, 25, 100d/6),
459
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
460
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
461
                new Rectangle2D.Double(25, 50, 25, 100d/6),
462
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
463
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
464
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
465
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
466

  
467
            },
468
            model.getCells()
469
        );
470

  
471
    }
472

  
473
    public void test14_SplitHorizontallyCells() {
474
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
475
        model.sort();
476
        model.dump(null);
477
        
478
        checkCells(new Rectangle2D.Double[] {
479
                new Rectangle2D.Double(0, 0, 25, 100d/3),
480
                new Rectangle2D.Double(25, 0, 25, 100d/3),
481
                new Rectangle2D.Double(50, 0, 25, 100d/3),
482
                new Rectangle2D.Double(75, 0, 25, 100d/3),
483
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
484
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
485
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
486
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
487
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
488
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
489
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
490
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
491

  
492
            },
493
            model.getCells()
494
        );
495
        
496
        List<Cell> cells = model.getCells( new Rectangle2D.Double(0, 100d/3, 25, 2*100d/3) );
497
        model.splitCellsHorizontally(cells);
498
        
499
        model.sort();
500
        System.out.println("===================");
501
        model.dump(null);
502
        
503
        checkCells(new Rectangle2D.Double[] {
504
                new Rectangle2D.Double(0, 0, 25, 100d/3),
505
                new Rectangle2D.Double(25, 0, 25, 100d/3),
506
                new Rectangle2D.Double(50, 0, 25, 100d/3),
507
                new Rectangle2D.Double(75, 0, 25, 100d/3),
508
                new Rectangle2D.Double(0, 100d/3, 25.0, 100d/6),
509
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
510
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
511
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
512
                new Rectangle2D.Double(0, 50, 25.0, 100d/6),
513
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/6),
514
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
515
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
516
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3),
517
                new Rectangle2D.Double(0, 5*100d/6, 25, 100d/6)
518

  
519
            },
520
            model.getCells()
521
        );
522
        
523
    }
524

  
525
    public void test15_MoveFirstVerticaLineToTheRight() {
526
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
527
        model.sort();
528
        model.dump(null);
529
        
530
        checkCells(new Rectangle2D.Double[] {
531
                new Rectangle2D.Double(0, 0, 25, 100d/3),
532
                new Rectangle2D.Double(25, 0, 25, 100d/3),
533
                new Rectangle2D.Double(50, 0, 25, 100d/3),
534
                new Rectangle2D.Double(75, 0, 25, 100d/3),
535
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
536
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
537
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
538
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
539
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
540
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
541
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
542
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
543

  
544
            },
545
            model.getCells()
546
        );
547
        
548
        
549
        
550
        model.moveVerticalLine(0d, 10d);
551
        
552
        model.sort();
553
        System.out.println("===================");
554
        model.dump(null);
555
        
556
        checkCells(new Rectangle2D.Double[] {
557
                new Rectangle2D.Double(0, 0, 15, 100d/3),
558
                new Rectangle2D.Double(15, 0, 25, 100d/3),
559
                new Rectangle2D.Double(40, 0, 25, 100d/3),
560
                new Rectangle2D.Double(65, 0, 25, 100d/3),
561
                new Rectangle2D.Double(0, 100d/3, 15, 100d/3),
562
                new Rectangle2D.Double(15, 100d/3, 25, 100d/3),
563
                new Rectangle2D.Double(40, 100d/3, 25, 100d/3),
564
                new Rectangle2D.Double(65, 100d/3, 25, 100d/3),
565
                new Rectangle2D.Double(0, 2*100d/3, 15, 100d/3),
566
                new Rectangle2D.Double(15, 2*100d/3, 25, 100d/3),
567
                new Rectangle2D.Double(40, 2*100d/3, 25, 100d/3),
568
                new Rectangle2D.Double(65, 2*100d/3, 25, 100d/3)
569

  
570
            },
571
            model.getCells()
572
        );
573
        
574
    }
575
    
576
    public void test16_MoveFirstVerticaLineToTheLeft() {
577
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
578
        model.sort();
579
        model.dump(null);
580
        
581
        checkCells(new Rectangle2D.Double[] {
582
                new Rectangle2D.Double(0, 0, 25, 100d/3),
583
                new Rectangle2D.Double(25, 0, 25, 100d/3),
584
                new Rectangle2D.Double(50, 0, 25, 100d/3),
585
                new Rectangle2D.Double(75, 0, 25, 100d/3),
586
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
587
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
588
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
589
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
590
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
591
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
592
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
593
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
594

  
595
            },
596
            model.getCells()
597
        );
598
        
599
        model.moveVerticalLine(0d, -10d);
600
        
601
        model.sort();
602
        System.out.println("===================");
603
        model.dump(null);
604
        
605
        checkCells(new Rectangle2D.Double[] {
606
                new Rectangle2D.Double(0, 0, 35, 100d/3),
607
                new Rectangle2D.Double(35, 0, 25, 100d/3),
608
                new Rectangle2D.Double(60, 0, 25, 100d/3),
609
                new Rectangle2D.Double(85, 0, 25, 100d/3),
610
                new Rectangle2D.Double(0, 100d/3, 35, 100d/3),
611
                new Rectangle2D.Double(35, 100d/3, 25, 100d/3),
612
                new Rectangle2D.Double(60, 100d/3, 25, 100d/3),
613
                new Rectangle2D.Double(85, 100d/3, 25, 100d/3),
614
                new Rectangle2D.Double(0, 2*100d/3, 35, 100d/3),
615
                new Rectangle2D.Double(35, 2*100d/3, 25, 100d/3),
616
                new Rectangle2D.Double(60, 2*100d/3, 25, 100d/3),
617
                new Rectangle2D.Double(85, 2*100d/3, 25, 100d/3)
618

  
619
            },
620
            model.getCells()
621
        );
622
        
623
    }
624
    
625
    public void test17_MoveLastVerticaLineToTheRight() {
626
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
627
        model.sort();
628
        model.dump(null);
629
        
630
        checkCells(new Rectangle2D.Double[] {
631
                new Rectangle2D.Double(0, 0, 25, 100d/3),
632
                new Rectangle2D.Double(25, 0, 25, 100d/3),
633
                new Rectangle2D.Double(50, 0, 25, 100d/3),
634
                new Rectangle2D.Double(75, 0, 25, 100d/3),
635
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
636
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
637
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
638
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
639
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
640
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
641
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
642
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
643

  
644
            },
645
            model.getCells()
646
        );
647
        
648
        model.moveVerticalLine(100d, 110d);
649
        
650
        model.sort();
651
        System.out.println("===================");
652
        model.dump(null);
653
        
654
        checkCells(new Rectangle2D.Double[] {
655
                new Rectangle2D.Double(0, 0, 25, 100d/3),
656
                new Rectangle2D.Double(25, 0, 25, 100d/3),
657
                new Rectangle2D.Double(50, 0, 25, 100d/3),
658
                new Rectangle2D.Double(75, 0, 35, 100d/3),
659
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
660
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
661
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
662
                new Rectangle2D.Double(75, 100d/3, 35, 100d/3),
663
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
664
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
665
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
666
                new Rectangle2D.Double(75, 2*100d/3, 35, 100d/3)
667

  
668
            },
669
            model.getCells()
670
        );
671
        
672
    }
673

  
674
    public void test18_MoveLastVerticaLineToTheLeft() {
675
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
676
        model.sort();
677
        model.dump(null);
678
        
679
        checkCells(new Rectangle2D.Double[] {
680
                new Rectangle2D.Double(0, 0, 25, 100d/3),
681
                new Rectangle2D.Double(25, 0, 25, 100d/3),
682
                new Rectangle2D.Double(50, 0, 25, 100d/3),
683
                new Rectangle2D.Double(75, 0, 25, 100d/3),
684
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
685
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
686
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
687
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
688
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
689
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
690
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
691
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
692

  
693
            },
694
            model.getCells()
695
        );
696
        
697
        model.moveVerticalLine(100d, 90d);
698
        
699
        model.sort();
700
        System.out.println("===================");
701
        model.dump(null);
702
        
703
        checkCells(new Rectangle2D.Double[] {
704
                new Rectangle2D.Double(0, 0, 25, 100d/3),
705
                new Rectangle2D.Double(25, 0, 25, 100d/3),
706
                new Rectangle2D.Double(50, 0, 25, 100d/3),
707
                new Rectangle2D.Double(75, 0, 15, 100d/3),
708
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
709
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
710
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
711
                new Rectangle2D.Double(75, 100d/3, 15, 100d/3),
712
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
713
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
714
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
715
                new Rectangle2D.Double(75, 2*100d/3, 15, 100d/3)
716

  
717
            },
718
            model.getCells()
719
        );
720
        
721
    }
722

  
723
    public void test19_MoveVerticaLinetoTheRight() {
724
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
725
        model.sort();
726
        model.dump(null);
727
        
728
        checkCells(new Rectangle2D.Double[] {
729
                new Rectangle2D.Double(0, 0, 25, 100d/3),
730
                new Rectangle2D.Double(25, 0, 25, 100d/3),
731
                new Rectangle2D.Double(50, 0, 25, 100d/3),
732
                new Rectangle2D.Double(75, 0, 25, 100d/3),
733
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
734
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
735
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
736
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
737
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
738
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
739
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
740
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
741

  
742
            },
743
            model.getCells()
744
        );
745
        
746
        model.moveVerticalLine(25d, 30d);
747
        
748
        model.sort();
749
        System.out.println("===================");
750
        model.dump(null);
751
        
752
        checkCells(new Rectangle2D.Double[] {
753
                new Rectangle2D.Double(0, 0, 30, 100d/3),
754
                new Rectangle2D.Double(30, 0, 20, 100d/3),
755
                new Rectangle2D.Double(50, 0, 25, 100d/3),
756
                new Rectangle2D.Double(75, 0, 25, 100d/3),
757
                new Rectangle2D.Double(0, 100d/3, 30, 100d/3),
758
                new Rectangle2D.Double(30, 100d/3, 20, 100d/3),
759
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
760
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
761
                new Rectangle2D.Double(0, 2*100d/3, 30, 100d/3),
762
                new Rectangle2D.Double(30, 2*100d/3, 20, 100d/3),
763
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
764
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
765

  
766
            },
767
            model.getCells()
768
        );
769
        
770
    }
771

  
772
    public void test20_MoveVerticaLineTheLeft() {
773
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
774
        model.sort();
775
        model.dump(null);
776
        
777
        checkCells(new Rectangle2D.Double[] {
778
                new Rectangle2D.Double(0, 0, 25, 100d/3),
779
                new Rectangle2D.Double(25, 0, 25, 100d/3),
780
                new Rectangle2D.Double(50, 0, 25, 100d/3),
781
                new Rectangle2D.Double(75, 0, 25, 100d/3),
782
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
783
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
784
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
785
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
786
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
787
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
788
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
789
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
790

  
791
            },
792
            model.getCells()
793
        );
794
        
795
        model.moveVerticalLine(25d, 20d);
796
        
797
        model.sort();
798
        System.out.println("===================");
799
        model.dump(null);
800
        
801
        checkCells(new Rectangle2D.Double[] {
802
                new Rectangle2D.Double(0, 0, 20, 100d/3),
803
                new Rectangle2D.Double(20, 0, 30, 100d/3),
804
                new Rectangle2D.Double(50, 0, 25, 100d/3),
805
                new Rectangle2D.Double(75, 0, 25, 100d/3),
806
                new Rectangle2D.Double(0, 100d/3, 20, 100d/3),
807
                new Rectangle2D.Double(20, 100d/3, 30, 100d/3),
808
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
809
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
810
                new Rectangle2D.Double(0, 2*100d/3, 20, 100d/3),
811
                new Rectangle2D.Double(20, 2*100d/3, 30, 100d/3),
812
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
813
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
814

  
815
            },
816
            model.getCells()
817
        );
818
        
819
    }
820
    
821
    public void test21_MoveFirstHorizontalLineDown() {
822
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
823
        model.sort();
824
        model.dump(null);
825
        
826
        checkCells(new Rectangle2D.Double[] {
827
                new Rectangle2D.Double(0, 0, 25, 100d/3),
828
                new Rectangle2D.Double(25, 0, 25, 100d/3),
829
                new Rectangle2D.Double(50, 0, 25, 100d/3),
830
                new Rectangle2D.Double(75, 0, 25, 100d/3),
831
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
832
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
833
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
834
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
835
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
836
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
837
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
838
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
839

  
840
            },
841
            model.getCells()
842
        );
843
        
844
        model.moveHorizontalLine(0d, 10d);
845
        
846
        model.sort();
847
        System.out.println("===================");
848
        model.dump(null);
849
        
850
        checkCells(new Rectangle2D.Double[] {
851
                new Rectangle2D.Double(0, 0, 25, 100d/3-10),
852
                new Rectangle2D.Double(25, 0, 25, 100d/3-10),
853
                new Rectangle2D.Double(50, 0, 25, 100d/3-10),
854
                new Rectangle2D.Double(75, 0, 25, 100d/3-10),
855
                new Rectangle2D.Double(0, 100d/3-10, 25, 100d/3),
856
                new Rectangle2D.Double(25, 100d/3-10, 25, 100d/3),
857
                new Rectangle2D.Double(50, 100d/3-10, 25, 100d/3),
858
                new Rectangle2D.Double(75, 100d/3-10, 25, 100d/3),
859
                new Rectangle2D.Double(0, 2*100d/3-10, 25, 100d/3),
860
                new Rectangle2D.Double(25, 2*100d/3-10, 25, 100d/3),
861
                new Rectangle2D.Double(50, 2*100d/3-10, 25, 100d/3),
862
                new Rectangle2D.Double(75, 2*100d/3-10, 25, 100d/3)
863

  
864
            },
865
            model.getCells()
866
        );
867
        
868
    }
869
    
870
    public void test22_MoveFirstHorizontalLineUp() {
871
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
872
        model.sort();
873
        model.dump(null);
874
        
875
        checkCells(new Rectangle2D.Double[] {
876
                new Rectangle2D.Double(0, 0, 25, 100d/3),
877
                new Rectangle2D.Double(25, 0, 25, 100d/3),
878
                new Rectangle2D.Double(50, 0, 25, 100d/3),
879
                new Rectangle2D.Double(75, 0, 25, 100d/3),
880
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
881
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
882
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
883
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
884
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
885
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
886
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
887
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
888

  
889
            },
890
            model.getCells()
891
        );
892
        
893
        model.moveHorizontalLine(0d, -10d);
894
        
895
        model.sort();
896
        System.out.println("===================");
897
        model.dump(null);
898
        
899
        checkCells(new Rectangle2D.Double[] {
900
                new Rectangle2D.Double(0, 0, 25, 100d/3+10),
901
                new Rectangle2D.Double(25, 0, 25, 100d/3+10),
902
                new Rectangle2D.Double(50, 0, 25, 100d/3+10),
903
                new Rectangle2D.Double(75, 0, 25, 100d/3+10),
904
                new Rectangle2D.Double(0, 100d/3+10, 25, 100d/3),
905
                new Rectangle2D.Double(25, 100d/3+10, 25, 100d/3),
906
                new Rectangle2D.Double(50, 100d/3+10, 25, 100d/3),
907
                new Rectangle2D.Double(75, 100d/3+10, 25, 100d/3),
908
                new Rectangle2D.Double(0, 2*100d/3+10, 25, 100d/3),
909
                new Rectangle2D.Double(25, 2*100d/3+10, 25, 100d/3),
910
                new Rectangle2D.Double(50, 2*100d/3+10, 25, 100d/3),
911
                new Rectangle2D.Double(75, 2*100d/3+10, 25, 100d/3)
912

  
913
            },
914
            model.getCells()
915
        );
916
        
917
    }
918
    
919
    public void test23_MoveLastHorizontalLineDown() {
920
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
921
        model.sort();
922
        model.dump(null);
923
        
924
        checkCells(new Rectangle2D.Double[] {
925
                new Rectangle2D.Double(0, 0, 25, 100d/3),
926
                new Rectangle2D.Double(25, 0, 25, 100d/3),
927
                new Rectangle2D.Double(50, 0, 25, 100d/3),
928
                new Rectangle2D.Double(75, 0, 25, 100d/3),
929
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
930
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
931
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
932
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
933
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
934
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
935
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
936
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
937

  
938
            },
939
            model.getCells()
940
        );
941
        
942
        model.moveHorizontalLine(100d, 110d);
943
        
944
        model.sort();
945
        System.out.println("===================");
946
        model.dump(null);
947
        
948
        checkCells(new Rectangle2D.Double[] {
949
                new Rectangle2D.Double(0, 0, 25, 100d/3),
950
                new Rectangle2D.Double(25, 0, 25, 100d/3),
951
                new Rectangle2D.Double(50, 0, 25, 100d/3),
952
                new Rectangle2D.Double(75, 0, 25, 100d/3),
953
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
954
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
955
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
956
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
957
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3+10),
958
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3+10),
959
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3+10),
960
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3+10)
961

  
962
            },
963
            model.getCells()
964
        );
965
        
966
    }
967

  
968
    public void test24_MoveLastHorizontalLineUp() {
969
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
970
        model.sort();
971
        model.dump(null);
972
        
973
        checkCells(new Rectangle2D.Double[] {
974
                new Rectangle2D.Double(0, 0, 25, 100d/3),
975
                new Rectangle2D.Double(25, 0, 25, 100d/3),
976
                new Rectangle2D.Double(50, 0, 25, 100d/3),
977
                new Rectangle2D.Double(75, 0, 25, 100d/3),
978
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
979
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
980
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
981
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
982
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
983
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
984
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
985
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
986

  
987
            },
988
            model.getCells()
989
        );
990
        
991
        model.moveHorizontalLine(100d, 90d);
992
        
993
        model.sort();
994
        System.out.println("===================");
995
        model.dump(null);
996
        
997
        checkCells(new Rectangle2D.Double[] {
998
                new Rectangle2D.Double(0, 0, 25, 100d/3),
999
                new Rectangle2D.Double(25, 0, 25, 100d/3),
1000
                new Rectangle2D.Double(50, 0, 25, 100d/3),
1001
                new Rectangle2D.Double(75, 0, 25, 100d/3),
1002
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
1003
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
1004
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
1005
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
1006
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3-10),
1007
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3-10),
1008
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3-10),
1009
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3-10)
1010

  
1011
            },
1012
            model.getCells()
1013
        );
1014
        
1015
    }
1016

  
1017
    public void test25_MoveHorizontalLineDown() {
1018
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
1019
        model.sort();
1020
        model.dump(null);
1021
        
1022
        checkCells(new Rectangle2D.Double[] {
1023
                new Rectangle2D.Double(0, 0, 25, 100d/3),
1024
                new Rectangle2D.Double(25, 0, 25, 100d/3),
1025
                new Rectangle2D.Double(50, 0, 25, 100d/3),
1026
                new Rectangle2D.Double(75, 0, 25, 100d/3),
1027
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
1028
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
1029
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
1030
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
1031
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
1032
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
1033
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
1034
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
1035

  
1036
            },
1037
            model.getCells()
1038
        );
1039
        
1040
        model.moveHorizontalLine(100d/3, 100d/3+10);
1041
        
1042
        model.sort();
1043
        System.out.println("===================");
1044
        model.dump(null);
1045
        
1046
        checkCells(new Rectangle2D.Double[] {
1047
                new Rectangle2D.Double(0, 0, 25, 100d/3+10),
1048
                new Rectangle2D.Double(25, 0, 25, 100d/3+10),
1049
                new Rectangle2D.Double(50, 0, 25, 100d/3+10),
1050
                new Rectangle2D.Double(75, 0, 25, 100d/3+10),
1051
                new Rectangle2D.Double(0, 100d/3+10, 25, 100d/3-10),
1052
                new Rectangle2D.Double(25, 100d/3+10, 25, 100d/3-10),
1053
                new Rectangle2D.Double(50, 100d/3+10, 25, 100d/3-10),
1054
                new Rectangle2D.Double(75, 100d/3+10, 25, 100d/3-10),
1055
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
1056
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
1057
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
1058
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
1059

  
1060
            },
1061
            model.getCells()
1062
        );
1063
        
1064
    }
1065

  
1066
    public void test26_MoveHorizontalLineUp() {
1067
        MapBoxModel model= new MapBoxModel(new Dimension2DDouble(100d, 100d), 4, 3);
1068
        model.sort();
1069
        model.dump(null);
1070
        
1071
        checkCells(new Rectangle2D.Double[] {
1072
                new Rectangle2D.Double(0, 0, 25, 100d/3),
1073
                new Rectangle2D.Double(25, 0, 25, 100d/3),
1074
                new Rectangle2D.Double(50, 0, 25, 100d/3),
1075
                new Rectangle2D.Double(75, 0, 25, 100d/3),
1076
                new Rectangle2D.Double(0, 100d/3, 25, 100d/3),
1077
                new Rectangle2D.Double(25, 100d/3, 25, 100d/3),
1078
                new Rectangle2D.Double(50, 100d/3, 25, 100d/3),
1079
                new Rectangle2D.Double(75, 100d/3, 25, 100d/3),
1080
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
1081
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
1082
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
1083
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
1084

  
1085
            },
1086
            model.getCells()
1087
        );
1088
        
1089
        model.moveHorizontalLine(100d/3, 100d/3-10);
1090
        
1091
        model.sort();
1092
        System.out.println("===================");
1093
        model.dump(null);
1094
        
1095
        checkCells(new Rectangle2D.Double[] {
1096
                new Rectangle2D.Double(0, 0, 25, 100d/3-10),
1097
                new Rectangle2D.Double(25, 0, 25, 100d/3-10),
1098
                new Rectangle2D.Double(50, 0, 25, 100d/3-10),
1099
                new Rectangle2D.Double(75, 0, 25, 100d/3-10),
1100
                new Rectangle2D.Double(0, 100d/3-10, 25, 100d/3+10),
1101
                new Rectangle2D.Double(25, 100d/3-10, 25, 100d/3+10),
1102
                new Rectangle2D.Double(50, 100d/3-10, 25, 100d/3+10),
1103
                new Rectangle2D.Double(75, 100d/3-10, 25, 100d/3+10),
1104
                new Rectangle2D.Double(0, 2*100d/3, 25, 100d/3),
1105
                new Rectangle2D.Double(25, 2*100d/3, 25, 100d/3),
1106
                new Rectangle2D.Double(50, 2*100d/3, 25, 100d/3),
1107
                new Rectangle2D.Double(75, 2*100d/3, 25, 100d/3)
1108

  
1109
            },
1110
            model.getCells()
1111
        );
1112
        
1113
    }
1114
    
1115
}
0 1116

  
tags/org.gvsig.app.document.layout2.app-2.0.300/org.gvsig.app.document.layout2.app.mainplugin/src/test/resources/README.txt
1
Put into this folder the resources needed by your test classes.
2

  
3
This folder is added to the Tests classpath, so you can load any resources 
4
through the ClassLoader.
5

  
6
By default, in this folder you can find an example of log4j configuration,
7
prepared to log messages through the console, so logging works when you
8
run your tests classes.
tags/org.gvsig.app.document.layout2.app-2.0.300/org.gvsig.app.document.layout2.app.mainplugin/src/test/resources/log4j.xml
1
<?xml version="1.0" encoding="ISO-8859-1" ?>
2
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
3

  
4
<!-- 
5
Log4J configuration file for unit tests execution.
6
 -->
7
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
8

  
9
	<!-- Appender configuration to show logging messages through the console -->
10
	<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
11
		<layout class="org.apache.log4j.PatternLayout">
12
			<param name="ConversionPattern" value="%d{HH:mm:ss,SSS} %-5p [%c{2}.%M()]\n  %m%n" />
13
		</layout>
14
	</appender>
15

  
16
	<!-- 
17
	Activate logging messages of DEBUG level of higher only for the
18
	org.gvsig.tools packages.
19
	You can put full classes names or packages instead, to configure
20
	logging for all the classes and subpackages of the package.
21
	-->
22
	<category name="org.gvsig.tools">
23
		<priority value="DEBUG" />
24
	</category>
25
	<category name="org.gvsig.app.document.layout">
26
		<priority value="DEBUG" />
27
	</category>
28

  
29
	<!-- 
30
	By default, show only logging messages of INFO level or higher, 
31
	through the previously configured CONSOLE appender. 
32
	-->
33
	<root>
34
		<priority value="INFO" />
35
		<appender-ref ref="CONSOLE" />
36
	</root>
37
</log4j:configuration>
0 38

  
tags/org.gvsig.app.document.layout2.app-2.0.300/org.gvsig.app.document.layout2.app.mainplugin/src/main/resources-plugin/i18n/text.properties
1
Encuadre_Vista=Encuadre sobre la vista
2
Zoom_Completo_Vista=Zoom completo sobre la vista
3
Zoom_Mas_Vista=Zoom m\u00e1s sobre la vista
4
Zoom_Menos_Vista=Zoom menos sobre la vista
5
seleccionar_por_rectangulo=Seleccionar por rect\u00e1ngulo
6
pila_de_comandos=Pila de comandos
7
Imprimir=Imprimir
8
tamano_posicion=Tama\u00f1o/posici\u00f3n
9
insertar_localizador=Insertar localizador
10
_Undo_redo_history=Pila de comandos
11
_Error_while_showing_print_dialog=Error al mostrar di\u00e1logo de impresi\u00f3n
12
_Some_views_excluded_from_list_because_have_editing_layers=Algunas vistas se han exclu\u00eddo de la lista por tener capas en edici\u00f3n
13
_Cannot_draw_view_if_layers_in_editing_mode=No es posible dibujar vista con capas en edici\u00f3n
14
_Layout_template=Plantilla de mapa
15
_Cant_load_layout_template=No se ha podido abrir plantilla de mapa
16
_Bad_format_in_layout_template=Formato inv\u00e1lido en plantilla de mapa
17
Mapa=Mapa
18
High_600_dpi=Alta: 600 puntos por pulgada
19
Normal_300_dpi=Normal: 300 puntos por pulgada
20
Low_72_dpi=Baja: 72 puntos por pulgada
21
Create_new_view=Crear nueva Vista
22
Insert_view=Insertar vista
23
Configure_view=Configurar vista
24
Grid_and_ruler=Malla y regla
25
Show_page_config_dialog_when_layout_document_is_created=Mostrar el di\u00e1logo de configuraci\u00f3n de p\u00e1gina cuando se crea un documento Mapa
26
User_interface=Interfaz de usuario
27
Show_table_of_contents_TOC_for_Layout_views=Mostrar tabla de contenidos (TOC) para las vistas del Layout
28
Synchronize_layers=Sincronizar capas
29
Synchronize_extents=Sincronizar extensi\u00f3n del mapa
30
Warning_Enabling_layer_synchronization_will_discard_any_change_not_present_in_associated_view=\u00a1\u00a1Cuidado!! Al activar la sincronizaci\u00f3n de capas se perder\u00e1 cualquier cambio que no est\u00e9 presente en la vista asociada
31
Warning_Layer_sync=Aviso: sincronizaci\u00f3n de capas
32
Top_extent_lbl=Superior
33
Bottom_extent_lbl=Inferior
34
Left_extent_lbl=Izquierda
35
Right_extent_lbl=Derecha
36
Synchronization_of_the_view_and_the_frame_view=Sincronizaci\u00f3n de la vista y el marco de la vista
37
Fixed_scale_and_extent=Escala y extensi\u00f3n fijos
38
Non_fixed=No fija
39
Fixed_scale=Escala fija
40
Fixed_extent=Extensi\u00f3n fija
41
1__=1:
42
Extent_cant_be_synchronized_when_using_fixed_scale_or_fixed_extent=La extensi\u00f3n no se puede sincronizar en modo escala fija o extensi\u00f3n fija
43
Number_format=Formato de n\u00famero
44
Interval=Intervalo
45
Number_of_horizontal_divisions=N\u00famero de divisiones horizontales
46
Number_of_vertical_divisions=N\u00famero de divisiones verticales
47
Label=Etiqueta
48
Horizontal_label_rotation=Rotaci\u00f3n horizontal
49
Vertical_label_rotation=Rotaci\u00f3n vertical
50
Font_type=Tipo de letra
51
Decimal_separator=Separador decimal
52
Thousands_separator=Separador de miles
53
Decimal_digits=D\u00edgitos decimales
54
Anchor=Anclaje
55
Corner=Lateral
56
Center=Centro
57
new_layout=Nuevo mapa
58
_Format=Formato
59
_Use_decimal_DD_format=Usar formato decimal (DD)
60
_Use_degres_minutes_secons_DMS_format=Usar formato grados/minutos/segundos (DMS)
61
_Identifier=Identificador
62
_Configure_report_from_layout=Configurar informe a partir de mapa
63
_Configure_a_report_from_a_layout=Configurar un informe a partir de un mapa
64
_Configure_report=Configurar informe
65
_Close=Cerrar
66
_Label=Etiqueta
67

  
68
_Cant_find_resource_XreportnameX=No se ha podido encontrar el recurso ''{0}''
69
_Template_name_is_blank=El nombre de la plantilla est\u00e1 en blanco
70
_Export_report_to_layout=Exportar informe a plantilla
71
_Export_a_report_to_a_layout=Exportar un informe a una plantilla
72
_Export_report=Exportar informe
73
_Label_of_the_frame_of_type_view_of_the_template_in_which_the_data_will_be_updated=Etiqueta del marco, de tipo vista, de la plantilla en la que se actualizar\u00e1n los datos
74
_Center_to_current_row=Centrar a la geometr\u00eda del registro
75
_Center_to_current_row_description=Centra la vista a la geometr\u00eda del registro
76
_Zoom_to_current_row=Zoom a la geometr\u00eda del registro
77
_Zoom_to_current_row_description=Realiza un zoom a la geometr\u00eda del registro
78
_Buffer_size=Tama\u00f1o del b\u00fafer
79
_Buffer_size_description=Tama\u00f1o del margen, alrededor de la geometr\u00eda del registro en unidades de la capa, que se utilizar\u00e1 para realizar el zoom
80
_Use_internal_pdf_viewer=Usar el visor de pdf interno
81
_Use_internal_pdf_viewer_description=Si se selecciona se utilizar\u00e1 el visor de pdf interno de gvSIG, si no, se utilizar\u00e1 el visor de pdf configurado en el sistema
82
_Building_pages=Construyendo p\u00e1ginas
83
_Building_pdf=Construyendo documento pdf
84
_Creating_report=Creando informe
85
_Highlight_record=Resaltar registro
86
_Line_color=Color de la linea
87
_Transparency=Transparencia
88
_Select_symbol=Seleccionar s\u00edmbolo
89
_to_record=al registro
90
_to_everything_except_record=a todo excepto al registro
91
_Apply_symbol=Aplicar s\u00edmbolo
92
_Invalid_geometry=Geometr\u00eda no v\u00e1lida
93
_Cant_print_report=No se ha podido imprimir el informe
94
_Highlight_record_in_report=Resaltar registro en el informe
95
_the_page=la p\u00e1gina
96
_the_selection=la selecci\u00f3n
97
_the_greater_object=el objeto mayor
98
_the_minor_object=el objeto menor
99
_Relative_to=Relativo a
100
_Align=Alinear
101
_Distribute=Distribuir
102
_Match_size=Igualar tama\u00f1o
103
_Gap=Espaciado
104
_Align_selected_elements_to_the_left=Alinea los elementos seleccionados a la izquierda
105
_Vertically_align_selected_elements_to_the_center=Alinea verticalmente los elementos seleccionados al centro
106
_Align_selected_elements_to_the_right=Alinea los elementos seleccionados a la derecha
107
_Align_selected_elements_above=Alinea los elementos seleccionados arriba
108
_Horizontally_align_selected_elements_to_the_center=Alinea horizontalmente los elementos seleccionados al centro
109
_Align_selected_elements_below=Alinea los elementos seleccionados abajo
110
_Horizontally_distributes_the_selected_elements_with_even_spacing_between_their_left_edges=Distribuye horizontalmente los elementos seleccionados con un espacio uniforme entre sus bordes izquierdos
111
_Vertically_distributes_the_selected_elements_with_even_spacing_between_their_centers=Distribuye verticalmente los elementos seleccionados con espacio uniforme entre sus centros
112
_Horizontally_distributes_the_selected_elements_with_even_spacing_between_their_right_edges=Distribuye horizontalmente los elementos seleccionados con un espacio uniforme entre sus bordes derechos
113
_Vertically_distributes_the_selected_elements_with_even_spacing_between_their_top_edges=Distribuye verticalmente los elementos seleccionados con un espacio uniforme entre sus bordes superiores
114
_Horizontally_distributes_the_selected_elements_with_even_spacing_between_their_centers=Distribuye horizontalmente los elementos seleccionados con espacio uniforme entre sus centros
115
_Vertically_distributes_the_selected_elements_with_even_spacing_between_their_bottom_edges=Distribuye verticalmente los elementos seleccionados con un espacio uniforme entre sus bordes inferiores
116
_Matches_the_horizontal_size_of_the_selected_elements=Iguala el tama\u00f1o horizontal de los elementos seleccionados
117
_Matches_the_vertical_size_of_the_selected_elements=Iguala el tama\u00f1o vertical de los elementos seleccionados.
118
_Matches_the_size_of_the_selected_elements=Iguala el tama\u00f1o de los elementos seleccionados.
119
_Horizontally_distributes_selected_elements_with_even_spacing=Distribuye horizontalmente los elementos seleccionados con espacios uniformes
120
_Vertically_distributes_selected_elements_with_even_spacing=Distribuye verticalmente los elementos seleccionados con espacios uniformes
121
_Go_to_folder_project=Ir a la carpeta del proyecto
122
_Combine_cells=Combinar celdas
123
_Add_column=A\u00f1adir columna
124
_Add_row=A\u00f1adir fila
125
_Insert_column=Insertar columna
126
_Insert_row=Insertar fila
127
_Remove_column=Borrar columna
128
_Remove_row=Borrar fila
129
_Remove_cells=Borrar celdas
130
_Split_cells_horizontally=Dividir celdas horizontalmente
131
_Split_cells_vertically=Dividir celdas verticalmente
132
cajetin_old=Cajet\u00edn (OLD)
133
_Num_rows=N\u00ba de filas
134
_Num_columns=N\u00ba de columnas
135
_Degrees=Grados
136
_Edit_mapbox=Editar cajet\u00edn
137
_Mapbox_properties=Propiedades del cajet\u00edn
tags/org.gvsig.app.document.layout2.app-2.0.300/org.gvsig.app.document.layout2.app.mainplugin/src/main/resources-plugin/i18n/text_en.properties
1
Encuadre_Vista=View frame pan
2
Zoom_Completo_Vista=Full zoom on view
3
Zoom_Mas_Vista=Zoom in on view
4
Zoom_Menos_Vista=Zoom out on view
5
seleccionar_por_rectangulo=Select by rectangle
6
pila_de_comandos=Command stack
7
Imprimir=Print
8
tamano_posicion=Size/location
9
insertar_localizador=Insert locator
10
_Undo_redo_history=Command stack
11
_Error_while_showing_print_dialog=Error while showing print dialog
12
_Some_views_excluded_from_list_because_have_editing_layers=Some views where excluded from the list because they have layers in editing mode
13
_Cannot_draw_view_if_layers_in_editing_mode=Cannot draw view containing layers in editing mode
14
_Layout_template=Layout template
15
_Cant_load_layout_template=Unable to open layout template
16
_Bad_format_in_layout_template=Bad format in layout template
17
Mapa=Map
18
High_600_dpi=High: 600 dots per inch
19
Normal_300_dpi=Normal: 300 dots per inch
20
Low_72_dpi=Low: 72 dots per inch
21
Create_new_view=Create new View
22
Insert_view=Insert view
23
Configure_view=Configure view
24
Grid_and_ruler=Grid and ruler
25
Show_page_config_dialog_when_layout_document_is_created=Show the page config dialog when layout document is created
26
User_interface=User interface
27
Show_table_of_contents_TOC_for_Layout_views=Show table of contents (TOC) for Layout views
28
Synchronize_layers=Synchronize layers
29
Synchronize_extents=Synchronize map extent
30
Warning_Enabling_layer_synchronization_will_discard_any_change_not_present_in_associated_view=Warning!! Enabling layer synchronization will discard any change not present in the associated view
31
Warning_Layer_sync=Warning: Layer synchronization
32
Top_extent_lbl=Top
33
Bottom_extent_lbl=Bottom
34
Left_extent_lbl=Left
35
Right_extent_lbl=Right
36
Synchronization_of_the_view_and_the_frame_view=Synchronization of the view and the frame view
37
Fixed_scale_and_extent=Fixed scale and extent
38
Non_fixed=Non fixed
39
Fixed_scale=Fixed scale
40
Fixed_extent=Fixed extent
41
1__=1:
42
Extent_cant_be_synchronized_when_using_fixed_scale_or_fixed_extent=Extent can\'t be synchronized when using fixed scale or fixed extent
43
Number_format=Number format
44
Interval=Interval
45
Number_of_horizontal_divisions=Number of horizontal divisions
46
Number_of_vertical_divisions=Number of vertical divisions
47
Label=Label
48
Horizontal_label_rotation=Horizontal label rotation
49
Vertical_label_rotation=Vertical label rotation
50
Font_type=Font type
51
Decimal_separator=Decimal separator
52
Thousands_separator=Thousands separator
53
Decimal_digits=Decimal digits
54
Anchor=Anchor
55
Corner=Corner
56
Center=Center
57
new_layout=New layout
58
_Format=Format
59
_Use_decimal_DD_format=Use decimal format (DD)
60
_Use_degres_minutes_secons_DMS_format=Use degres/minutes/seconds format (DMS)
61
_Identifier=Identifier
62
_Configure_report_from_layout=Configure report from layout
63
_Configure_a_report_from_a_layout=Configure a report from a layout
64
_Configure_report=Configure report
65
_Close=Close
66
_Label=Label
67

  
68
_Cant_find_resource_XreportnameX=Can't find  resource ''{0}''
69
_Template_name_is_blank=Template name is blank
70
_Export_report_to_layout=Export report to layout
71
_Export_a_report_to_a_layout=Export a report to a layout
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff