Vorheriger Monat / Nächster Monat / Index

BBBike Log / 2008-11

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12

2008-11-16 Sun

U-Bahn-Tunnelstrecken

Heute habe ich entdeckt, dass die U5 einen
Tunnelabschnitt zwischen Kaulsdorf-Nord und Wuhletal. Das habe ich zum
Anlass genommen, das bereits geplante Projekt "U-Bahn-Tunnelabschnitte
markieren" durchzuführen. Das erweiterte Projekt würde noch Einschnitt-
und Dammstrecken umfassen, aber das habe ich für später aufgeschoben.

Dabei habe ich gemerkt, dass U-Bahnlinien und Autobahnen die gleiche
Kartensignatur haben. Um das zu verbessern, werden die Autobahnen-Linien
nun mit einer dünnen Linie in der Mitte gezeichnet, so dass man einen
"Zwei-Bahnen"-Effekt hat. Leider gibt es einige Stellen im Programmcode,
die man bei Kartensignaturänderungen anpassen muss: die eigentliche
Funktion zum Zeichnen (generate_plot_functions) und das Zeichnen der
Legende (in BBBikePrint.pm). Da die dünne Linie bei großen Maßstäben
nicht gezeichnet werden darf (die Autobahn-Linien sind dann zu dünn
dafür), muss diese bei einigen Zoomstufen ausgeblendet werden --- dass
muss in change_category_visibility() passieren, aber auch beim initialen
Zeichnen.

[ Permalink ]

2008-11-06 Thu

gpx2bbd

Für große GPX-Dateien (so um die 1.5 MB) war das Skript bei
Verwendung des XML::LibXML-Moduls unheimlich langsam: über zwei Minuten
auf einem Athlon 64 3500+. Mit XML::Twig war es erträglich: etwa 8
Sekunden. Nachdem ich das Skript mit Devel::NYTProf durchlaufen habe,
war der Übeltäter schnell gefunden: ich habe statt

    $xmlnode->find('./@...')

das schnellere

    $xmlnode->getAttribute('...')

verwendet. Danach brauchte das Skript nur noch eine Sekunde, also über
120x so schnell!

[ Permalink ]

2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12

Letztes Update: 2026-06-05 20:13