Proposal:Miniature Golf features

From OpenStreetMap Wiki
Jump to navigation Jump to search
Miniature Golf features
Proposal status: Proposed (under way)
Proposed by: Gnlpfth12
Draft started: 2025-04-02
RFC start: 2025-05-12


Proposal

This proposal provides additional tagging for miniature golf courses (leisure=miniature_golf and sport=miniature_golf), that is missing so far. That applies both to entire courses and to individual lanes.

Rationale

The two tags mentioned are the only tags related to minigolf in OSM. On the other hand, there is a wide range of regulations given by the World Minigolf Sport foundation that almost every miniature golf course follows. Those include:

  • Different course systems, that could be distinguished, especially when there are multiple of them at the same minigolf area
  • Standards for the lanes, that could be introduced to the OSM-Data

Tagging

Systems

For distuingishing between different minigolf systems I suggest a minigolf=* key with the following values:

This key can be applied to:

  • Minigolf areas as a whole; if multiple systems are present, seperated by a semicolon
  • Individual lanes
  • If a minigolf area includes multiple systems, you can draw areas around the seperate courses and apply the tag

Individual lanes

Individual minigolf lanes have been tagged with leisure=pitch + sport=miniature_golf so far. I don't see any reason not to keep it like that. The only issue is the tracks being rather linear features, while leisure=pitch is not supported on ways.

The number of the lane within the course can be tagged with ref=*.

Lane standards

There are lane standards defined by the WMF, that apply to most minigolf courses:

  • The concrete courses have to include the same 18 standartized lanes in a standartized order
  • The miniature golf courses include 18 out of 30 standartized lanes (exluding variants)
  • The feltgolf courses include 18 out of 32 standartized lanes (exluding variants)

As the lanes are tagged as pitches (leisure=pitch), I would use pitch=* key to specify what kind of pitch those are. As lanes for different systems are partly named the same, this key requires to be used only in combination with minigolf=*.

To map variations permitted by the WMF-rules, I want to introduce the following two subkeys:

  • mirrored=yes/no; several lanes in all systems are permitted in mirrored versions (default value is no)
  • green=yes/no; several lanes in the feltgolf system are permitted without green, the equivalent of golf=green (default value is yes)

As the lanes in the concrete system are supposed to be arranged in a standartized order they are not officially named and could therefore be given by miniature_golf=* + ref=*. However, in case of a deviation it should still be possible to define the lanes properly.

The values are given by the WMF-rules and include the following:

Tag # Permitted variations Picture
miniature_golf=miniature_golf +
pitch=angle 18 mirrored=yes
pitch=bridge 6
pitch=celle_sticks 30
pitch=double_waves 4
pitch=double_wedges 13
pitch=flat_loop 5 mirrored=yes
pitch=half_angle 29 mirrored=yes
pitch=jump_with_net 7 ramp or wedge
pitch=labyrinth 11 mirrored=yes
pitch=lightning 19 mirrored=yes
pitch=loop 2 mirrored=yes
pitch=middle_hill 15
pitch=passages 14
pitch=pipe 9
pitch=plateau 22
pitch=pyramids 1 mirrored=yes
pitch=rhombus 27 three possible shapes
pitch=sloped_circle 21
pitch=sloped_circle_with_kidney 3 mirrored=yes
pitch=sloped_circle_with_v-obstacle 25
pitch=sloped_lane 24
pitch=sticks 10
pitch=straight_lane 20.1
pitch=straight_lane_arrow 20.2
pitch=straight_lane_with_jump 26
pitch=straight_lane_with_target_hill 28
pitch=straight_line_with_target_window 8
pitch=truncated_cones 12 mirrored=yes
pitch=v-obstacle 17 Sticks or triangles; closed or open at the bottom
pitch=volcano 16 Classic volcano or Örkelljunga obstacle
pitch=wedge 23.2
pitch=wedge_with_target_window 23.1
miniature_golf=feltgolf +
pitch=ace_box 23
pitch=angle 10.1 mirrored=yes
pitch=angle_with_detour 11.2 mirrored=yes
pitch=angle_with_passage 10.2
pitch=boxes 3 mirrored=yes
pitch=bridge 18
pitch=channel 16.1
pitch=channel_with_slope 16.2
pitch=cradle 14 green=no
pitch=cross 25
pitch=ditch 21.1
pitch=ditch_with_gate 21.2
pitch=double_gate 2.1
pitch=double_gate_with_slope 2.2
pitch=fishbone 15 mirrored=yes
pitch=gentleman 8 green=no
pitch=german_ledge 4.1
pitch=german_ledge_with_plateau 4.2
pitch=hill_with_gate 19
pitch=horseshoe 28 green=no
pitch=inclined_hill_with_gate 22 mirrored=yes
pitch=lightning 20 mirrored=yes
pitch=mailbox 7.1
pitch=mailbox_with_targets 7.2
pitch=middle_green 31
pitch=middle_hill 12
pitch=middle_hole_in_slope 6.1 green=no
pitch=mollberg-cradle 26
pitch=money_box 6.2 green=no
pitch=optical_illusion 5 mirrored=yes
pitch=orkelljunga 9 green=no
pitch=passage 32
pitch=prolonged_angle 11.1 mirrored=yes
pitch=side_gates 13.1
pitch=side_gates_with_slope 13.2
pitch=side_hole_in_slope 17 mirrored=yes
green=no
pitch=single_gate 1.1
pitch=single_gate_with_slope 1.2
pitch=stationary_scales 30 green=no
pitch=swedish_ledge 24.1
pitch=swedish_ledge_with_plateau 24.2
pitch=twin_gate 29
pitch=vertical_hole_in_slope 27 green=no
miniature_golf=concrete +
pitch=1
pitch=2
pitch=3
pitch=4 mirrored=yes
pitch=5 mirrored=yes
pitch=6
pitch=7
pitch=8
pitch=9 mirrored=yes
pitch=10
pitch=11 mirrored=yes
pitch=12 mirrored=yes
pitch=13 mirrored=yes
pitch=14 mirrored=yes
pitch=15
pitch=16 mirrored=yes
pitch=17
pitch=18

Key-conflict

Since the term miniature golf is referring to a particular lane system, I would suggest to replace it with minigolf in the leisure=* and the sport=* tag. That's the more commonly used and shorter term for any kind of small-sized golf in lanes. I'm very well aware that this change has to be solidly approved and leave it aside for now.

Examples

I used the proposed tags on this feltgolf course (still with miniature_golf though)

Rendering

For Mapnik I suggest the following rendering changes:

  • Rendering the features with values switched from miniature_golf to minigolf
  • Rendering non-closed ways (and maybe even nodes) with leisure=pitch like leisure=track
  • Rendering the ref tag of leisure=pitch if no name=* is present.

Features/Pages affected

External discussions

Comments

Please comment on the discussion page.