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 / marker / IMarkerSymbol.java @ 45526

History | View | Annotate | Download (3.66 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.marker;
25

    
26
import java.awt.Color;
27
import java.awt.geom.Point2D;
28
import org.gvsig.fmap.dal.feature.Feature;
29
import org.gvsig.fmap.mapcontext.rendering.symbols.CartographicSupport;
30
import org.gvsig.fmap.mapcontext.rendering.symbols.ISymbol;
31
import org.gvsig.symbology.fmap.mapcontext.rendering.symbol.style.IMask;
32

    
33
/**
34
 * Represents an ISymbol that draws a <b>marker symbol</b>.It has the different
35
 * methods to obtain or define the attributes of a marker such as rotation,
36
 * offset, size, color and IMask.
37
 *
38
 * @author jaume dominguez faus - jaume.dominguez@iver.es
39
 */
40
public interface IMarkerSymbol extends ISymbol, CartographicSupport {
41

    
42
    public static final String SYMBOL_NAME = "marker";
43

    
44
    public static final int CIRCLE_STYLE = 0;
45
    public static final int SQUARE_STYLE = 1;
46
    public static final int CROSS_STYLE = 2;
47
    public static final int DIAMOND_STYLE = 3;
48
    public static final int X_STYLE = 4;
49
    public static final int TRIANGLE_STYLE = 5;
50
    public static final int STAR_STYLE = 6;
51
    public static final int VERTICAL_LINE_STYLE = 7;
52

    
53
    /**
54
     * Returns the rotation (in radians, counter-clockwise) of the marker symbol
55
     *
56
     * @return double (rotation)
57
     */
58
    public abstract double getRotation();
59

    
60
    /**
61
     * Sets the rotation of the marker symbol
62
     *
63
     * @param rotation
64
     */
65
    public abstract void setRotation(double rotation);
66

    
67
    /**
68
     * Gets the offset for a marker symbol
69
     *
70
     * @return Point2D
71
     */
72
    public abstract Point2D getOffset();
73

    
74
    /**
75
     * Establishes the offset currently set for the marker symbol.
76
     *
77
     * @param offset
78
     */
79
    public abstract void setOffset(Point2D offset);
80

    
81
    /**
82
     * Obtains the size of a marker symbol
83
     *
84
     * @return 
85
     */
86
    public abstract double getSize();
87

    
88
    /**
89
     * Sets the size of marker symbol
90
     *
91
     * @param size
92
     */
93
    public abstract void setSize(double size);
94

    
95
    /**
96
     * Returns the color of the marker symbol.
97
     *
98
     * @return Color
99
     */
100
    public abstract Color getColor();
101

    
102
    /**
103
     * Establishes a color for the marker symbol
104
     *
105
     * @param color
106
     */
107
    public abstract void setColor(Color color);
108

    
109
    /**
110
     * Defines the transparency of a line symbol.
111
     *
112
     * @param outlineAlpha , the transparency
113
     */
114
    void setAlpha(int alpha);
115

    
116
    /**
117
     *
118
     * @return the mask of the symbol
119
     */
120
    public abstract IMask getMask();
121

    
122
    /**
123
     * Defines a mask for the symbol
124
     *
125
     * @param mask,IMask
126
     */
127
    public abstract void setMask(IMask mask);
128

    
129

    
130

    
131
}