Package com.mapbox.geojson
Class MultiPoint
- java.lang.Object
-
- com.mapbox.geojson.MultiPoint
-
- All Implemented Interfaces:
CoordinateContainer<java.util.List<Point>>,GeoJson,Geometry,java.io.Serializable
public final class MultiPoint extends java.lang.Object implements CoordinateContainer<java.util.List<Point>>
A MultiPoint represents two or more geographic points that share a relationship and is one of the seven geometries found in the GeoJson spec.This adheres to the RFC 7946 internet standard when serialized into JSON. When deserialized, this class becomes an immutable object which should be initiated using its static factory methods. The list of points must be equal to or greater than 2.
A sample GeoJson MultiPoint's provided below (in it's serialized state).
{ "TYPE": "MultiPoint", "coordinates": [ [100.0, 0.0], [101.0, 1.0] ] }Look over thePointdocumentation to get more information about formatting your list of point objects correctly.- Since:
- 1.0.0
- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description BoundingBoxbbox()A Feature Collection might have a member namedbboxto include information on the coordinate range for it'sFeatures.java.util.List<Point>coordinates()provides the list ofPoints that make up the MultiPoint geometry.booleanequals(java.lang.Object obj)static MultiPointfromJson(java.lang.String json)Create a new instance of this class by passing in a formatted valid JSON String.static MultiPointfromLngLats(java.util.List<Point> points)Create a new instance of this class by defining a list ofPoints which follow the correct specifications described in the Point documentation.static MultiPointfromLngLats(java.util.List<Point> points, BoundingBox bbox)Create a new instance of this class by defining a list ofPoints which follow the correct specifications described in the Point documentation.inthashCode()java.lang.StringtoJson()This takes the currently defined values found inside this instance and converts it to a GeoJson string.java.lang.StringtoString()java.lang.Stringtype()This describes the TYPE of GeoJson this object is, thus this will always returnMultiPoint.static com.google.gson.TypeAdapter<MultiPoint>typeAdapter(com.google.gson.Gson gson)Gson TYPE adapter for parsing Gson to this class.
-
-
-
Method Detail
-
fromJson
public static MultiPoint fromJson(@NonNull java.lang.String json)
Create a new instance of this class by passing in a formatted valid JSON String. If you are creating a MultiPoint object from scratch it is better to use one of the other provided static factory methods such asfromLngLats(List). For a valid MultiPoint to exist, it must have at least 2 coordinate entries.- Parameters:
json- a formatted valid JSON string defining a GeoJson MultiPoint- Returns:
- a new instance of this class defined by the values passed inside this static factory method
- Since:
- 1.0.0
-
fromLngLats
public static MultiPoint fromLngLats(@NonNull java.util.List<Point> points)
Create a new instance of this class by defining a list ofPoints which follow the correct specifications described in the Point documentation. Note that there should not be any duplicate points inside the list.Note that if less than 2 points are passed in, a runtime exception will occur.
- Parameters:
points- a list ofPoints which make up the LineString geometry- Returns:
- a new instance of this class defined by the values passed inside this static factory method
- Since:
- 3.0.0
-
fromLngLats
public static MultiPoint fromLngLats(@NonNull java.util.List<Point> points, @Nullable BoundingBox bbox)
Create a new instance of this class by defining a list ofPoints which follow the correct specifications described in the Point documentation. Note that there should not be any duplicate points inside the list.Note that if less than 2 points are passed in, a runtime exception will occur.
- Parameters:
points- a list ofPoints which make up the LineString geometrybbox- optionally include a bbox definition as a double array- Returns:
- a new instance of this class defined by the values passed inside this static factory method
- Since:
- 3.0.0
-
type
@NonNull public java.lang.String type()
This describes the TYPE of GeoJson this object is, thus this will always returnMultiPoint.
-
bbox
@Nullable public BoundingBox bbox()
A Feature Collection might have a member namedbboxto include information on the coordinate range for it'sFeatures. The value of the bbox member MUST be a list of size 2*n where n is the number of dimensions represented in the contained feature geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries.
-
coordinates
@NonNull public java.util.List<Point> coordinates()
provides the list ofPoints that make up the MultiPoint geometry.- Specified by:
coordinatesin interfaceCoordinateContainer<java.util.List<Point>>- Returns:
- a list of points
- Since:
- 3.0.0
-
toJson
public java.lang.String toJson()
This takes the currently defined values found inside this instance and converts it to a GeoJson string.
-
typeAdapter
public static com.google.gson.TypeAdapter<MultiPoint> typeAdapter(com.google.gson.Gson gson)
Gson TYPE adapter for parsing Gson to this class.- Parameters:
gson- the builtGsonobject- Returns:
- the TYPE adapter for this class
- Since:
- 3.0.0
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-