tandon created this revision.
tandon added reviewers: nienhueser, rahn.
tandon added subscribers: nienhueser, rahn.
tandon set the repository for this revision to rMARBLE Marble.

REVISION SUMMARY
  **Issue**
  For displaying ice shelves Marble needs to parse the following tags 
[('glacier:type','shelf'), ('natural', 'glacier')]. Due to the ('natural', 
'glacier') key-valye pair, the corresponding placemark gets a visual category 
of NaturalGlacier however since the OSM way also contains an additional tag 
('glacier:type','shelf'), the placemark must be styled differently from a plain 
NaturalGlacier. Now an antarctic ice shelf can either be a single 
GeoDataLinearRing or it may be a GeoDataPolygon which consists of several inner 
and outer rings.
  
  Currently when Marble parses an OSM relation which describes a multipolygon, 
it does not store the the tags(key-value) pairs of a relation's component ways. 
During parsing it just determines the visual category of the OSM multipolygon 
relation from its component ways and stores it into the corresponding 
placemark. Also it stores the key-value pairs of the OSM relation but discards 
the key-value pairs of the OSM relation's component ways which effects the 
conditional styling of certain placemarks.
  
  **Problem**
  In spite of modifying the OSM parsing classes so as to handle the above 
issues I am not able to store the key-value pairs of the OSM relation's 
component ways into its OsmPlacemarkData. When I tried to add a few qDebug() 
statements in OsmParser.cpp and OsmRelation.cpp to check any mistake which I 
may be making, these statements are displaying nothing, i.e qDebug() is not 
working when I use it inside OsmParser.cpp or OsmRelation.cpp**
  
  **Current Rendering**
  F157800: shelf.png <https://phabricator.kde.org/F157800>
  
  As you can see in the image below, the GeoDataLinearRings i.e rings which 
don't have any holes are rendered properly, but GeoDataPolygons i.e rings which 
have holes in them are rendered as if they are plain NaturalGlaciers and not 
ice shelves.
  F157801: shelf2.png <https://phabricator.kde.org/F157801>

REPOSITORY
  rMARBLE Marble

REVISION DETAIL
  https://phabricator.kde.org/D1992

AFFECTED FILES
  src/lib/marble/StyleBuilder.cpp
  src/lib/marble/osm/OsmPlacemarkData.cpp
  src/lib/marble/osm/OsmPlacemarkData.h
  src/plugins/runner/osm/OsmParser.cpp
  src/plugins/runner/osm/OsmParser.h
  src/plugins/runner/osm/OsmRelation.cpp
  src/plugins/runner/osm/OsmRelation.h
  tools/shp2osm/polyshp2osm.py

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: tandon, nienhueser, rahn
Cc: rahn, nienhueser, marble-devel
_______________________________________________
Marble-devel mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/marble-devel

Reply via email to