use PointF instead of android int Point
This commit is contained in:
parent
f508ddc1ff
commit
efaafce08c
@ -75,7 +75,7 @@ public class GeoPoint implements Parcelable, Comparable<GeoPoint> {
|
|||||||
this(latitudeE6 / CONVERSION_FACTOR, longitudeE6 / CONVERSION_FACTOR);
|
this(latitudeE6 / CONVERSION_FACTOR, longitudeE6 / CONVERSION_FACTOR);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void project(Point2D out) {
|
public void project(PointD out) {
|
||||||
out.x = MercatorProjection.longitudeToX(this.longitudeE6 / CONVERSION_FACTOR);
|
out.x = MercatorProjection.longitudeToX(this.longitudeE6 / CONVERSION_FACTOR);
|
||||||
out.y = MercatorProjection.latitudeToY(this.latitudeE6 / CONVERSION_FACTOR);
|
out.y = MercatorProjection.latitudeToY(this.latitudeE6 / CONVERSION_FACTOR);
|
||||||
}
|
}
|
||||||
|
|||||||
30
src/org/oscim/core/PointD.java
Normal file
30
src/org/oscim/core/PointD.java
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2013 Hannes Janetzek
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it under the
|
||||||
|
* terms of the GNU Lesser General Public License as published by the Free Software
|
||||||
|
* Foundation, either version 3 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
|
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public License along with
|
||||||
|
* this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
package org.oscim.core;
|
||||||
|
|
||||||
|
public class PointD {
|
||||||
|
public double x;
|
||||||
|
public double y;
|
||||||
|
public PointD() {
|
||||||
|
}
|
||||||
|
PointD(double x, double y){
|
||||||
|
this.x = x;
|
||||||
|
this.y = y;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String toString(){
|
||||||
|
return x + " " + y;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -12,19 +12,19 @@
|
|||||||
* You should have received a copy of the GNU Lesser General Public License along with
|
* You should have received a copy of the GNU Lesser General Public License along with
|
||||||
* this program. If not, see <http://www.gnu.org/licenses/>.
|
* this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.oscim.utils;
|
package org.oscim.core;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* without further ado: This class represents a 2D Point using float coordinates
|
* without further ado: This class represents a 2D Point using float coordinates
|
||||||
*/
|
*/
|
||||||
public class Point {
|
public class PointF {
|
||||||
public float x;
|
public float x;
|
||||||
public float y;
|
public float y;
|
||||||
|
|
||||||
public Point() {
|
public PointF() {
|
||||||
}
|
}
|
||||||
|
|
||||||
Point(float x, float y) {
|
PointF(float x, float y) {
|
||||||
this.x = x;
|
this.x = x;
|
||||||
this.y = y;
|
this.y = y;
|
||||||
}
|
}
|
||||||
@ -22,10 +22,10 @@ import java.util.List;
|
|||||||
import java.util.concurrent.CopyOnWriteArrayList;
|
import java.util.concurrent.CopyOnWriteArrayList;
|
||||||
|
|
||||||
import org.oscim.core.MapPosition;
|
import org.oscim.core.MapPosition;
|
||||||
|
import org.oscim.core.PointF;
|
||||||
import org.oscim.overlay.Overlay.Snappable;
|
import org.oscim.overlay.Overlay.Snappable;
|
||||||
import org.oscim.renderer.overlays.RenderOverlay;
|
import org.oscim.renderer.overlays.RenderOverlay;
|
||||||
|
|
||||||
import android.graphics.Point;
|
|
||||||
import android.view.KeyEvent;
|
import android.view.KeyEvent;
|
||||||
import android.view.MotionEvent;
|
import android.view.MotionEvent;
|
||||||
|
|
||||||
@ -148,7 +148,7 @@ public class OverlayManager extends AbstractList<Overlay> {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean onSnapToItem(final int x, final int y, final Point snapPoint) {
|
public boolean onSnapToItem(final int x, final int y, final PointF snapPoint) {
|
||||||
if (mDirtyOverlays)
|
if (mDirtyOverlays)
|
||||||
updateOverlays();
|
updateOverlays();
|
||||||
|
|
||||||
|
|||||||
@ -14,7 +14,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.oscim.utils;
|
package org.oscim.utils;
|
||||||
|
|
||||||
import org.oscim.core.Point2D;
|
import org.oscim.core.PointD;
|
||||||
|
|
||||||
import android.graphics.Point;
|
import android.graphics.Point;
|
||||||
|
|
||||||
@ -177,7 +177,7 @@ public final class GeometryUtils {
|
|||||||
double ax2, double ay2,
|
double ax2, double ay2,
|
||||||
double bx1, double by1,
|
double bx1, double by1,
|
||||||
double bx2, double by2,
|
double bx2, double by2,
|
||||||
Point2D point)
|
PointD point)
|
||||||
{
|
{
|
||||||
double ua_numr = (bx2 - bx1) * (ay1 - by1) - (by2 - by1) * (ax1 - bx1);
|
double ua_numr = (bx2 - bx1) * (ay1 - by1) - (by2 - by1) * (ax1 - bx1);
|
||||||
double ub_numr = (ax2 - ax1) * (ay1 - by1) - (ay2 - ay1) * (ax1 - bx1);
|
double ub_numr = (ax2 - ax1) * (ay1 - by1) - (ay2 - ay1) * (ax1 - bx1);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user