Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / operations / strategies / Strategy.java @ 228

History | View | Annotate | Download (2.27 KB)

1
/* Generated by Together */
2
package com.iver.cit.gvsig.fmap.operations.strategies;
3

    
4
import com.iver.cit.gvsig.fmap.ViewPort;
5
import com.iver.cit.gvsig.fmap.core.FGeometry;
6
import com.iver.cit.gvsig.fmap.drivers.DriverIOException;
7
import com.iver.cit.gvsig.fmap.operations.QueriedPoint;
8
import com.iver.cit.gvsig.fmap.operations.selection.VectorialSubSet;
9

    
10
import java.awt.Graphics2D;
11
import java.awt.geom.Point2D;
12
import java.awt.geom.Rectangle2D;
13
import java.awt.image.BufferedImage;
14

    
15

    
16
/**
17
 * DOCUMENT ME!
18
 *
19
 * @author $author$
20
 */
21
public interface Strategy {
22
        /**
23
         * Dibuja la capa vectorial asociada al Strategy en la imagen que se pasa
24
         * como par?metro.
25
         *
26
         * @param image DOCUMENT ME!
27
         * @param g DOCUMENT ME!
28
         * @param viewPort DOCUMENT ME!
29
         *
30
         * @throws DriverIOException DOCUMENT ME!
31
         */
32
        void draw(BufferedImage image, Graphics2D g, ViewPort viewPort)
33
                throws DriverIOException;
34

    
35
        /**
36
         * Recorre las features de la capa vectorial invocando el m?todo visit del
37
         * visitador que se pasa como par?metro, que es el que realizar? la
38
         * operaci?n relacionada con la geometry
39
         *
40
         * @param visitor DOCUMENT ME!
41
         * @param subset DOCUMENT ME!
42
         */
43
        void process(FeatureVisitor visitor, VectorialSubSet subset);
44

    
45
        /**
46
         * Realiza una query por punto en coordenadas del mundo real de la capa
47
         * vectorial asociada a la estrategia
48
         *
49
         * @param p DOCUMENT ME!
50
         * @param tolerance DOCUMENT ME!
51
         *
52
         * @return DOCUMENT ME!
53
         */
54
        VectorialSubSet queryByPoint(QueriedPoint p, double tolerance);
55

    
56
        /**
57
         * Realiza una query por rect?ngulo en coordenadas del mundo real de la
58
         * capa vectorial asociada a la estrategia
59
         *
60
         * @param rect DOCUMENT ME!
61
         *
62
         * @return DOCUMENT ME!
63
         */
64
        VectorialSubSet queryByRect(Rectangle2D rect);
65

    
66
        /**
67
         * Realiza una query por FGeometry en coordenadas del mundo real de la capa
68
         * vectorial asociada a la estrategia
69
         *
70
         * @param g DOCUMENT ME!
71
         * @param relationship DOCUMENT ME!
72
         *
73
         * @return DOCUMENT ME!
74
         */
75
        VectorialSubSet queryByShape(FGeometry g, int relationship);
76

    
77
        /**
78
         * Obtiene el rect?ngulo m?nimo que contiene todas las features
79
         * seleccionadas o null si no hay ninguna seleccionada
80
         *
81
         * @return DOCUMENT ME!
82
         */
83
        Rectangle2D getSelectionBounds();
84

    
85
        /**
86
         * Crea un ?ndice sobre la capa vectorial de la estrategia
87
         */
88
        void createIndex();
89
}