Statistics
| Revision:

svn-gvsig-desktop / trunk / libraries / libRemoteServices / src / org / gvsig / remoteClient / gml / factories / IGeometriesFactory.java @ 10109

History | View | Annotate | Download (3.58 KB)

1
package org.gvsig.remoteClient.gml.factories;
2

    
3
import java.awt.geom.Point2D;
4
import java.util.Map;
5

    
6
import org.gvsig.remoteClient.gml.types.IXMLType;
7

    
8

    
9
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
10
 *
11
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
12
 *
13
 * This program is free software; you can redistribute it and/or
14
 * modify it under the terms of the GNU General Public License
15
 * as published by the Free Software Foundation; either version 2
16
 * of the License, or (at your option) any later version.
17
 *
18
 * This program is distributed in the hope that it will be useful,
19
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21
 * GNU General Public License for more details.
22
 *
23
 * You should have received a copy of the GNU General Public License
24
 * along with this program; if not, write to the Free Software
25
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
26
 *
27
 * For more information, contact:
28
 *
29
 *  Generalitat Valenciana
30
 *   Conselleria d'Infraestructures i Transport
31
 *   Av. Blasco Ib??ez, 50
32
 *   46010 VALENCIA
33
 *   SPAIN
34
 *
35
 *      +34 963862235
36
 *   gvsig@gva.es
37
 *      www.gvsig.gva.es
38
 *
39
 *    or
40
 *
41
 *   IVER T.I. S.A
42
 *   Salamanca 50
43
 *   46005 Valencia
44
 *   Spain
45
 *
46
 *   +34 963163400
47
 *   dac@iver.es
48
 */
49
/* CVS MESSAGES:
50
 *
51
 * $Id: IGeometriesFactory.java 10109 2007-02-05 13:20:21Z jorpiell $
52
 * $Log$
53
 * Revision 1.4  2007-02-05 13:20:13  jorpiell
54
 * A?adidos nuevos m?todos en la factoria.
55
 *
56
 * Revision 1.3  2006/12/29 17:15:48  jorpiell
57
 * Se tienen en cuenta los simpleTypes y los choices, adem?s de los atributos multiples
58
 *
59
 * Revision 1.2  2006/12/22 11:25:44  csanchez
60
 * Nuevo parser GML 2.x para gml's sin esquema
61
 *
62
 * Revision 1.1  2006/08/10 12:00:49  jorpiell
63
 * Primer commit del driver de Gml
64
 *
65
 *
66
 */
67
/**
68
 * This interface must be implemented by all the classes that
69
 * are able to create geometries from a GML file. When the GML
70
 * reader parses one geometry (in plain text) it uses this class 
71
 * to create the equivalent object.
72
 * 
73
 * @author Jorge Piera Llodr? (piera_jor@gva.es)
74
 * @author Carlos S?nchez Peri??n (sanchez_carper@gva.es)
75
 * 
76
 */
77
public interface IGeometriesFactory {
78
        /**
79
         * Creates a point in 2D         
80
         * @param x 
81
         * X coordinate
82
         * @param y
83
         * Y coordinate
84
         * @return 
85
         * Geometry that represents a point 2D
86
         */
87
        public Object createPoint2D(double x, double y);                
88

    
89
        /**
90
         * Creates a point in 2D         
91
         * @param point2D 
92
         * Point in 2D
93
         * @return 
94
         * Geometry that represents a point in 2D
95
         */        
96
        public Object createPoint2D(Point2D point2D);
97
        
98
        /**
99
         * Creates a multi point in 2D         
100
         * @param x
101
         * Array of points with the X coordinate
102
         * @param y
103
         * Array of points with the Y coordinate
104
         * Point in 2D
105
         * @return 
106
         * Geometry that represents a multi point in 2D
107
         */        
108
        public Object createMultipoint2D(double[] x, double[] y);
109
        
110
        /**
111
         * Creates a polygon in 2D         
112
         * @param x
113
         * Array of points with the X coordinate
114
         * @param y
115
         * Array of points with the Y coordinate
116
         * @return 
117
         * Geometry that represents a polygon in 2D
118
         */        
119
        public Object createPolygon2D(double[] x,double[] y);
120
        
121
        
122
        /**
123
         * Creates a geometry using a GML string
124
         * @param gmlString
125
         * GML geometry
126
         * @return
127
         * Geometry represented by the GML string
128
         */
129
        public Object createGeometry(String gmlString);
130
        
131
        /**
132
         * Create a simple feature
133
         * @param element
134
         * Element name
135
         * @param type
136
         * Geoemtry type
137
         * @param params
138
         * Params values
139
         * @param geometry
140
         * Geoemtry 
141
         * @return
142
         */
143
        public Object createSimpleFeature(String element,
144
                        IXMLType type,
145
                        Map values,
146
                        Object geometry);                        
147
        
148
}