Class KmlLayer


  • public class KmlLayer
    extends Layer
    Document class allows for users to input their KML data and output it onto the map
    • Constructor Detail

      • KmlLayer

        public KmlLayer​(com.google.android.gms.maps.GoogleMap map,
                        int resourceId,
                        android.content.Context context)
                 throws org.xmlpull.v1.XmlPullParserException,
                        java.io.IOException
        Creates a new KmlLayer object - addLayerToMap() must be called to trigger rendering onto a map. Constructor may be called on a background thread, as I/O and parsing may be long-running.
        Parameters:
        map - GoogleMap object
        resourceId - Raw resource KML or KMZ file
        context - The Context
        Throws:
        org.xmlpull.v1.XmlPullParserException - if file cannot be parsed
        java.io.IOException - if I/O error
      • KmlLayer

        public KmlLayer​(com.google.android.gms.maps.GoogleMap map,
                        java.io.InputStream stream,
                        android.content.Context context)
                 throws org.xmlpull.v1.XmlPullParserException,
                        java.io.IOException
        Creates a new KmlLayer object - addLayerToMap() must be called to trigger rendering onto a map. Constructor may be called on a background thread, as I/O and parsing may be long-running.
        Parameters:
        map - GoogleMap object
        stream - InputStream containing KML or KMZ file
        context - The Context
        Throws:
        org.xmlpull.v1.XmlPullParserException - if file cannot be parsed
        java.io.IOException - if I/O error
      • KmlLayer

        public KmlLayer​(com.google.android.gms.maps.GoogleMap map,
                        @RawRes
                        int resourceId,
                        android.content.Context context,
                        MarkerManager markerManager,
                        PolygonManager polygonManager,
                        PolylineManager polylineManager,
                        GroundOverlayManager groundOverlayManager,
                        Renderer.ImagesCache cache)
                 throws org.xmlpull.v1.XmlPullParserException,
                        java.io.IOException
        Creates a new KmlLayer object - addLayerToMap() must be called to trigger rendering onto a map. Constructor may be called on a background thread, as I/O and parsing may be long-running. Use this constructor with shared object managers in order to handle multiple layers with their own event handlers on the map.
        Parameters:
        map - GoogleMap object
        resourceId - Raw resource KML or KMZ file
        context - The Context
        markerManager - marker manager to create marker collection from
        polygonManager - polygon manager to create polygon collection from
        polylineManager - polyline manager to create polyline collection from
        groundOverlayManager - ground overlay manager to create ground overlay collection from
        cache - cache to be used for fetched images
        Throws:
        org.xmlpull.v1.XmlPullParserException - if file cannot be parsed
        java.io.IOException - if I/O error
      • KmlLayer

        public KmlLayer​(com.google.android.gms.maps.GoogleMap map,
                        java.io.InputStream stream,
                        android.content.Context context,
                        MarkerManager markerManager,
                        PolygonManager polygonManager,
                        PolylineManager polylineManager,
                        GroundOverlayManager groundOverlayManager,
                        Renderer.ImagesCache cache)
                 throws org.xmlpull.v1.XmlPullParserException,
                        java.io.IOException
        Creates a new KmlLayer object - addLayerToMap() must be called to trigger rendering onto a map. Constructor may be called on a background thread, as I/O and parsing may be long-running. Use this constructor with shared object managers in order to handle multiple layers with their own event handlers on the map.
        Parameters:
        map - GoogleMap object
        stream - InputStream containing KML or KMZ file
        context - The Context
        markerManager - marker manager to create marker collection from
        polygonManager - polygon manager to create polygon collection from
        polylineManager - polyline manager to create polyline collection from
        groundOverlayManager - ground overlay manager to create ground overlay collection from
        cache - cache to be used for fetched images
        Throws:
        org.xmlpull.v1.XmlPullParserException - if file cannot be parsed
        java.io.IOException - if I/O error
    • Method Detail

      • addLayerToMap

        public void addLayerToMap()
        Adds the KML data to the map - must be called on the main UI thread
        Specified by:
        addLayerToMap in class Layer
      • hasPlacemarks

        public boolean hasPlacemarks()
        Checks if the layer contains placemarks
        Returns:
        true if there are placemarks, false otherwise
      • getPlacemarks

        public java.lang.Iterable<KmlPlacemark> getPlacemarks()
        Gets an iterable of KmlPlacemark objects
        Returns:
        iterable of KmlPlacemark objects
      • hasContainers

        public boolean hasContainers()
        Checks if the layer contains any KmlContainers
        Returns:
        true if there is at least 1 container within the KmlLayer, false otherwise
      • getContainers

        public java.lang.Iterable<KmlContainer> getContainers()
        Gets an iterable of KmlContainerInterface objects
        Returns:
        iterable of KmlContainerInterface objects
      • getGroundOverlays

        public java.lang.Iterable<KmlGroundOverlay> getGroundOverlays()
        Gets an iterable of KmlGroundOverlay objects
        Returns:
        iterable of KmlGroundOverlay objects