Package es.situm.sdk.model.location
Class CartesianCoordinate
- java.lang.Object
-
- es.situm.sdk.model.location.CartesianCoordinate
-
- All Implemented Interfaces:
android.os.Parcelable
,MapperInterface
public class CartesianCoordinate extends java.lang.Object implements android.os.Parcelable, MapperInterface
A structure that contains cartesian coordinate. Instances are immutable.See
CoordinateConverter
to convert betweenCoordinate
andCartesianCoordinate
's building coordinate.
-
-
Field Summary
Fields Modifier and Type Field Description static android.os.Parcelable.Creator<CartesianCoordinate>
CREATOR
static CartesianCoordinate
EMPTY
-
Fields inherited from interface es.situm.sdk.model.MapperInterface
ACCESSIBILITY_MODE, ACCURACY, ADDRESS, ALTITUDE, BEARING, BEARING_FROM, BEARING_QUALITY, BOUNDS, BOUNDS_ROTATED, BUILDING, BUILDING_IDENTIFIER, BUILDING_NAME, CARTESIAN_BEARING, CARTESIAN_COORDINATE, CENTER, CLOSEST_LOCATION_IN_ROUTE, CODE, CONVERSION, COORDINATE, CREATED_AT, CURRENT_INDICATION, CURRENT_STEP_INDEX, CUSTOM_FIELDS, dateFormat, DEGREES, DEGREES_CLOCKWISE, DEVICE_ID, DIMENSIONS, DISTANCE, DISTANCE_TO_CHANGE_FLOOR_THRESHOLD, DISTANCE_TO_CHANGE_INDICATION_THRESHOLD, DISTANCE_TO_CLOSEST_POINT_IN_ROUTE, DISTANCE_TO_END_STEP, DISTANCE_TO_GOAL, DISTANCE_TO_GOAL_THRESHOLD, DISTANCE_TO_IGNORE_FIRST_INDICATION, DISTANCE_TO_NEXT_LEVEL, EDGES, EVENTS, EXCLUDED_TAGS, EXTERNAL_NAVIGATION_PAYLOAD, EXTERNAL_NAVIGATION_TYPE, FIRST_STEP, FLOOR, FLOOR_IDENTIFIER, FLOORS, FOREGROUND_SERVICE_NOTIFICATION_MESSAGE, FOREGROUND_SERVICE_NOTIFICATION_SHOW_STOP_ACTION, FOREGROUND_SERVICE_NOTIFICATION_STOP_ACTION_TEXT, FOREGROUND_SERVICE_NOTIFICATION_TAP_ACTION, FOREGROUND_SERVICE_NOTIFICATION_TITLE, FROM, GEOFENCES, HAS_BEARING, HAS_CARTESIAN_BEARING, HEIGHT, HUMAN_READABLE_MESSAGE, ID, IDENTIFIER, IGNORE_LOW_QUALITY_LOCATIONS, INCLUDED_TAGS, INDICATION_TYPE, INDICATIONS, INDICATIONS_INTERVAL, INDOOR_POIS, INFO_HTML, IS_FIRST, IS_INDOOR, IS_LAST, IS_OUTDOOR, IS_PUBLIC, LAST_STEP, LATITUDE, LONGITUDE, MAP_URL, MINIMIZE_FLOOR_CHANGES, NAME, NEEDED_LEVEL_CHANGE, NEXT_INDICATION, NEXT_LEVEL, NODES, NORTH_EAST, NORTH_WEST, ORIENTATION, ORIENTATION_TYPE, OUTDOOR_BUILDING_DETECTOR_BLE, OUTDOOR_POIS, OUTSIDE_ROUTE_THRESHOLD, PICTURE_THUMB_URL, PICTURE_URL, POI_CATEGORIES, POI_CATEGORY, POI_CATEGORY_CODE, POI_CATEGORY_ICON_SELECTED, POI_CATEGORY_ICON_UNSELECTED, POI_CATEGORY_IDENTIFIER, POI_CATEGORY_IDENTIFIERS, POI_CATEGORY_iNAME, POI_CATEGORY_NAME, POI_NAME, POI_TO, POI_TO_IDENTIFIER, POINTS, POLYGON_POINTS, POSITION, PROVIDER, QUALITY, RADIANS, RADIANS_MINUS_PI_PI, RADIUS, ROTATION, ROUND_INDICATIONS_STEP, ROUTE, ROUTE_STEP, SCALE, SEGMENTS, SOUTH_EAST, SOUTH_WEST, STATUS_NAME, STATUS_ORDINAL, STEP_IDX_DESTINATION, STEP_IDX_ORIGIN, STEPS, TIME_TO_END_STEP, TIME_TO_FIRST_INDICATION, TIME_TO_GOAL, TIME_TO_IGNORE_UNEXPECTED_FLOOR_CHANGES, TIMESTAMP, TO, TO_LEGACY, TRIGGER, UPDATED_AT, USER_IDENTIFIER, WIDTH, X, Y
-
-
Constructor Summary
Constructors Constructor Description CartesianCoordinate(double x, double y)
CartesianCoordinate(CartesianCoordinate copy)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
describeContents()
double
distanceTo(CartesianCoordinate cartesianCoordinate)
Calculates the distance (in meters) between this cartesian coordinate and anotherboolean
equals(java.lang.Object o)
static CartesianCoordinate
fromMap(java.util.Map<java.lang.String,java.lang.Object> map)
Return a newCartesianCoordinate
instance object containing the data at the given map.double
getX()
Returns value of coordinate at x-axisdouble
getY()
Returns value of coordinate at y-axisint
hashCode()
java.util.Map<java.lang.String,java.lang.Object>
toMap()
Method to transform object into Mapjava.lang.String
toString()
void
writeToParcel(android.os.Parcel dest, int flags)
-
-
-
Field Detail
-
EMPTY
public static final CartesianCoordinate EMPTY
-
CREATOR
public static final android.os.Parcelable.Creator<CartesianCoordinate> CREATOR
-
-
Constructor Detail
-
CartesianCoordinate
public CartesianCoordinate(double x, double y)
-
CartesianCoordinate
public CartesianCoordinate(@NonNull CartesianCoordinate copy)
-
-
Method Detail
-
getX
public double getX()
Returns value of coordinate at x-axis- Returns:
- double. Default is 0
-
getY
public double getY()
Returns value of coordinate at y-axis- Returns:
- double. Default is 0
-
distanceTo
@FloatRange(from=0.0) public double distanceTo(CartesianCoordinate cartesianCoordinate) throws java.lang.IllegalArgumentException
Calculates the distance (in meters) between this cartesian coordinate and another- Parameters:
cartesianCoordinate
- the other cartesian coordinate. Can't be null- Returns:
- distance in meters. Never a negative value
- Throws:
java.lang.IllegalArgumentException
- ifcartesianCoordinate
is null
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
describeContents
public int describeContents()
- Specified by:
describeContents
in interfaceandroid.os.Parcelable
-
writeToParcel
public void writeToParcel(android.os.Parcel dest, int flags)
- Specified by:
writeToParcel
in interfaceandroid.os.Parcelable
-
toMap
public java.util.Map<java.lang.String,java.lang.Object> toMap()
Description copied from interface:MapperInterface
Method to transform object into Map- Specified by:
toMap
in interfaceMapperInterface
- Returns:
- Map
with the information of the object mapped
-
fromMap
public static CartesianCoordinate fromMap(java.util.Map<java.lang.String,java.lang.Object> map) throws java.lang.IllegalArgumentException
Return a newCartesianCoordinate
instance object containing the data at the given map. UseMapperInterface
to populate the Map. The expected fields are those defined at this class.- Parameters:
map
- Map containing the data used to populate the new object.- Returns:
- New instance.
- Throws:
java.lang.IllegalArgumentException
- If there is not enough information at the given map or it is incorrect.
-
-