LatLngBounds

public final class LatLngBounds extends Object
implements Parcelable Parcelable

An immutable class representing a latitude/longitude aligned rectangle.

Nested Class Summary

class LatLngBounds.Builder This is a builder that is able to create a minimum bound based on a set of LatLng points. 

Inherited Constant Summary

Field Summary

public final LatLng northeast Northeast corner of the bound.
public final LatLng southwest Southwest corner of the bound.

Public Constructor Summary

LatLngBounds(LatLng southwest, LatLng northeast)
Creates a new bounds based on a southwest and a northeast corner.

Public Method Summary

static LatLngBounds.Builder
builder()
Creates a new builder.
boolean
contains(LatLng point)
Returns whether this contains the given LatLng.
static LatLngBounds
createFromAttributes(Context context, AttributeSet attrs)
Creates a LatLngBounds from the AttributeSet.
boolean
LatLng
getCenter()
Returns the center of this LatLngBounds.
int
LatLngBounds
including(LatLng point)
Returns a new LatLngBounds that extends this LatLngBounds to include the given LatLng.
String
void
writeToParcel(Parcel out, int flags)

Inherited Method Summary

Fields

public final LatLng northeast

Northeast corner of the bound.

public final LatLng southwest

Southwest corner of the bound.

Public Constructors

public LatLngBounds (LatLng southwest, LatLng northeast)

Creates a new bounds based on a southwest and a northeast corner.

The bounds conceptually includes all points where:

  • the latitude is in the range [northeast.latitude, southwest.latitude];
  • the longitude is in the range [southwest.longitude, northeast.longitude] if southwest.longitude ≤ northeast.longitude; and
  • the longitude is in the range [southwest.longitude, 180) ∪ [-180, northeast.longitude] if southwest.longitude > northeast.longitude.
Parameters
southwest southwest corner
northeast northeast corner
Throws
IllegalArgumentException if the latitude of the northeast corner is below the latitude of the southwest corner.

Public Methods

public static LatLngBounds.Builder builder ()

Creates a new builder.

public boolean contains (LatLng point)

Returns whether this contains the given LatLng.

Parameters
point the LatLng to test. Must not be null.
Returns
  • true if this contains the given point; false if not.

public static LatLngBounds createFromAttributes (Context context, AttributeSet attrs)

Creates a LatLngBounds from the AttributeSet.

Returns
  • null if either context or attrs is null.

public boolean equals (Object o)

public LatLng getCenter ()

Returns the center of this LatLngBounds. The center is simply the average of the coordinates (taking into account if it crosses the antimeridian). This is approximately the geographical center (it would be exact if the Earth were a perfect sphere). It will not necessarily be the center of the rectangle as drawn on the map due to the Mercator projection.

Returns
  • A LatLng that is the center of the LatLngBounds.

public int hashCode ()

public LatLngBounds including (LatLng point)

Returns a new LatLngBounds that extends this LatLngBounds to include the given LatLng. This will return the smallest LatLngBounds that contains both this and the extra point.

In particular, it will consider extending the bounds both in the eastward and westward directions (one of which may cross the antimeridian) and choose the smaller of the two. In the case that both directions result in a LatLngBounds of the same size, this will extend it in the eastward direction.

Parameters
point a LatLng to be included in the new bounds. Must not be null.
Returns
  • A new LatLngBounds that contains this and the extra point.

public String toString ()

public void writeToParcel (Parcel out, int flags)