Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / core / FGeometry.java @ 267

History | View | Annotate | Download (2.06 KB)

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

    
4
import java.awt.Graphics2D;
5
import java.awt.geom.AffineTransform;
6
import java.awt.geom.Rectangle2D;
7

    
8
import org.geotools.geometry.Geometry;
9
import org.geotools.renderer.j2d.StyledShapePainter;
10
import org.geotools.renderer.style.Style2D;
11

    
12
import com.iver.cit.gvsig.fmap.ViewPort;
13

    
14

    
15
/**
16
 * DOCUMENT ME!
17
 *
18
 * @author $author$
19
 */
20
public interface FGeometry {
21
        public static int BEST = 0;
22
        public static int N = 1;
23
        public static int NE = 2;
24
        public static int E = 3;
25
        public static int SE = 4;
26
        public static int S = 5;
27
        public static int SW = 6;
28
        public static int W = 7;
29
        public static int NW = 8;
30
        public final static int POINT = 1;
31
        public final static int LINE = 2;
32
        public final static int POLYGON = 4;
33
        public final static int TEXT = 8;
34
        public final static StyledShapePainter shpPainter = new StyledShapePainter();
35

    
36
        /**
37
         * Dibujar? esta Shape en el Graphics con el s?mbolo que se pasa como
38
         * par?metro y despues de aplicarle la transformaci?n que se pasa tambi?n
39
         * como par?metro. El parametro image que recibe es la imagen de la cual
40
         * se obtuvo el graphics que tambi?n se pasa como par?metro. Dibujar? la
41
         * geometria en caso de que la FGeometry intersecte o est? contenida en el
42
         * rect?ngulo que se pasa como par?metro
43
         * @param g DOCUMENT ME!
44
         * @param vp TODO
45
         * @param symbol DOCUMENT ME!
46
         * @param mt DOCUMENT ME!
47
         */
48
        void draw(Graphics2D g, ViewPort vp, Style2D symbol);
49

    
50
        /**
51
         * Transforma esta Shape en un Geometry de JTS
52
         *
53
         * @return DOCUMENT ME!
54
         */
55
        Geometry toJTSGeometry();
56

    
57
        /**
58
         * Obtiene las posiciones donde se debe situar la etiqueta para esta
59
         * FGeometry. Es un array porque si una geometria es un multipunto por
60
         * ejemplo puede quererse etiquetar todos sus puntos. El par?metro que se
61
         * pasa indica como debe de colocar la geometria la etiqueta
62
         *
63
         * @param position DOCUMENT ME!
64
         * @param duplicates DOCUMENT ME!
65
         *
66
         * @return DOCUMENT ME!
67
         */
68
        FGeometry[] createLabels(int position, boolean duplicates);
69
        
70
        
71
        boolean intersects(Rectangle2D r);
72
        Rectangle2D getBounds2D();
73
}