Android Question Parse KML Polygones, Save, check if inside?


Active Member
Licensed User
Longtime User

I want to parse a KML file with polygons (XML2MAP ?) and save it (in a SQL file, or is there a more suitable way?)

Then the user should be able to check if he is within the boundaries of one of these polygons (areas).
The position of the user is provided by the GPS.

Is this possible?

José J. Aguilar

Licensed User
Do you need this or do you need something different?

Upvote 0


Active Member
Licensed User
I use this code to check whether a point is inside a polyon:
Type ePoint(X As Double, Y As Double)

Public Sub IsPointInPolygon(polygon() As ePoint, X As Double, Y As Double) As Boolean
    Dim result As Boolean = False
    Dim j As Int = polygon.length - 1
    For i = 0 To polygon.length - 1
        If polygon(i).Y < Y And polygon(j).Y >= Y Or polygon(j).Y < Y And polygon(i).Y >= Y Then
            If polygon(i).X + (Y - polygon(i).Y) / (polygon(j).Y - polygon(i).Y) * (polygon(j).X - polygon(i).X) < X Then
                result = Not(result)
            End If
        End If
        j = i
    Return result
End Sub
Taken from here: c# - Is point inside polygon? - Stack Overflow

You'll have to check whether it works with lat/lon values. I use projected coordinates in UTM or other coordinate systems.
Upvote 0