KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jfree > chart > plot > PiePlotState


1 /* ===========================================================
2  * JFreeChart : a free chart library for the Java(tm) platform
3  * ===========================================================
4  *
5  * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors.
6  *
7  * Project Info: http://www.jfree.org/jfreechart/index.html
8  *
9  * This library is free software; you can redistribute it and/or modify it
10  * under the terms of the GNU Lesser General Public License as published by
11  * the Free Software Foundation; either version 2.1 of the License, or
12  * (at your option) any later version.
13  *
14  * This library is distributed in the hope that it will be useful, but
15  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
17  * License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
22  * USA.
23  *
24  * [Java is a trademark or registered trademark of Sun Microsystems, Inc.
25  * in the United States and other countries.]
26  *
27  * -----------------
28  * PiePlotState.java
29  * -----------------
30  * (C) Copyright 2004, by Object Refinery Limited.
31  *
32  * Original Author: David Gilbert (for Object Refinery Limited);
33  * Contributor(s): -;
34  *
35  * $Id: PiePlotState.java,v 1.3.2.1 2005/10/25 20:52:08 mungady Exp $
36  *
37  * Changes
38  * -------
39  * 06-Mar-2004 : Version 1 (DG);
40  *
41  */

42
43 package org.jfree.chart.plot;
44
45 import java.awt.geom.Rectangle2D JavaDoc;
46
47 import org.jfree.chart.renderer.RendererState;
48
49 /**
50  * A renderer state.
51  */

52 public class PiePlotState extends RendererState {
53
54     /** The number of passes required by the renderer. */
55     private int passesRequired;
56     
57     /** The total of the values in the dataset. */
58     private double total;
59     
60     /** The latest angle. */
61     private double latestAngle;
62     
63     /** The exploded pie area. */
64     private Rectangle2D JavaDoc explodedPieArea;
65    
66     /** The pie area. */
67     private Rectangle2D JavaDoc pieArea;
68     
69     /** The center of the pie in Java 2D coordinates. */
70     private double pieCenterX;
71    
72     /** The center of the pie in Java 2D coordinates. */
73     private double pieCenterY;
74     
75     /** The vertical pie radius. */
76     private double pieHRadius;
77    
78     /** The horizontal pie radius. */
79     private double pieWRadius;
80     
81     /** The link area. */
82     private Rectangle2D JavaDoc linkArea;
83
84     /**
85      * Creates a new object for recording temporary state information for a
86      * renderer.
87      *
88      * @param info the plot rendering info.
89      */

90     public PiePlotState(PlotRenderingInfo info) {
91         super(info);
92         this.passesRequired = 1;
93         this.total = 0.0;
94     }
95     
96     /**
97      * Returns the number of passes required by the renderer.
98      *
99      * @return The number of passes.
100      */

101     public int getPassesRequired() {
102         return this.passesRequired;
103     }
104     
105     /**
106      * Sets the number of passes required by the renderer.
107      *
108      * @param passes the passes.
109      */

110     public void setPassesRequired(int passes) {
111         this.passesRequired = passes;
112     }
113     
114     /**
115      * Returns the total of the values in the dataset.
116      *
117      * @return The total.
118      */

119     public double getTotal() {
120         return this.total;
121     }
122     
123     /**
124      * Sets the total.
125      *
126      * @param total the total.
127      */

128     public void setTotal(double total) {
129         this.total = total;
130     }
131     
132     /**
133      * Returns the latest angle.
134      *
135      * @return The latest angle.
136      */

137     public double getLatestAngle() {
138         return this.latestAngle;
139     }
140     
141     /**
142      * Sets the latest angle.
143      *
144      * @param angle the angle.
145      */

146     public void setLatestAngle(double angle) {
147         this.latestAngle = angle;
148     }
149     
150     /**
151      * Returns the pie area.
152      *
153      * @return The pie area.
154      */

155     public Rectangle2D JavaDoc getPieArea() {
156         return this.pieArea;
157     }
158     
159     /**
160      * Sets the pie area.
161      *
162      * @param area the area.
163      */

164     public void setPieArea(Rectangle2D JavaDoc area) {
165        this.pieArea = area;
166     }
167     
168     /**
169      * Returns the exploded pie area.
170      *
171      * @return The exploded pie area.
172      */

173     public Rectangle2D JavaDoc getExplodedPieArea() {
174         return this.explodedPieArea;
175     }
176     
177     /**
178      * Sets the exploded pie area.
179      *
180      * @param area the area.
181      */

182     public void setExplodedPieArea(Rectangle2D JavaDoc area) {
183         this.explodedPieArea = area;
184     }
185     
186     /**
187      * Returns the x-coordinate of the center of the pie chart.
188      *
189      * @return The x-coordinate (in Java2D space).
190      */

191     public double getPieCenterX() {
192         return this.pieCenterX;
193     }
194     
195     /**
196      * Sets the x-coordinate of the center of the pie chart.
197      *
198      * @param x the x-coordinate (in Java2D space).
199      */

200     public void setPieCenterX(double x) {
201         this.pieCenterX = x;
202     }
203     
204     /**
205      * Returns the y-coordinate (in Java2D space) of the center of the pie
206      * chart. For the {@link PiePlot3D} class, we derive this from the top of
207      * the pie.
208      *
209      * @return The y-coordinate (in Java2D space).
210      */

211     public double getPieCenterY() {
212         return this.pieCenterY;
213     }
214     
215     /**
216      * Sets the y-coordinate of the center of the pie chart. This method is
217      * used by the plot and typically is not called directly by applications.
218      *
219      * @param y the y-coordinate (in Java2D space).
220      */

221     public void setPieCenterY(double y) {
222         this.pieCenterY = y;
223     }
224
225     /**
226      * Returns the link area. This defines the "dog-leg" point for the label
227      * linking lines.
228      *
229      * @return The link area.
230      */

231     public Rectangle2D JavaDoc getLinkArea() {
232         return this.linkArea;
233     }
234     
235     /**
236      * Sets the label link area. This defines the "dog-leg" point for the
237      * label linking lines.
238      *
239      * @param area the area.
240      */

241     public void setLinkArea(Rectangle2D JavaDoc area) {
242         this.linkArea = area;
243     }
244
245     /**
246      * Returns the vertical pie radius.
247      *
248      * @return The radius.
249      */

250     public double getPieHRadius() {
251         return this.pieHRadius;
252     }
253     
254     /**
255      * Sets the vertical pie radius.
256      *
257      * @param radius the radius.
258      */

259     public void setPieHRadius(double radius) {
260         this.pieHRadius = radius;
261     }
262     
263     /**
264      * Returns the horizontal pie radius.
265      *
266      * @return The radius.
267      */

268     public double getPieWRadius() {
269         return this.pieWRadius;
270     }
271     
272     /**
273      * Sets the horizontal pie radius.
274      *
275      * @param radius the radius.
276      */

277     public void setPieWRadius(double radius) {
278         this.pieWRadius = radius;
279     }
280    
281 }
282
Popular Tags