]> mj.ucw.cz Git - leo.git/blobdiff - leo.c
Introduced multiple data sources
[leo.git] / leo.c
diff --git a/leo.c b/leo.c
index dea6cde89a684e6c87e83871add89e09ec6d261a..5d02f680a90c6e84fe69954e5e32bbf73a2df4d7 100644 (file)
--- a/leo.c
+++ b/leo.c
@@ -118,37 +118,9 @@ int main(int argc UNUSED, char **argv)
 
   osm_init();
   styles_init();
-
-  msg(L_INFO, "Parsing OSM");
-  osm_xml_parse(map_xml_input);
-  if (debug_dump_source)
-    {
-      puts("=== Source data ===");
-      osm_dump();
-    }
-  osm_make_multipolygons();
-
-  msg(L_INFO, "Projecting");
-  osm_project(map_projection);
-  if (debug_dump_after_proj)
-    {
-      puts("=== Map after projection ===");
-      osm_dump();
-    }
-
+  map_load_styles();
+  map_load_sources();
   map_set_scale();
-  if (debug_dump_after_scaling)
-    {
-      puts("=== Map after scaling ===");
-      osm_dump();
-    }
-
-  struct css_sheet *ss = css_load(map_style_sheet);
-  if (debug_dump_css)
-    {
-      puts("=== Stylesheet ===");
-      css_dump(ss);
-    }
 
   struct svg *svg = svg_open(map_svg_output);
   if (!map_rotate)
@@ -162,32 +134,9 @@ int main(int argc UNUSED, char **argv)
       svg_set_attr_dimen(svg, "height", page_width);
     }
 
-  struct style_results r;
-  style_init(&r);
   sym_init();
 
-  msg(L_INFO, "Applying stylesheet");
-  for (uns i = OSM_TYPE_NODE; i <= OSM_TYPE_MULTIPOLYGON; i++)
-    CLIST_FOR_EACH(struct osm_object *, o, osm_obj_list[i])
-      {
-       if (debug_dump_styling)
-         {
-           puts("===============================");
-           osm_obj_dump(o);
-         }
-       if (!map_object_visible_p(o))
-         {
-           if (debug_dump_styling)
-             printf("--> invisible\n");
-           continue;
-         }
-       style_begin(&r, o);
-       css_apply(ss, &r);
-       if (debug_dump_styling)
-         style_dump(&r);
-       sym_from_style(o, &r, svg);
-       style_end(&r);
-      }
+  map_apply_styles(svg);
 
   if (map_clip)
     {