Class KmlGeometry

java.lang.Object
com.esri.arcgisruntime.ogc.kml.KmlGeometry

public final class KmlGeometry extends Object
A KML geometry contains all the KML specific information associated with a geometry.
Since:
100.4.0
  • Constructor Details

    • KmlGeometry

      public KmlGeometry(Geometry geometry, KmlAltitudeMode kmlAltitudeMode)
      Creates a KmlGeometry from a Geometry using a specific altitude mode.

      By default, it sets both geometry extrusion and tessellation to false.

      Parameters:
      geometry - the runtime Geometry used to create a new KML geometry
      kmlAltitudeMode - determines how altitude values should be interpreted
      Throws:
      IllegalArgumentException - if geometry is null
      IllegalArgumentException - if kmlAltitudeMode is null
      Since:
      100.6.0
    • KmlGeometry

      public KmlGeometry(Geometry geometry, KmlAltitudeMode kmlAltitudeMode, boolean isExtruded)
      Creates a KmlGeometry from a Geometry using a specific altitude mode and an extruded flag.

      By default, it sets geometry tessellation to false.

      Parameters:
      geometry - the runtime Geometry used to create a new KML geometry
      kmlAltitudeMode - determines how altitude values should be interpreted
      isExtruded - specifies whether to connect the geometry to the ground. To extrude a geometry, kmlAltitudeMode value should be KmlAltitudeMode.ABSOLUTE or KmlAltitudeMode.RELATIVE_TO_GROUND
      Throws:
      IllegalArgumentException - if geometry is null
      IllegalArgumentException - if kmlAltitudeMode is null
      Since:
      100.6.0
    • KmlGeometry

      public KmlGeometry(Geometry geometry, KmlAltitudeMode kmlAltitudeMode, boolean isExtruded, boolean isTessellated)
      Creates a KmlGeometry from a Geometry using a specific altitude mode, extruded flag, and a tessellated flag.

      Only polyline geometries can be tessellated.

      Parameters:
      geometry - the runtime Geometry used to create a new KML geometry
      kmlAltitudeMode - determines how altitude values should be interpreted
      isExtruded - specifies whether to connect the geometry to the ground. To extrude a geometry, kmlAltitudeMode value should be KmlAltitudeMode.ABSOLUTE or KmlAltitudeMode.RELATIVE_TO_GROUND
      isTessellated - specifies whether to drape the geometry over the terrain. To enable tessellation, kmlAltitudeMode value should be KmlAltitudeMode.CLAMP_TO_GROUND. It is only enabled for Polyline geometry type.
      Throws:
      IllegalArgumentException - if geometry is null
      IllegalArgumentException - if kmlAltitudeMode is null
      Since:
      100.6.0
  • Method Details

    • getAltitudeMode

      public KmlAltitudeMode getAltitudeMode()
      Gets the KML altitude mode.
      Returns:
      the altitude mode of the KML geometry
      Since:
      100.4.0
      See Also:
    • getGeometry

      public Geometry getGeometry()
      Gets the Geometry contained within the KML geometry.
      Returns:
      the geometry contained within the KML geometry
      Since:
      100.4.0
    • isExtruded

      public boolean isExtruded()
      Gets a value indicating that the KML geometry is extruded.
      Returns:
      true if the KML geometry is extruded, false otherwise
      Since:
      100.4.0
    • isTessellated

      public boolean isTessellated()
      Gets a value indicating that the KML geometry is tessellated. Tessellated geometry can follow the terrain.

      In order for tessellated geometry to follow the terrain, getAltitudeMode() must be set to KmlAltitudeMode.CLAMP_TO_GROUND.

      Returns:
      true if the KML geometry is tessellated, false otherwise
      Since:
      100.4.0
    • getType

      public KmlGeometry.Type getType()
      Gets the KML geometry type.
      Returns:
      the type of the KML geometry
      Since:
      100.4.0