From c1593c0cf750d06d92b85a336d6a57c4dd6a94cd Mon Sep 17 00:00:00 2001
From: Tim Molter <tim.molter@gmail.com>
Date: Fri, 26 Apr 2013 23:54:02 +0200
Subject: [PATCH] removed more int casts

---
 .../xeiam/xchart/internal/chartpart/Axis.java  | 10 +++++-----
 .../internal/chartpart/AxisTickLabels.java     | 10 +++++-----
 .../internal/chartpart/AxisTickMarks.java      | 10 +---------
 .../xchart/internal/chartpart/ChartTitle.java  |  4 ++--
 .../xchart/internal/chartpart/Legend.java      |  6 +++---
 .../chartpart/PlotContentLineChart.java        | 18 +++++++++---------
 .../xchart/internal/chartpart/PlotSurface.java | 14 +++++++-------
 .../xeiam/xchart/internal/markers/Marker.java  |  4 ++--
 8 files changed, 34 insertions(+), 42 deletions(-)

diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java
index 49ac9f0f..e3e91564 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java
@@ -179,7 +179,7 @@ public class Axis implements ChartPart {
 
       xOffset = paintZone.getX();
       yOffset = paintZone.getY();
-      width = (getChartPainter().getStyleManager().isYAxisTitleVisible() ? axisTitle.getBounds().getWidth() : 0) + (int) axisTick.getBounds().getWidth();
+      width = (getChartPainter().getStyleManager().isYAxisTitleVisible() ? axisTitle.getBounds().getWidth() : 0) + axisTick.getBounds().getWidth();
       height = paintZone.getHeight();
       bounds = new Rectangle2D.Double(xOffset, yOffset, width, height);
 
@@ -191,9 +191,9 @@ public class Axis implements ChartPart {
       // calculate paint zone
       // |____________________|
 
-      double xOffset = (int) (axisPair.getyAxis().getBounds().getWidth() + (getChartPainter().getStyleManager().isYAxisTicksVisible() ? getChartPainter().getStyleManager().getPlotPadding() : 0) + getChartPainter()
-          .getStyleManager().getChartPadding());
-      double yOffset = (int) (axisPair.getyAxis().getBounds().getY() + axisPair.getyAxis().getBounds().getHeight() + getChartPainter().getStyleManager().getPlotPadding());
+      double xOffset = axisPair.getyAxis().getBounds().getWidth() + (getChartPainter().getStyleManager().isYAxisTicksVisible() ? getChartPainter().getStyleManager().getPlotPadding() : 0)
+          + getChartPainter().getStyleManager().getChartPadding();
+      double yOffset = axisPair.getyAxis().getBounds().getY() + axisPair.getyAxis().getBounds().getHeight() + getChartPainter().getStyleManager().getPlotPadding();
 
       double chartLegendWidth = 0;
       if (getChartPainter().getStyleManager().getLegendPosition() == LegendPosition.OutsideE) {
@@ -231,7 +231,7 @@ public class Axis implements ChartPart {
       xOffset = paintZone.getX();
       yOffset = paintZone.getY();
       width = paintZone.getWidth();
-      height = (getChartPainter().getStyleManager().isXAxisTitleVisible() ? axisTitle.getBounds().getHeight() : 0) + (int) axisTick.getBounds().getHeight();
+      height = (getChartPainter().getStyleManager().isXAxisTitleVisible() ? axisTitle.getBounds().getHeight() : 0) + axisTick.getBounds().getHeight();
       bounds = new Rectangle2D.Double(xOffset, yOffset, width, height);
       // g.setColor(Color.yellow);
       // g.draw(bounds);
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLabels.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLabels.java
index d91f18a3..14d2cba9 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLabels.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLabels.java
@@ -73,20 +73,20 @@ public class AxisTickLabels implements ChartPart {
           layout.draw(g, (float) xOffset, (float) (yOffset + axisTick.getAxis().getPaintZone().getHeight() - tickLocation + tickLabelBounds.getHeight() / 2.0));
 
           if (tickLabelBounds.getWidth() > maxTickLabelWidth) {
-            maxTickLabelWidth = (int) tickLabelBounds.getWidth();
+            maxTickLabelWidth = tickLabelBounds.getWidth();
           }
         }
       }
 
       // bounds
-      bounds = new Rectangle2D.Double(xOffset, yOffset, maxTickLabelWidth, (int) axisTick.getAxis().getPaintZone().getHeight());
+      bounds = new Rectangle2D.Double(xOffset, yOffset, maxTickLabelWidth, axisTick.getAxis().getPaintZone().getHeight());
       // g.setColor(Color.blue);
       // g.draw(bounds);
 
     } else if (axisTick.getAxis().getDirection() == Axis.Direction.X && getChartPainter().getStyleManager().isXAxisTicksVisible()) { // X-Axis
 
-      double xOffset = (int) (axisTick.getAxis().getPaintZone().getX());
-      double yOffset = (int) (axisTick.getAxis().getAxisTitle().getBounds().getY());
+      double xOffset = axisTick.getAxis().getPaintZone().getX();
+      double yOffset = axisTick.getAxis().getAxisTitle().getBounds().getY();
       double maxTickLabelHeight = 0;
       for (int i = 0; i < axisTick.getTickLabels().size(); i++) {
 
@@ -100,7 +100,7 @@ public class AxisTickLabels implements ChartPart {
           layout.draw(g, (float) (xOffset + tickLocation - tickLabelBounds.getWidth() / 2.0), (float) yOffset);
 
           if (tickLabelBounds.getHeight() > maxTickLabelHeight) {
-            maxTickLabelHeight = (int) tickLabelBounds.getHeight();
+            maxTickLabelHeight = tickLabelBounds.getHeight();
           }
         }
       }
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickMarks.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickMarks.java
index e876d4ca..cdeedc3f 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickMarks.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickMarks.java
@@ -65,15 +65,10 @@ public class AxisTickMarks implements ChartPart {
 
           int tickLocation = axisTick.getTickLocations().get(i);
 
-          // g.setColor(getChart().getStyleManager().getChartBordersColor());
-          // g.setStroke(stroke);
           Shape line = new Line2D.Double(xOffset, yOffset + axisTick.getAxis().getPaintZone().getHeight() - tickLocation, xOffset + getChartPainter().getStyleManager().getAxisTickMarkLength(),
               yOffset + axisTick.getAxis().getPaintZone().getHeight() - tickLocation);
           g.draw(line);
 
-          // g.drawLine(xOffset, yOffset + (int) (axisTick.getAxis().getPaintZone().getHeight() - tickLocation), xOffset + getChartPainter().getStyleManager().getAxisTickMarkLength(), yOffset
-          // + (int) (axisTick.getAxis().getPaintZone().getHeight() - tickLocation));
-
         }
       }
       // Line
@@ -83,19 +78,16 @@ public class AxisTickMarks implements ChartPart {
             + axisTick.getAxis().getPaintZone().getHeight());
         g.draw(line);
 
-        // g.drawLine(xOffset + getChartPainter().getStyleManager().getAxisTickMarkLength(), yOffset, xOffset + getChartPainter().getStyleManager().getAxisTickMarkLength(), yOffset
-        // + (int) axisTick.getAxis().getPaintZone().getHeight());
       }
 
       // bounds
-      bounds = new Rectangle2D.Double(xOffset, yOffset, getChartPainter().getStyleManager().getAxisTickMarkLength(), (int) axisTick.getAxis().getPaintZone().getHeight());
+      bounds = new Rectangle2D.Double(xOffset, yOffset, getChartPainter().getStyleManager().getAxisTickMarkLength(), axisTick.getAxis().getPaintZone().getHeight());
       // g.setColor(Color.yellow);
       // g.draw(bounds);
 
     } else if (axisTick.getAxis().getDirection() == Axis.Direction.X && getChartPainter().getStyleManager().isXAxisTicksVisible()) { // X-Axis
 
       double xOffset = axisTick.getAxis().getPaintZone().getX();
-      // int yOffset = (int) (axisTick.getAxisTickLabels().getBounds().getY() - getChart().getStyleManager().getAxisTickPadding());
       double yOffset = axisTick.getAxisTickLabels().getBounds().getY() - getChartPainter().getStyleManager().getAxisTickPadding();
 
       // tick marks
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/ChartTitle.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/ChartTitle.java
index 77ca627a..0e68beac 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/ChartTitle.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/ChartTitle.java
@@ -97,8 +97,8 @@ public class ChartTitle implements ChartPart {
       if (chartPainter.getStyleManager().isChartTitleBoxVisible()) {
 
         // paint the chart title box
-        int chartTitleBoxWidth = (int) chartPainter.getPlot().getBounds().getWidth();
-        int chartTitleBoxHeight = (int) (rectangle.getHeight() + 2 * chartPainter.getStyleManager().getChartTitlePadding());
+        double chartTitleBoxWidth = chartPainter.getPlot().getBounds().getWidth();
+        double chartTitleBoxHeight = rectangle.getHeight() + 2 * chartPainter.getStyleManager().getChartTitlePadding();
 
         g.setStroke(new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL));
         Shape rect = new Rectangle2D.Double(xOffset, yOffset, chartTitleBoxWidth, chartTitleBoxHeight);
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Legend.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Legend.java
index 89de73a8..0f56d50e 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Legend.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Legend.java
@@ -92,7 +92,7 @@ public class Legend implements ChartPart {
       // determine legend content width
       double legendContentWidth = 0;
       if (getChartPainter().getStyleManager().getChartType() != ChartType.Bar) {
-        legendContentWidth = (int) (3.0 * Marker.SIZE + chartPainter.getStyleManager().getLegendPadding() + legendTextContentMaxWidth);
+        legendContentWidth = 3.0 * Marker.SIZE + chartPainter.getStyleManager().getLegendPadding() + legendTextContentMaxWidth;
       } else {
         legendContentWidth = BOX_SIZE + chartPainter.getStyleManager().getLegendPadding() + legendTextContentMaxWidth;
       }
@@ -173,7 +173,7 @@ public class Legend implements ChartPart {
           // paint marker
           if (series.getMarker() != null) {
             g.setColor(series.getMarkerColor());
-            series.getMarker().paint(g, (int) (startx + (Marker.SIZE * 1.5)), (int) (starty + maxContentHeight / 2.0));
+            series.getMarker().paint(g, startx + (Marker.SIZE * 1.5), starty + maxContentHeight / 2.0);
           }
         } else {
           // paint little box
@@ -194,7 +194,7 @@ public class Legend implements ChartPart {
         } else {
           layout.draw(g, (float) (startx + BOX_SIZE + chartPainter.getStyleManager().getLegendPadding()), (float) (starty + (maxContentHeight + layout.getBounds().getHeight()) / 2.0));
         }
-        starty = (int) (starty + maxContentHeight + chartPainter.getStyleManager().getLegendPadding());
+        starty = starty + maxContentHeight + chartPainter.getStyleManager().getLegendPadding();
       }
 
       // bounds
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java
index 493d3aa4..27cccf26 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java
@@ -143,17 +143,17 @@ public class PlotContentLineChart extends PlotContent {
           y = new BigDecimal(yOrig.doubleValue());
         }
 
-        int xTransform = (int) (xLeftMargin + (x.subtract(xMin).doubleValue() / xMax.subtract(xMin).doubleValue() * xTickSpace));
-        int yTransform = (int) (bounds.getHeight() - (yTopMargin + y.subtract(yMin).doubleValue() / yMax.subtract(yMin).doubleValue() * yTickSpace));
+        double xTransform = xLeftMargin + (x.subtract(xMin).doubleValue() / xMax.subtract(xMin).doubleValue() * xTickSpace);
+        double yTransform = bounds.getHeight() - (yTopMargin + y.subtract(yMin).doubleValue() / yMax.subtract(yMin).doubleValue() * yTickSpace);
 
         // a check if all x data are the exact same values
         if (Math.abs(xMax.subtract(xMin).doubleValue()) / 5 == 0.0) {
-          xTransform = (int) (bounds.getWidth() / 2.0);
+          xTransform = bounds.getWidth() / 2.0;
         }
 
         // a check if all y data are the exact same values
         if (Math.abs(yMax.subtract(yMin).doubleValue()) / 5 == 0.0) {
-          yTransform = (int) (bounds.getHeight() / 2.0);
+          yTransform = bounds.getHeight() / 2.0;
         }
 
         double xOffset = bounds.getX() + xTransform - 1;
@@ -176,7 +176,7 @@ public class PlotContentLineChart extends PlotContent {
         if (getChartPainter().getStyleManager().getChartType() == ChartType.Area) {
           if (previousX != Integer.MIN_VALUE && previousY != Integer.MIN_VALUE) {
             g.setColor(series.getStrokeColor());
-            int yBottomOfArea = (int) (bounds.getY() + bounds.getHeight() - yTopMargin + 1);
+            double yBottomOfArea = bounds.getY() + bounds.getHeight() - yTopMargin + 1;
 
             Path2D.Double path = new Path2D.Double();
             path.moveTo(previousX, previousY);
@@ -210,8 +210,8 @@ public class PlotContentLineChart extends PlotContent {
           } else {
             topValue = y.add(eb);
           }
-          int topEBTransform = (int) (bounds.getHeight() - (yTopMargin + topValue.subtract(yMin).doubleValue() / yMax.subtract(yMin).doubleValue() * yTickSpace));
-          int topEBOffset = (int) (bounds.getY() + topEBTransform);
+          double topEBTransform = bounds.getHeight() - (yTopMargin + topValue.subtract(yMin).doubleValue() / yMax.subtract(yMin).doubleValue() * yTickSpace);
+          double topEBOffset = bounds.getY() + topEBTransform;
 
           BigDecimal bottomValue = null;
           if (getChartPainter().getStyleManager().isYAxisLogarithmic()) {
@@ -221,8 +221,8 @@ public class PlotContentLineChart extends PlotContent {
           } else {
             bottomValue = y.subtract(eb);
           }
-          int bottomEBTransform = (int) (bounds.getHeight() - (yTopMargin + bottomValue.subtract(yMin).doubleValue() / yMax.subtract(yMin).doubleValue() * yTickSpace));
-          int bottomEBOffset = (int) (bounds.getY() + bottomEBTransform);
+          double bottomEBTransform = bounds.getHeight() - (yTopMargin + bottomValue.subtract(yMin).doubleValue() / yMax.subtract(yMin).doubleValue() * yTickSpace);
+          double bottomEBOffset = bounds.getY() + bottomEBTransform;
 
           Shape line = new Line2D.Double(xOffset, topEBOffset, xOffset, bottomEBOffset);
           g.draw(line);
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotSurface.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotSurface.java
index 1cde8841..ef5ceb84 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotSurface.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotSurface.java
@@ -70,15 +70,15 @@ public class PlotSurface implements ChartPart {
       List<Integer> yAxisTickLocations = getChartPainter().getAxisPair().getyAxis().getAxisTick().getTickLocations();
       for (int i = 0; i < yAxisTickLocations.size(); i++) {
 
-        int tickLocation = yAxisTickLocations.get(i);
-        int yOffset = (int) (bounds.getY() + bounds.getHeight() - tickLocation);
+        double tickLocation = yAxisTickLocations.get(i);
+        double yOffset = bounds.getY() + bounds.getHeight() - tickLocation;
 
         // draw lines
         if (getChartPainter().getStyleManager().isPlotGridLinesVisible()) {
 
           g.setColor(getChartPainter().getStyleManager().getPlotGridLinesColor());
           g.setStroke(getChartPainter().getStyleManager().getPlotGridLinesStroke());
-          Shape line = new Line2D.Double((int) bounds.getX(), yOffset, bounds.getX() + bounds.getWidth() - 2, yOffset);
+          Shape line = new Line2D.Double( bounds.getX(), yOffset, bounds.getX() + bounds.getWidth() - 2, yOffset);
           g.draw(line);
         }
         // tick marks
@@ -100,8 +100,8 @@ public class PlotSurface implements ChartPart {
         List<Integer> xAxisTickLocations = getChartPainter().getAxisPair().getxAxis().getAxisTick().getTickLocations();
         for (int i = 0; i < xAxisTickLocations.size(); i++) {
 
-          int tickLocation = xAxisTickLocations.get(i);
-          int xOffset = (int) (bounds.getX() + tickLocation - 1);
+          double tickLocation = xAxisTickLocations.get(i);
+          double xOffset = bounds.getX() + tickLocation - 1;
 
           // draw lines
           if (getChartPainter().getStyleManager().isPlotGridLinesVisible()) {
@@ -117,9 +117,9 @@ public class PlotSurface implements ChartPart {
             g.setColor(getChartPainter().getStyleManager().getAxisTickMarksColor());
             g.setStroke(getChartPainter().getStyleManager().getAxisTickMarksStroke());
 
-            Shape line = new Line2D.Double(xOffset, (int) (bounds.getY()), xOffset, (int) (bounds.getY()) + getChartPainter().getStyleManager().getAxisTickMarkLength());
+            Shape line = new Line2D.Double(xOffset, bounds.getY(), xOffset, bounds.getY() + getChartPainter().getStyleManager().getAxisTickMarkLength());
             g.draw(line);
-            line = new Line2D.Double(xOffset, (int) (bounds.getY() + bounds.getHeight() - 1), xOffset, (int) (bounds.getY() + bounds.getHeight() - 1)
+            line = new Line2D.Double(xOffset, bounds.getY() + bounds.getHeight() - 1, xOffset, bounds.getY() + bounds.getHeight() - 1
                 - getChartPainter().getStyleManager().getAxisTickMarkLength());
             g.draw(line);
           }
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/markers/Marker.java b/xchart/src/main/java/com/xeiam/xchart/internal/markers/Marker.java
index cac88797..05bd0edb 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/markers/Marker.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/markers/Marker.java
@@ -27,8 +27,8 @@ public abstract class Marker {
 
   public static final double SIZE = 8;
 
-  public static final double X_OFFSET = (int) (-1.0 * (SIZE / 2.0));
-  public static final double Y_OFFSET = (int) (-1.0 * (SIZE / 2.0));
+  public static final double X_OFFSET = -1.0 * (SIZE / 2.0);
+  public static final double Y_OFFSET = -1.0 * (SIZE / 2.0);
 
   public abstract void paint(Graphics2D g, double xOffset, double yOffset);
 }
-- 
GitLab