Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.symbology / org.gvsig.symbology.lib / org.gvsig.symbology.lib.api / src / main / java / org / gvsig / symbology / fmap / mapcontext / rendering / symbol / fill / IPictureFillSymbol.java @ 40686

History | View | Annotate | Download (3.81 KB)

1
/**
2
 * gvSIG. Desktop Geographic Information System.
3
 *
4
 * Copyright (C) 2007-2013 gvSIG Association.
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 3
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
 * MA  02110-1301, USA.
20
 *
21
 * For any additional information, do not hesitate to contact us
22
 * at info AT gvsig.com, or visit our website www.gvsig.com.
23
 */
24
package org.gvsig.symbology.fmap.mapcontext.rendering.symbol.fill;
25

    
26
import java.io.IOException;
27
import java.net.URL;
28

    
29
import org.gvsig.fmap.mapcontext.rendering.symbols.styles.IBackgroundFileStyle;
30
import org.gvsig.symbology.fmap.mapcontext.rendering.symbol.style.IMarkerFillPropertiesStyle;
31

    
32
public interface IPictureFillSymbol extends IFillSymbol{
33

    
34
        /**
35
         * Sets the URL for the image to be used as a picture fill symbol (when it is selected in the map)
36
         * @param imageFile, File
37
         * @throws IOException
38
         */
39
        public abstract void setSelImage(URL selImageUrl) throws IOException;
40

    
41
        /**
42
         * Defines the URL from where the picture to fill the polygon is taken.
43
         * @param imageFile
44
         * @throws IOException
45
         */
46
        public abstract void setImage(URL imageUrl) throws IOException;
47

    
48
        /**
49
         * Returns the IMarkerFillProperties that allows this class to treat the picture as
50
         * a marker in order to scale it, rotate it and so on.
51
         * @return markerFillProperties,IMarkerFillPropertiesStyle
52
         */
53
        public abstract IMarkerFillPropertiesStyle getMarkerFillProperties();
54

    
55
        /**
56
         * Sets the MarkerFillProperties in order to allow the user to modify the picture as
57
         * a marker (it is possible to scale it, rotate it and so on)
58
         * @param prop
59
         */
60
        public abstract void setMarkerFillProperties(IMarkerFillPropertiesStyle prop);
61

    
62
        /**
63
         * Defines the angle for the rotation of the image when it is added to create the
64
         * padding
65
         *
66
         * @return angle
67
         */
68
        public abstract double getAngle();
69

    
70
        /**
71
         * Sets the angle for the rotation of the image when it is added to create the padding
72
         * @param angle
73
         */
74
        public abstract void setAngle(double angle);
75

    
76
        /**
77
         * Defines the scale for the x axis of the image when it is added to create the
78
         * padding
79
         * @return xScale
80
         */
81
        public abstract double getXScale();
82

    
83
        /**
84
         * Returns the scale for the x axis of the image when it is added to create the
85
         * padding
86
         * @param xScale
87
         */
88
        public abstract void setXScale(double xScale);
89

    
90
        /**
91
         * Defines the scale for the y axis of the image when it is added to create the
92
         * padding
93
         * @return yScale
94
         */
95
        public abstract double getYScale();
96

    
97
        /**
98
         * Returns the scale for the y axis of the image when it is added to create the
99
         * padding
100
         * @param yScale
101
         */
102
        public abstract void setYScale(double yScale);
103

    
104
        /**
105
         * Returns the URL of the image that is used to create the padding to fill the
106
         * polygon
107
         * @return imagePath
108
         */
109
        public abstract URL getSource();
110

    
111
        /**
112
         * Returns the URL of the image used when the polygon is selected
113
         * @return
114
         */
115
        public abstract URL getSelectedSource();
116
        
117
        
118
        /**
119
         * Returns the style associated to the image used in this symbol
120
         * 
121
         * @return
122
         */
123
        public IBackgroundFileStyle getBackgroundFileStyle();
124

    
125
        /**
126
         * Returns the style associated to the image used in this symbol
127
         * when the feature is selected
128
         * 
129
         * @return
130
         */
131
        public IBackgroundFileStyle getSelectedBackgroundFileStyle();
132
        
133

    
134
}