#' Protomaps Basemap Layers Reference #' #' @description #' Reference documentation for the available layers and properties in the #' Protomaps basemap. Use these layer names with \code{\link{pmPaintRule}} #' and \code{\link{pmLabelRule}}, and filter on these properties. #' #' @section Layer Names: #' The following layers are available for styling: #' #' \describe{ #' \item{\code{earth}}{Land polygons} #' \item{\code{water}}{Water polygons, lines, and label points} #' \item{\code{landuse}}{Parks, forests, residential areas, etc.} #' \item{\code{roads}}{Streets, highways, paths} #' \item{\code{buildings}}{Building footprints and addresses} #' \item{\code{places}}{City, town, and region labels} #' \item{\code{pois}}{Points of interest} #' \item{\code{boundaries}}{Administrative boundaries} #' \item{\code{natural}}{Natural features like peaks, forests} #' \item{\code{transit}}{Transit stations and lines} #' } #' #' @section Places Layer Properties: #' Use these in filter expressions like \code{filter = "feature.props.kind === 'locality'"} #' #' \describe{ #' \item{\code{kind}}{Place type: "country", "region", "locality", "macrohood", "neighbourhood"} #' \item{\code{kind_detail}}{Detailed type: "city", "town", "village", "hamlet", "state", "province", "country"} #' \item{\code{name}}{Place name} #' \item{\code{population}}{Population count (integer)} #' \item{\code{population_rank}}{Population rank (integer, higher = larger)} #' \item{\code{min_zoom}}{Minimum zoom level where label appears (lower = more important)} #' \item{\code{capital}}{Capital status (string)} #' \item{\code{wikidata}}{Wikidata ID} #' } #' #' @section Water Layer Properties: #' \describe{ #' \item{\code{kind}}{Water type: "water", "lake", "playa", "ocean", "other"} #' \item{\code{kind_detail}}{Detailed type: "basin", "canal", "ditch", "dock", "drain", "lake", "reservoir", "river", "riverbank", "stream"} #' \item{\code{name}}{Water body name} #' \item{\code{intermittent}}{Boolean, seasonal water} #' \item{\code{reservoir}}{Boolean} #' \item{\code{alkaline}}{Boolean} #' } #' #' @section Roads Layer Properties: #' \describe{ #' \item{\code{kind}}{Road class: "highway", "major_road", "medium_road", "minor_road", "path"} #' \item{\code{kind_detail}}{Detailed type: "motorway", "trunk", "primary", "secondary", "tertiary", "residential", "service", "pedestrian", "footway", "cycleway"} #' \item{\code{ref}}{Road reference number (e.g., "I-80", "US-101")} #' \item{\code{name}}{Street name} #' \item{\code{oneway}}{Boolean} #' \item{\code{is_bridge}}{Boolean} #' \item{\code{is_tunnel}}{Boolean} #' } #' #' @section Landuse Layer Properties: #' \describe{ #' \item{\code{kind}}{Land use type: "park", "forest", "residential", "commercial", "industrial", "aerodrome", "cemetery", "hospital", "school", "stadium", "zoo"} #' \item{\code{sport}}{Sport type for sports facilities} #' } #' #' @section Buildings Layer Properties: #' \describe{ #' \item{\code{kind}}{Building type: "address", "building", "building_part"} #' \item{\code{height}}{Building height in meters} #' \item{\code{min_height}}{Base height for building parts} #' \item{\code{addr_housenumber}}{Street address number} #' } #' #' @section POIs Layer Properties: #' \describe{ #' \item{\code{kind}}{POI type: "cafe", "restaurant", "hospital", "school", "bank", "pharmacy", "hotel", etc.} #' \item{\code{name}}{POI name} #' \item{\code{cuisine}}{Cuisine type for restaurants} #' \item{\code{religion}}{Religion for places of worship} #' } #' #' @section Filter Examples: #' \preformatted{ #' # Major cities only #' filter = "feature.props.kind_detail === 'city'" #' #' # States/provinces #' filter = "feature.props.kind === 'region'" #' #' # Important places (low min_zoom = important) #' filter = "feature.props.min_zoom <= 6" #' #' # Large cities by population rank #' filter = "feature.props.population_rank >= 10" #' #' # Highways only #' filter = "feature.props.kind === 'highway'" #' #' # Parks #' filter = "feature.props.kind === 'park'" #' #' # Combine conditions #' filter = "feature.props.kind_detail === 'city' && feature.props.min_zoom <= 8" #' } #' #' @name protomaps_layers #' @aliases layers #' @seealso \code{\link{pmPaintRule}}, \code{\link{pmLabelRule}} #' @references \url{https://docs.protomaps.com/basemaps/layers} NULL