MCPcopy Create free account
hub / github.com/comaps/comaps / read_drules

Function read_drules

tools/python/stylesheet/drules_merge.py:8–30  ·  view source on GitHub ↗

Parses the structure and extracts elements for lowest and highest zooms for each rule.

(drules)

Source from the content-addressed store, hash-verified

6import drules_struct_pb2
7
8def read_drules(drules):
9 """Parses the structure and extracts elements for lowest and highest zooms
10 for each rule."""
11 result = {}
12
13 for rule in drules.cont:
14 zooms = [None, None]
15 for elem in rule.element:
16 if elem.scale >= 0:
17 if zooms[1] is None or elem.scale > zooms[1].scale:
18 zooms[1] = elem
19 if zooms[0] is None or elem.scale < zooms[0].scale:
20 zooms[0] = elem
21
22 if zooms[0] is not None:
23 name = str(rule.name)
24 if name in result:
25 if result[name][0].scale < zooms[0].scale:
26 zooms[0] = result[name][0]
27 if result[name][1].scale > zooms[1].scale:
28 zooms[1] = result[name][1]
29 result[name] = zooms
30 return result
31
32def zooms_string(z1, z2):
33 """Prints 'zoom N' or 'zooms N-M'."""

Callers 1

drules_merge.pyFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected