model library
Core data models for geographic and map-related data structures.
This library provides fundamental classes for:
- Geographic coordinates (LatLong, ILatLong)
- Spatial boundaries (BoundingBox, MapRectangle)
- Map elements (Tile, Way, PointOfInterest)
- Geometric primitives (MapPoint, MapSize)
- Data organization (Tag, DatastoreBundle)
- Zoom level management (ZoomlevelRange)
- Coordinate utilities and transformations
Classes
- BoundingBox
- Immutable rectangular geographic boundary defined by latitude and longitude coordinates.
- Datastore
- Abstract base class for map data storage and retrieval.
- DatastoreBundle
-
A container for the data returned from a
Datastore. - ILatLong
- An interface for a geographical point with latitude and longitude coordinates.
- LatLong
- Immutable geographic coordinate representing a point on Earth's surface.
- Mappoint
- An immutable pair of absolute double coordinates in map pixels.
- MappointRelative
- An immutable pair of relative double coordinates in map pixels.
- MapRectangle
- An immutable rectangle defined by four double coordinates in map pixels.
- MapSize
- An immutable size in map pixels.
- PointOfInterest
- An immutable container for all data associated with a single Point of Interest (POI).
- Tag
- An immutable key-value pair, used to store metadata for map elements.
- TagCollection
-
A collection of
Tagobjects that provides a convenient way to access tags by key. - Tile
- Represents a rectangular map tile in a hierarchical tiling scheme.
- Way
- An immutable container for all data associated with a single way or area (closed way).
- Waypath
-
A mutable container for a single path of a way, which is a list of
ILatLongcoordinates. - ZoomlevelRange
- An immutable range of zoom levels, defined by a minimum and maximum value.