Exemplo n.º 1
0
def example__storing_features_in_a_collection(path):
    ft_list = [ft for ft in mwm.Mwm(path)]
    print("List size:", len(ft_list))

    ft_tuple = tuple(ft for ft in mwm.Mwm(path))
    print("Tuple size:", len(ft_tuple))

    def slow():
        ft_with_metadata_list = []
        for ft in mwm.Mwm(path):
            if ft.metadata():
                ft_with_metadata_list.append(ft)
        return ft_with_metadata_list

    ft_with_metadata_list = slow()
    print("Features with metadata:", len(ft_with_metadata_list))
    print("First three are:", ft_with_metadata_list[:3])

    def fast():
        ft_with_metadata_list = []
        for ft in mwm.Mwm(path, False):
            if ft.metadata():
                ft_with_metadata_list.append(ft.parse())
        return ft_with_metadata_list

    tslow = timeit.timeit(slow, number=100)
    tfast = timeit.timeit(fast, number=100)
    print("Slow took {}, fast took {}.".format(tslow, tfast))
Exemplo n.º 2
0
def example__sequential_processing(path):
    long_names = []
    for ft in mwm.Mwm(path):
        if len(ft.readable_name()) > 100:
            long_names.append(ft.readable_name())

    print("Long names:", long_names)
Exemplo n.º 3
0
def example__working_with_features(path):
    it = iter(mwm.Mwm(path))
    ft = it.next()
    print("Feature members are:", dir(ft))

    print("index:", ft.index())
    print(
        "types:",
        ft.types(),
        "redable types:",
        [classif.readable_type(t) for t in ft.types()],
    )
    print("metadata:", ft.metadata())
    print("names:", ft.names())
    print("readable_name:", ft.readable_name())
    print("rank:", ft.rank())
    print("population:", ft.population())
    print("road_number:", ft.road_number())
    print("house_number:", ft.house_number())
    print("postcode:", ft.postcode())
    print("layer:", ft.layer())
    print("geom_type:", ft.geom_type())
    print("center:", ft.center())
    print("geometry:", ft.geometry())
    print("limit_rect:", ft.limit_rect())
    print("__repr__:", ft)

    for ft in it:
        geometry = ft.geometry()
        if ft.geom_type() == mwm.GeomType.area and len(geometry) < 10:
            print("area geometry", geometry)
            break
Exemplo n.º 4
0
    def return_ft(num):
        cnt = 0
        for ft in mwm.Mwm(path):
            if cnt == num:
                return ft

            cnt += 1
Exemplo n.º 5
0
def example__working_with_mwm(path):
    map = mwm.Mwm(path)
    print("Mwm members are:", dir(map))

    print("version:", map.version())
    print("type:", map.type())
    print("bounds:", map.bounds())
    print("sections_info:", map.sections_info())
Exemplo n.º 6
0
    def __init__(self, filename: str, parse: bool = True):
        super().__init__(filename)

        self.mwm = mwm.Mwm(filename, parse)
Exemplo n.º 7
0
 def make_gen(path):
     return (ft for ft in mwm.Mwm(path))
Exemplo n.º 8
0
 def fast():
     ft_with_metadata_list = []
     for ft in mwm.Mwm(path, False):
         if ft.metadata():
             ft_with_metadata_list.append(ft.parse())
     return ft_with_metadata_list
Exemplo n.º 9
0
 def slow():
     ft_with_metadata_list = []
     for ft in mwm.Mwm(path):
         if ft.metadata():
             ft_with_metadata_list.append(ft)
     return ft_with_metadata_list