From d5b480cf22c16ee32fd547019ba5e01afab7f181 Mon Sep 17 00:00:00 2001
From: Hannes Janetzek <hannes.janetzek@gmail.com>
Date: Tue, 27 Nov 2012 00:20:40 +0100
Subject: [PATCH] lint changed its opinion on whether FloatMath is faster than
 Math. need to do some benchmarks..
 http://code.google.com/p/android/issues/detail?id=36199

---
 .../oscim/overlay/ItemizedIconOverlay.java    |  7 ++-----
 src/org/oscim/renderer/WayDecorator.java      | 21 ++-----------------
 src/org/oscim/renderer/layer/LineLayer.java   |  9 ++++----
 3 files changed, 8 insertions(+), 29 deletions(-)

diff --git a/src/org/oscim/overlay/ItemizedIconOverlay.java b/src/org/oscim/overlay/ItemizedIconOverlay.java
index a6e6d672..fec7b408 100644
--- a/src/org/oscim/overlay/ItemizedIconOverlay.java
+++ b/src/org/oscim/overlay/ItemizedIconOverlay.java
@@ -10,7 +10,6 @@ import org.oscim.view.MapViewPosition;
 import android.content.Context;
 import android.graphics.Point;
 import android.graphics.drawable.Drawable;
-import android.util.FloatMath;
 import android.util.Log;
 import android.view.MotionEvent;
 
@@ -174,7 +173,6 @@ public class ItemizedIconOverlay<Item extends OverlayItem> extends ItemizedOverl
 	 * When a content sensitive action is performed the content item needs to be
 	 * identified. This method does that and then performs the assigned task on
 	 * that item.
-	 * 
 	 * @param event
 	 *            ...
 	 * @param mapView
@@ -202,7 +200,7 @@ public class ItemizedIconOverlay<Item extends OverlayItem> extends ItemizedOverl
 		mapViewPosition.getScreenPointOnMap(eventX, eventY, mTouchScreenPoint);
 
 		int nearest = -1;
-		float dist = Float.MAX_VALUE;
+		double dist = Double.MAX_VALUE;
 
 		// TODO use intermediate projection and bounding box test
 
@@ -221,7 +219,7 @@ public class ItemizedIconOverlay<Item extends OverlayItem> extends ItemizedOverl
 
 			float dx = mItemPoint.x - mTouchScreenPoint.x;
 			float dy = mItemPoint.y - mTouchScreenPoint.y;
-			float d = FloatMath.sqrt(dx * dx + dy * dy);
+			double d = Math.sqrt(dx * dx + dy * dy);
 
 			if (d < 50) {
 				//	Log.d("...", "HIT! " + (x - mTouchScreenPoint.x) + "  " + (y - mTouchScreenPoint.y));
@@ -262,7 +260,6 @@ public class ItemizedIconOverlay<Item extends OverlayItem> extends ItemizedOverl
 	 * When the item is touched one of these methods may be invoked depending on
 	 * the type of touch. Each of them returns true if the event was completely
 	 * handled.
-	 * 
 	 * @param <T>
 	 *            ....
 	 */
diff --git a/src/org/oscim/renderer/WayDecorator.java b/src/org/oscim/renderer/WayDecorator.java
index e3a37cac..0771e982 100644
--- a/src/org/oscim/renderer/WayDecorator.java
+++ b/src/org/oscim/renderer/WayDecorator.java
@@ -18,8 +18,6 @@ import org.oscim.renderer.layer.TextItem;
 import org.oscim.theme.renderinstruction.Text;
 import org.oscim.utils.GeometryUtils;
 
-import android.util.FloatMath;
-
 public final class WayDecorator {
 	// /**
 	// * Minimum distance in pixels before the symbol is repeated.
@@ -168,7 +166,7 @@ public final class WayDecorator {
 				continue;
 			}
 
-			float segmentLengthInPixel = FloatMath.sqrt(diffX * diffX + diffY * diffY);
+			double segmentLengthInPixel = Math.sqrt(diffX * diffX + diffY * diffY);
 
 			if (skipPixels > 0) {
 				skipPixels -= segmentLengthInPixel;
@@ -181,7 +179,7 @@ public final class WayDecorator {
 
 				if (segmentLengthInPixel > wayNameWidth * 0.80) {
 
-					float s = (wayNameWidth + 25) / segmentLengthInPixel;
+					float s = (wayNameWidth + 25) / (float) segmentLengthInPixel;
 					int width, height;
 					int x1, y1, x2, y2;
 
@@ -241,21 +239,6 @@ public final class WayDecorator {
 						continue;
 					}
 
-					// Log.d("mapsforge", "add " + text + " " + first + " " +
-					// last);
-
-					//					if (previousX < currentX) {
-					//						x1 = previousX;
-					//						y1 = previousY;
-					//						x2 = currentX;
-					//						y2 = currentY;
-					//					} else {
-					//						x1 = currentX;
-					//						y1 = currentY;
-					//						x2 = previousX;
-					//						y2 = previousY;
-					//					}
-
 					// if (t == null)
 					t = TextItem.get();
 					// t = new TextItem(x1 + (x2 - x1) / 2, y1 + (y2 - y1) / 2,
diff --git a/src/org/oscim/renderer/layer/LineLayer.java b/src/org/oscim/renderer/layer/LineLayer.java
index f9260266..afbaec83 100644
--- a/src/org/oscim/renderer/layer/LineLayer.java
+++ b/src/org/oscim/renderer/layer/LineLayer.java
@@ -19,7 +19,6 @@ import org.oscim.renderer.GLRenderer;
 import org.oscim.theme.renderinstruction.Line;
 
 import android.graphics.Paint.Cap;
-import android.util.FloatMath;
 
 public final class LineLayer extends Layer {
 
@@ -122,7 +121,7 @@ public final class LineLayer extends Layer {
 			vx = nextX - x;
 			vy = nextY - y;
 
-			a = FloatMath.sqrt(vx * vx + vy * vy);
+			a = (float) Math.sqrt(vx * vx + vy * vy);
 
 			vx = (vx / a);
 			vy = (vy / a);
@@ -289,14 +288,14 @@ public final class LineLayer extends Layer {
 				// Unit vector pointing back to previous node
 				vx = prevX - x;
 				vy = prevY - y;
-				a = FloatMath.sqrt(vx * vx + vy * vy);
+				a = (float) Math.sqrt(vx * vx + vy * vy);
 				vx = (vx / a);
 				vy = (vy / a);
 
 				// Unit vector pointing forward to next node
 				wx = nextX - x;
 				wy = nextY - y;
-				a = FloatMath.sqrt(wx * wx + wy * wy);
+				a = (float) Math.sqrt(wx * wx + wy * wy);
 				wx = (wx / a);
 				wy = (wy / a);
 
@@ -369,7 +368,7 @@ public final class LineLayer extends Layer {
 			vx = prevX - x;
 			vy = prevY - y;
 
-			a = FloatMath.sqrt(vx * vx + vy * vy);
+			a = (float) Math.sqrt(vx * vx + vy * vy);
 
 			vx = (vx / a);
 			vy = (vy / a);