gravitystorm / openstreetmap-carto

A general-purpose OpenStreetMap mapnik style, in CartoCSS
Other
1.54k stars 823 forks source link

Solar farms (power=plant) with floating=yes are not rendered on top of the water body #4345

Open vincentvd1 opened 3 years ago

vincentvd1 commented 3 years ago

I discovered that solar farms that have the tag floating=yes are not rendered on top of the water. In the case of a name, the name is rendered on top of the water. JOSM didn't give an error when uploading and the tagging also seems to be correct.

Expected behavior

I expected that just like land-based solar farms, a purple area indicating the solar farm would be rendered on top of the water.

Actual behavior

The solar farm is not rendered on top of the water. If the solar farm has a name, the name is rendered on top of the water though.

Links and screenshots illustrating the problem

At this location, you can see the example (with a name and tagged as multipolygon) https://www.openstreetmap.org/#map=17/52.51638/6.69887 (without a name and without a multipolygon) https://www.openstreetmap.org/#map=17/52.75105/5.25830

imagico commented 3 years ago

There are currently 7 features with power=plant and floating=yes. floating=yes is only documented and almost exclusively used on man_made=pier. Hence i don't think this is a request we should follow at this time.

A proper solution for this could depend on #3854.

polarbearing commented 3 years ago

We seem to render power=plant in general in landcover.mss. Does this mean it is painted over with water?

SK53 commented 3 years ago

Tagging for floating solar farms is very preliminary, such tags which do exist are in practice placeholders to capture the information, not necessarily a definitive tag (I think I can say this with some confidence as I have mapped at least 4 floating solar installations). I currently favour using the location key (location=floating) which is now extensively used on solar installations (mainly to pick out rooftop solar), and has the advantage of itself a generic key (earlier iterations of solar tagging used various generator:place and generator:location until it is realised these were redundant & effectively synonyms of location).

Personally I regard the number of current instances as too small to worry about on a general map, and OpenInfraMap does show them. Also I don't know if there are other kinds of floating objects which are similarly obscured which would benefit from a more generic approach, so I also think doing things like #3854 makes sense.

Incidentally, large building mounted solar farms may suffer the same kind of issue, but again are too small in number to be a concern at present.

imagico commented 3 years ago

More examples were shown in #4449.

danieldegroot2 commented 2 years ago

Carto

It is possible to set the solar panel as inner of a multipolygon to render correctly, but since the places where the PV panels installed are still a part of the water body, I think it is not a good practice to do so.

I do not recommend mapping as multipolygon; this is mapping for the renderer as there can only be one landuse per object; this area is a land area with 'landuse' power=plant (currently landuse=industrial is optional) within the water area. (layer may or may not also currently be redundant since name is already rendered above water)

OpenInfraMap

OpenSeaMap \ OpenNauticalChart Renders Off-shore power plants only, as dashed perimeter.

Off-shore power plants could be tagged (subtag value ATYL)

seamark:production_area:category=solar_farm
seamark:type=production_area

SomeoneElse-style rural pedestrian rendering Experimental rendering project

Render[s] marine farms as commercial landuse

Renders off-shore power plants as solid colour which is similar to current rendering on dry land.