Statistics
| Revision:

svn-gvsig-desktop / tags / v1_11_0_Build_1306 / extensions / extArcims / src / es / prodevelop / cit / gvsig / arcims / fmap / drivers / ArcImsVectorialEditableAdapter.java @ 35731

History | View | Annotate | Download (1.34 KB)

1
package es.prodevelop.cit.gvsig.arcims.fmap.drivers;
2

    
3
import java.awt.geom.Rectangle2D;
4

    
5
import org.cresques.cts.IProjection;
6

    
7
import com.hardcode.gdbms.driver.exceptions.ReadDriverException;
8
import com.iver.cit.gvsig.fmap.drivers.IFeatureIterator;
9
import com.iver.cit.gvsig.fmap.drivers.featureiterators.SpatialQueryFeatureIterator;
10
import com.iver.cit.gvsig.fmap.edition.VectorialEditableAdapter;
11

    
12
/**
13
 * We need to override one method to avoid an index problem with ArcIMS vector layers,
14
 * but keeping a VectorialEditableAdapter because we need it to create
15
 * the ProjectTable (?).
16
 *  
17
 * @author jldominguez
18
 *
19
 */
20

    
21
public class ArcImsVectorialEditableAdapter extends VectorialEditableAdapter {
22
        
23
        public ArcImsVectorialEditableAdapter() {
24
                super();
25
        }
26
        
27
        /**
28
        * Makes an spatial query returning a feature iterator over the features which intersects
29
        * or are contained in the rectangle query. Applies a restriction to the alphanumeric fields
30
        * returned by the iterator.
31
        * @param rect
32
        * @param fields
33
        * @return
34
         * @throws ReadDriverException
35
        */
36
        public IFeatureIterator getFeatureIterator(
37
                        Rectangle2D rect,
38
                        String[] fields,
39
                        IProjection newProjection,
40
                        boolean fastIteration) throws ReadDriverException {
41

    
42
                return new SpatialQueryFeatureIterator(
43
                                this,
44
                                projection,
45
                                newProjection,
46
                                fields,
47
                                rect,
48
                                fastIteration);
49
                
50
        }        
51

    
52
}