Zh-hans:Key:area

From OpenStreetMap Wiki
Jump to navigation Jump to search
area
说明
指示一条闭合路径表示的是区域还是仅仅是环状路径。 编辑此说明
组: properties
用于这些元素
不可用于节点可用于路径可用于区域不可用于关系
已记载的值: 3
常用组合
另见
状态:已批准Page for proposal
本页面由 AI 从英文页面翻译而来,内容需要人工复核。

area=yes 标签表示一条 闭合路径 代表一个 区域(多边形);相反,area=no 表示它代表一个线状要素(折线)。

这个标签很少有必要,因为闭合路径的性质可以从其他标签推断出来(例如,natural=water 围出一片水域,而 waterway=* 表示排水沟之类的线状水体要素)。不过,有些标签既可以用于区域也可以用于线状要素;在这些情况下,明确指定 area=* 可以消除闭合路径上的歧义。例如,leisure=track、sport=running、area=no 只是一个环形的跑道。

在闭合路径以外的要素上,该标签没有意义。此外,仅标注了 area=yes 和 name=* 的闭合路径基本上没有意义,尽管它可能被地图意外渲染;请使用 place=* 来表示有名称的要素。区域也可以用一个或多个路径以及 relation:multipolygon 来描述。

概要

以下闭合路径应被视为线状要素:

  • barrier=*,对于较厚的树篱或墙体,或使用区域进行详细标注的情况,请添加 area=yes
  • highway=*,更多细节请参见下方的“公路区域”
  • 此列表可能不完整——请补充其他情况

在大多数其他情况下,闭合路径被假定为区域,包括:

制图者经常在同一条闭合路径上同时使用“面状”和“线状”标签。这可能导致该路径既被用来定义区域,又被用来定义其轮廓处的折线。例如,一条同时标注 landuse=grass 和 barrier=fence 的闭合路径可以被理解为一片被围栏围住的草地。

一个干净的解决方案是为每个要素创建一个元素,即给闭合路径仅标注线状要素标签,并将其加入一个为区域制图的 multipolygon。或者,绘制一条与第一条重叠的重复闭合路径,并仅在这条重复路径上使用面状要素标签。然而,重叠的路径可能难以被后续使用者处理。此外,在围栏将两块土地分隔开的情况下,理想的做法是将其标为两者之间的一条 barrier=fence 路径,而不是让每块土地都有各自的环形路径。

公路区域

行人区域(例如广场和露天集市广场)应使用沿周边一圈的闭合路径构成,并标注 highway=pedestrian 以及 area=yes。

当道路穿过行人区域时,应在广场上叠加一条按通常方式标注的线状路径。这条线状路径应在进出广场处与行人区域共享节点。

在道路的语境下,area=yes 表示某个区域内没有街道线(即该区域内没有给定的方向)。

注意: 对于 highway=* 标签中除 pedestrian 以外的取值在与 area=yes 一起标注时应如何处理,目前还没有明确的共识。

注意: 目前大多数行人路径规划算法不会(正确地)穿过面状要素进行规划,而是倾向于沿边缘绕行或完全不规划(特别是在 multipolygon 的情况下)。不要为了迁就这类路由器而改变你的制图。

软件支持

渲染器

OpenStreetMap Carto 会将 highway=service/pedestrian/footway area=yes 渲染为区域。直到 2020 年 4 月,它也曾将 highway=residential/unclassified/cycleway/path/track area=yes 渲染为区域。[1]

路由器

许多路由器会简单地沿 highway=* area=yes 区域的周边绕行,或沿着任何模拟行人或车辆穿过该区域的虚拟 highway=* 路径规划路线。

AccessMap、OpenTripPlanner 和 MOTIS Per Pedes Routing 会通过计算区域上的可见性图来返回穿过公路区域的最优最短路线。[2][3] 可见性图的计算可能非常耗费资源,因此许多 OpenTripPlanner 部署都将其禁用。Routago(已停运)也曾支持穿越区域的路径规划。截至 2026 年 8 月,OSRM 和 Valhalla 也支持穿越行人区域进行路径规划。[4]

提案

参见