Skip to content

Commit

Permalink
#42 fix rounding issue
Browse files Browse the repository at this point in the history
  • Loading branch information
roelderickx committed Sep 10, 2023
1 parent 6adeea3 commit 6e7acee
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
4 changes: 2 additions & 2 deletions ogr2osm/osm_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ def __add_node(self, x, y, z, tags, is_way_member):
duplicate_node = self.__nodes[index]
merged_tags = self.translation.merge_tags('node', duplicate_node.tags, tags)
if self.z_value_tagname:
strz = (('%%.%df' % self.significant_digits) % z).strip('0')
strz = (('%%.%df' % self.significant_digits) % z).rstrip('0').rstrip('.')
new_tags = { self.z_value_tagname: strz }
merged_tags = self.translation.merge_tags('node', merged_tags, new_tags)
if merged_tags is not None:
Expand All @@ -119,7 +119,7 @@ def __add_node(self, x, y, z, tags, is_way_member):
else:
merged_tags = tags
if self.z_value_tagname:
strz = (('%%.%df' % self.significant_digits) % z).strip('0')
strz = (('%%.%df' % self.significant_digits) % z).rstrip('0').rstrip('.')
new_tags = { self.z_value_tagname: [ strz ] }
merged_tags = self.translation.merge_tags('node', new_tags, tags)
node = OsmNode(x, y, merged_tags)
Expand Down
14 changes: 8 additions & 6 deletions ogr2osm/osm_geometries.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,11 @@ def add_envelope(self, minx, maxx, miny, maxy):


def to_xml(self, significant_digits):
xmlattrs = { 'minlon':(('%%.%df' % significant_digits) % self.minlon).strip('0'), \
'minlat':(('%%.%df' % significant_digits) % self.minlat).strip('0'), \
'maxlon':(('%%.%df' % significant_digits) % self.maxlon).strip('0'), \
'maxlat':(('%%.%df' % significant_digits) % self.maxlat).strip('0') }
formatting = ('%%.%df' % significant_digits)
xmlattrs = { 'minlon':(formatting % self.minlon).rstrip('0').rstrip('.'), \
'minlat':(formatting % self.minlat).rstrip('0').rstrip('.'), \
'maxlon':(formatting % self.maxlon).rstrip('0').rstrip('.'), \
'maxlat':(formatting % self.maxlat).rstrip('0').rstrip('.') }
xmlobject = etree.Element('bounds', xmlattrs)

return etree.tostring(xmlobject, encoding='unicode')
Expand Down Expand Up @@ -128,10 +129,11 @@ def __init__(self, x, y, tags):

def to_xml(self, attributes, significant_digits, \
suppress_empty_tags, max_tag_length, tag_overflow):
formatting = ('%%.%df' % significant_digits)
xmlattrs = { 'visible':'true', \
'id':('%d' % self.id), \
'lat':(('%%.%df' % significant_digits) % self.y).strip('0'), \
'lon':(('%%.%df' % significant_digits) % self.x).strip('0') }
'lat':(formatting % self.y).rstrip('0').rstrip('.'), \
'lon':(formatting % self.x).rstrip('0').rstrip('.') }
xmlattrs.update(attributes)

xmlobject = etree.Element('node', xmlattrs)
Expand Down

0 comments on commit 6e7acee

Please sign in to comment.