# Waypoint

{% hint style="info" %}
This class is part of an [Early Access](https://github.com/sentiance/v4-docs/blob/main/sdk/api-reference/android/usercontext/broken-reference/README.md) feature, and is subject to change in the future.
{% endhint %}

Represents a geographic location

## Waypoint API

### `getLatitude()`

> ```java
> double getLatitude()
> ```
>
> Returns the latitude in degrees.

### `getLongitude()`

> ```java
> double getLongitude()
> ```
>
> Returns the longitude in degrees.

### `getAccuracyInMeters()`

> ```java
> int getAccuracyInMeters()
> ```
>
> Returns the accuracy in meters.
>
> If this location does not have an accuracy, then -1 is returned.

### `getSpeedInMps()`

> ```java
> float getSpeedInMps()
> ```
>
> Returns the speed at the time of the location of this waypoint, in meters per second. If this location does not have a speed, then -1 is returned.

### `getSpeedLimitInMps()`

> ```java
> float getSpeedLimitInMps()
> ```
>
> Returns the speed limit at the location of this waypoint, in meters per second. If this location does not have a speed limit, then -1 is returned.

### `getTimestamp()`

> ```java
> long getTimestamp()
> ```
>
> Returns the UTC time of this waypoint, in milliseconds since epoch (January 1, 1970).

### `hasAccuracy()`

> ```java
> boolean hasAccuracy()
> ```
>
> Returns `true` if this location has a horizontal accuracy, `false` otherwise. If this method returns is false, the accuracy value returned by `getAccuracyInMeters()` will be -1.

### `hasSpeed()`

> ```java
> boolean hasSpeed()
> ```
>
> Returns whether the waypoint has speed information. If this method returns is false, the speed returned by `getSpeedInMps()` will be -1.

### `hasUnlimitedSpeedLimit()`

> ```java
> boolean hasUnlimitedSpeedLimit()
> ```
>
> Returns `true` if this waypoint has an unlimited speed limit.

### `isSpeedLimitInfoSet()`

> ```java
> boolean isSpeedLimitInfoSet()
> ```
>
> Returns `true` if this waypoint has a speed limit, `false` otherwise. If this method returns `false`, then the speed limit value returned by `getSpeedLimitInMps()` will be -1.

### `isSynthetic()`

> ```java
> boolean isSynthetic()
> ```
>
> Returns `true` if this waypoint was interpolated.
