Test des Punktes innerhalb eines Polygons in Android

8

Neulich habe ich in Java eine Klasse erstellt, um zu berechnen, ob sich point(X,Y) in einem Polygon befindet. ( X und Y sind double , da es sich um Geokoordinaten handelt).

Ich weiß, dass Java die Klasse Polygon hat, aber ich musste Path2D und Point2D verwenden, weil Polygon double nicht zulässt, nur ganze Zahlen: (

Sobald ich das Polygon in Path2D erstellt habe, habe ich die Methode contains ( Path2D hatte es) verwendet, und mein Problem wurde gelöst.

Aber jetzt möchte ich nach Android importieren, und das Problem ist hier, weil Path2D importieren muss:

%Vor%

und in Android gibt es keine AWT, also kann ich nicht verwenden.

Also, gibt es irgendeine Klasse, die Path2D ähnlich ist, die contains method hat? oder muss ich selbst berechnen?

So habe ich in Java mit Path2D :

gearbeitet %Vor%     
Shudy 04.04.2013, 16:40
quelle

4 Antworten

29

Sie können meine einfache Bibliothek genau dafür verwenden: Ссылка .

Polygon vorbereiten:

%Vor%

Und überprüfen Sie, dass der Punkt innerhalb des Polygons ist:

%Vor%

Es funktioniert mit Float-Typen und mit Polygonen, die Löcher enthalten:)

    
sromku 04.04.2013, 16:46
quelle
9

Sie können Google Maps PolyUtil verwenden:

%Vor%     
fnieto - Fernando Nieto 09.07.2016 09:03
quelle
6

Hier ist, wie ich es in Android gemacht habe. Es basiert auf diesem Java-Programm (Ray-Casting-Algorithmus): Ссылка

%Vor%     
ylag75 14.09.2014 12:54
quelle
4

Sorry @sromku Ich fragte mich selbst (ich habe diese Art von Dingen nie benutzt)

So habe ich gelöst, wenn jemand dieselbe Frage hat

%Vor%     
Shudy 10.04.2013 16:23
quelle

Tags und Links