Class Indication

java.lang.Object
es.situm.sdk.model.directions.Indication
All Implemented Interfaces:
android.os.Parcelable, MapperInterface

public class Indication extends Object implements android.os.Parcelable, MapperInterface
Represents the instruction that a user should follow when on a RouteStep to continue the route
  • Field Details

    • EMPTY

      public static final Indication EMPTY
    • END

      public static final Indication END
    • CALCULATING

      public static final Indication CALCULATING
    • CREATOR

      public static final android.os.Parcelable.Creator<Indication> CREATOR
  • Constructor Details

    • Indication

      public Indication(int stepIndex, double orientationChange, double distance, int floorDistance)
      Constructs Indication calculating its GuidanceActionType and GuidanceOrientationType
      Parameters:
      stepIndex - index of the RouteStep whose indication is being calculated
      orientationChange - angle in radians of change in orientation to follow the route (-pi,pi)
      distance - distance of the RouteStep from RouteStep.getDistance()
      floorDistance - : Distance between floors of points origin and destination of the RouteStep
    • Indication

      public Indication(int stepIndex, double orientationChange, double distance, int floorDistance, Integer nextLevel)
      Constructs Indication calculating its GuidanceActionType and GuidanceOrientationType
      Parameters:
      stepIndex - index of the RouteStep whose indication is being calculated
      orientationChange - angle in radians of change in orientation to follow the route (-pi,pi)
      distance - distance of the RouteStep from RouteStep.getDistance()
      floorDistance - : Distance between floors of points origin and destination of the RouteStep
    • Indication

      public Indication()
  • Method Details

    • toMap

      public Map<String,Object> toMap()
      Description copied from interface: MapperInterface
      Method to transform object into Map<String, Object>
      Specified by:
      toMap in interface MapperInterface
      Returns:
      Map<String, Object> with the information of the object mapped
    • fromMap

      public static Indication fromMap(Map<String,Object> map) throws IllegalArgumentException
      Throws:
      IllegalArgumentException
    • setOrientation

      public void setOrientation(double orientation)
    • setDistanceToNextLevel

      public void setDistanceToNextLevel(int distanceToNextLevel)
    • setStepIdxOrigin

      public void setStepIdxOrigin(int stepIdxOrigin)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getOrientation

      public double getOrientation()
      Retrieve the angle a user should change his direction in order to go from the origin to the destination.
      Returns:
      double value (radians)
    • getIndicationType

      @NonNull public Indication.Action getIndicationType()
      Retrieve the Indication.Action of the instruction
      Returns:
      Indication.Action
    • getOrientationType

      @NonNull public Indication.Orientation getOrientationType()
      Retrieve the Indication.Orientation of the instruction
      Returns:
      Indication.Orientation
    • getDistance

      public double getDistance()
      Retrieve the distance between the origin and destination
      Returns:
      double value (in meters)
    • isNeededLevelChange

      public boolean isNeededLevelChange()
      Check if the user should change the level in order to arrive to destination
      Returns:
      boolean value
    • getDistanceToNextLevel

      public int getDistanceToNextLevel()
      Retrieve the number of levels between the origin and destination
      Returns:
      integer value representing the number of level to go upstairs (positive values) or downstairs (negative values)
    • getNextLevel

      @Nullable public Integer getNextLevel()
      Retrieves the next level
      Returns:
      String value representing the next level
    • setDistance

      public void setDistance(double distance)
    • getStepIdxOrigin

      public int getStepIdxOrigin()
      Retrieve the index of the indication's step of origin
      Returns:
      integer value representing the index of the step of origin
    • getStepIdxDestination

      public int getStepIdxDestination()
      Retrieve the index of the indication's step of destination. If the indication belongs to only one step, it is the same as the step index of origin.
      Returns:
      integer value representing the index of the step of destination
    • isValid

      public boolean isValid()
      Check if a particular guidance make sense
      Returns:
      bolean value determine if the guidance is valid (true) or invalid (false)
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • isChunckableWith

      public boolean isChunckableWith(@NonNull Indication indication2)
      Checks if this Indication can be combined with another one
      Returns:
      boolean
    • chunk

      @NonNull public Indication chunk(@NonNull Indication indication2)
      Constructs a new Indication form the current one and the provided indication2. It should be check before if they are chunkable with the function isChunckableWith(Indication)
      Returns:
      Indication with parameters combined
    • toText

      public String toText(@NonNull android.content.Context context)
      Get a natural language string describing the instruction in the language of the Locale of the device (if translation available). The default language is english.
      Parameters:
      context -
      Returns:
      String
    • toText

      public String toText(@NonNull android.content.Context context, @Nullable Locale locale)
      Get a natural language string describing the instruction. If locale available it will return a string in that language. Otherwise it will try the system locale Locale. Finally, if neither of them is available, it will return in the default language (english)
      Parameters:
      context -
      locale - Locale of the desired language
      Returns:
      String with the textual indication
    • describeContents

      public int describeContents()
      Specified by:
      describeContents in interface android.os.Parcelable
    • writeToParcel

      public void writeToParcel(android.os.Parcel dest, int flags)
      Specified by:
      writeToParcel in interface android.os.Parcelable