Statistics
| Revision:

gvsig-raster / org.gvsig.raster / branches / org.gvsig.raster.2.4 / org.gvsig.raster / org.gvsig.raster.lib / org.gvsig.raster.lib.legend / org.gvsig.raster.lib.legend.impl / src / main / java / org / gvsig / raster / lib / legend / impl / colortable / DefaultMakeColorTable.java @ 6900

History | View | Annotate | Download (4.41 KB)

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

    
25
import java.awt.Color;
26
import java.util.List;
27

    
28
import org.gvsig.raster.lib.legend.api.RasterLegendLocator;
29
import org.gvsig.raster.lib.legend.api.RasterLegendManager;
30
import org.gvsig.raster.lib.legend.api.colortable.ColorTable;
31
import org.gvsig.raster.lib.legend.api.colortable.MakeColorTable;
32
import org.gvsig.raster.lib.legend.api.colortable.colortableclass.ColorTableClass;
33

    
34

    
35
/**
36
 * @author fdiaz
37
 *
38
 */
39
public class DefaultMakeColorTable implements MakeColorTable {
40

    
41
    private String name;
42
    private double minimum;
43
    private double maximum;
44
    private int mode;
45
    private double intervalSize;
46
    private int intervals;
47
    private Color fromColor;
48
    private Color toColor;
49
    private boolean interpolated;
50

    
51
    /* (non-Javadoc)
52
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setName(java.lang.String)
53
     */
54
    @Override
55
    public void setName(String name) {
56
        this.name = name;
57
    }
58

    
59
    /* (non-Javadoc)
60
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setMinimum(double)
61
     */
62
    @Override
63
    public void setMinimum(double minimum) {
64
        this.minimum = minimum;
65
    }
66

    
67
    /* (non-Javadoc)
68
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setMaximum(double)
69
     */
70
    @Override
71
    public void setMaximum(double maximum) {
72
        this.maximum = maximum;
73
    }
74

    
75
    /* (non-Javadoc)
76
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setMode(int)
77
     */
78
    @Override
79
    public void setMode(int mode) {
80
        this.mode = mode;
81
    }
82

    
83
    /* (non-Javadoc)
84
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setIntervalSize(double)
85
     */
86
    @Override
87
    public void setIntervalSize(double intervalSize) {
88
        this.intervalSize = intervalSize;
89
    }
90

    
91
    /* (non-Javadoc)
92
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setIntervals(int)
93
     */
94
    @Override
95
    public void setIntervals(int intervals) {
96
        this.intervals = intervals;
97
    }
98

    
99
    /* (non-Javadoc)
100
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setFromColor(java.awt.Color)
101
     */
102
    @Override
103
    public void setFromColor(Color fromColor) {
104
        this.fromColor = fromColor;
105
    }
106

    
107
    /* (non-Javadoc)
108
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#setToColor(java.awt.Color)
109
     */
110
    @Override
111
    public void setToColor(Color toColor) {
112
        this.toColor = toColor;
113
    }
114

    
115
    /* (non-Javadoc)
116
     * @see org.gvsig.raster.tools.lib.api.colortable.CreateColorTable#getColorTable()
117
     */
118
    @Override
119
    public ColorTable getColorTable() {
120
        RasterLegendManager legendManager = RasterLegendLocator.getRasterLegendManager();
121
        List<ColorTableClass> listColorTableClasses = null;
122
        switch (mode) {
123
        case MakeColorTable.MODE_INTERVAL_SIZE:
124
            listColorTableClasses = legendManager.createListColorTableClasses(minimum, maximum, intervalSize, fromColor, toColor);
125
            break;
126
        case MakeColorTable.MODE_NUMBER_OF_INTERVALS:
127
            listColorTableClasses = legendManager.createListColorTableClasses(minimum, maximum, intervals, fromColor, toColor);
128
            break;
129
        }
130

    
131
        ColorTable colorTable = legendManager.createColorTable(name, listColorTableClasses, interpolated);
132

    
133
        return colorTable;
134
    }
135

    
136
    @Override
137
    public void setInterpolated(boolean interpolated) {
138
        this.interpolated = interpolated;
139
    }
140

    
141
}