x

virtuelles Raster für Übersichtlichkeit


  1. virtuelles Raster für Übersichtlichkeit · tadeus (Gast) · 05.12.2012 11:55 · [flux]

    Hallo,

    ich möchte ein etwas größeres Gebiet in Ethiopien und Somalia überprüfen und korrigieren. Ich benutze JOSM. Da man bei größeren Sachen öfters den Überblick verliert wäre eine Art virtuelles Raster sehr nützlich, bei dem ich mir notieren kann, welches Gebiet schon bearbeitet wurde. Vergleichbar wie der Tasking Manager von HOT.

    Gibt es eine Möglichkeit sowas zu realisieren?
    Alternativen?

    Danke vorab


    • Re: virtuelles Raster für Übersichtlichkeit · aighes (Gast) · 05.12.2012 12:42 · [flux]

      Ja siehe: http://wiki.openstreetmap.org/wiki/MapCraft

      Du musst im Prinzip in josm die einzelnen Gebiete als geschlossenen Weg ohne Tags eintragen. Dann speicherst du das als osm-Datei ab, meldest dich bei dem Service mit deinem osm-Account an und erstellst den Kuchen. Meine Erfahrung bei der Operation Cowboy in Wyoming hat gezeigt, dass die Kacheln dort etwas groß waren.

      Über die Website kannst du dir dann eine Kachel reservieren und den Bereich über Remote ins josm laden.

      Wenn du es nur als Hintergrund haben möchtest, dann erstellst du einfach nur die Polygone, speicherst sie lokal ab und lädst sie in eine weitere Datenebene zu deinen Daten, die du bearbeiten möchtest. Dann wird das Raster im Hintergrund dargestellt.


    • Re: virtuelles Raster für Übersichtlichkeit · SimonPoole (Gast) · 05.12.2012 13:33 · [flux]

      tadeus wrote:

      Hallo,

      ich möchte ein etwas größeres Gebiet in Ethiopien und Somalia überprüfen und korrigieren. Ich benutze JOSM. Da man bei größeren Sachen öfters den Überblick verliert wäre eine Art virtuelles Raster sehr nützlich, bei dem ich mir notieren kann, welches Gebiet schon bearbeitet wurde. Vergleichbar wie der Tasking Manager von HOT.

      Gibt es eine Möglichkeit sowas zu realisieren?
      Alternativen?

      Du kannst auch problemlos die Taskmanger Instanz auf rebuild.poole.ch verwenden, man kann (ich geb zu ich habs nie versucht) auch private Jobs erstellen.

      Simon


    • Re: virtuelles Raster für Übersichtlichkeit · GeorgFausB (Gast) · 05.12.2012 13:43 · [flux]

      Moin,

      ich benutze einfache Hausmittel:
      In JOSM den Kachelnummern-Download im gewünschten Zoombereich und eine einfache Calc-/Excel-Tabelle, in der ich die bearbeiteten Kacheln markiere.

      Gruß
      Georg



    • Re: virtuelles Raster für Übersichtlichkeit · max333 (Gast) · 03.06.2013 10:31 · [flux]

      Ich habe vor einiger Zeit mal ein Skript für ein Raster gefunden

      Das Shell Skript ist dieses hier:

      #!/bin/sh
      
      out=gridlines.gpx
      echo␣'<?xml␣version="1.0"␣encoding="UTF-8"␣standalone="no"␣?>
      <gpx␣xmlns="http://www.topografix.com/GPX/1/1"␣creator=""␣version="1.1"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.topografix.com/GPX/1/1␣">http://www.topografix.com/GPX/1/1/gpx.xsd">
      <trk><name>Grid␣lines</name>'␣>␣$out
      for␣i␣in␣$(seq␣-80␣80);␣do
      echo␣"<trkseg><trkpt␣lat=\"$i\"␣lon=\"-179\"></trkpt><trkpt␣lat=\"$i\"␣lon=\"180\"></trkpt></trkseg>"␣>>␣$out
      done
      for␣i␣in␣$(seq␣-179␣180);␣do
      echo␣"<trkseg><trkpt␣lat=\"80\"␣lon=\"$i\"></trkpt><trkpt␣lat=\"-80\"␣lon=\"$i\"></trkpt></trkseg>"␣>>␣$out
      done
      echo␣"</trk></gpx>"␣>>␣$out
      

      Die Rasterdatei welche am Ende raus kommt ist diese hier, kann man im JOSM laden: http://pastebin.com/2Mf5ax1P

      Zwei Fragen noch dazu:
      Kann jemand dieses Skript so abändern, dass die Rastergröße nur halb so groß ist?
      Lässt es dieses gpx Format zu, dass man die Quadrate nummeriert, was dann auch in JOSM angezeigt wird?


    • Re: virtuelles Raster für Übersichtlichkeit · Oli-Wan (Gast) · 03.06.2013 10:57 · [flux]

      max333 wrote:

      Kann jemand dieses Skript so abändern, dass die Rastergröße nur halb so groß ist?

      Ersetze `seq -80 80' durch `seq -80 .5 80' und `seq -179 180' durch `seq -179 .5 180'.


    • Re: virtuelles Raster für Übersichtlichkeit · Jimmy_K (Gast) · 03.06.2013 11:01 · [flux]

      EDIT: Eine schönere Lösung wurde schon gepostet...


    • Re: virtuelles Raster für Übersichtlichkeit · max333 (Gast) · 03.06.2013 12:42 · [flux]

      Also wenn ich die beiden Sachen in den Schleifen ersetze, also "for i in $(seq -80 .5 80)"; do), bekomme ich als Ausgabe

      seq:␣zusätzlicher␣Operand␣»80“
      „seq␣--help“␣gibt␣weitere␣Informationen.
      seq:␣zusätzlicher␣Operand␣»180“
      „seq␣--help“␣gibt␣weitere␣Informationen.
      

    • Re: virtuelles Raster für Übersichtlichkeit · Oli-Wan (Gast) · 03.06.2013 12:53 · [flux]

      max333 wrote:

      seq:␣zusätzlicher␣Operand␣»80“
      „seq␣--help“␣gibt␣weitere␣Informationen.
      

      Und was sagt seq --help oder auch seq --version?

      Zum Vergleich:

      $␣seq␣--version
      seq␣(GNU␣coreutils)␣8.14
      Copyright␣(C)␣2011␣Free␣Software␣Foundation,␣Inc.
      License␣GPLv3+:␣GNU␣GPL␣version␣3␣or␣later␣<http://gnu.org/licenses/gpl.html>.
      This␣is␣free␣software:␣you␣are␣free␣to␣change␣and␣redistribute␣it.
      There␣is␣NO␣WARRANTY,␣to␣the␣extent␣permitted␣by␣law.
      
      Written␣by␣Ulrich␣Drepper.
      
      $␣seq␣--help
      Usage:␣seq␣[OPTION]...␣LAST
      or:␣␣seq␣[OPTION]...␣FIRST␣LAST
      or:␣␣seq␣[OPTION]...␣FIRST␣INCREMENT␣LAST
      Print␣numbers␣from␣FIRST␣to␣LAST,␣in␣steps␣of␣INCREMENT.
      
      -f,␣--format=FORMAT␣␣␣␣␣␣use␣printf␣style␣floating-point␣FORMAT
      -s,␣--separator=STRING␣␣␣use␣STRING␣to␣separate␣numbers␣(default:␣\n)
      -w,␣--equal-width␣␣␣␣␣␣␣␣equalize␣width␣by␣padding␣with␣leading␣zeroes
      --help␣␣␣␣␣display␣this␣help␣and␣exit
      --version␣␣output␣version␣information␣and␣exit
      
      If␣FIRST␣or␣INCREMENT␣is␣omitted,␣it␣defaults␣to␣1.␣␣That␣is,␣an
      omitted␣INCREMENT␣defaults␣to␣1␣even␣when␣LAST␣is␣smaller␣than␣FIRST.
      FIRST,␣INCREMENT,␣and␣LAST␣are␣interpreted␣as␣floating␣point␣values.
      INCREMENT␣is␣usually␣positive␣if␣FIRST␣is␣smaller␣than␣LAST,␣and
      INCREMENT␣is␣usually␣negative␣if␣FIRST␣is␣greater␣than␣LAST.
      FORMAT␣must␣be␣suitable␣for␣printing␣one␣argument␣of␣type␣`double';
      it␣defaults␣to␣%.PRECf␣if␣FIRST,␣INCREMENT,␣and␣LAST␣are␣all␣fixed␣point
      decimal␣numbers␣with␣maximum␣precision␣PREC,␣and␣to␣%g␣otherwise.
      
      Report␣seq␣bugs␣to␣bug-coreutils@gnu.org
      GNU␣coreutils␣home␣page:␣<http://www.gnu.org/software/coreutils/>
      General␣help␣using␣GNU␣software:␣<http://www.gnu.org/gethelp/>
      For␣complete␣documentation,␣run:␣info␣coreutils␣'seq␣invocation'
      

      Mit diesem GNU seq 8.14 funktioniert das Skript, wie es soll.

      Edit - um die Sache abzukürzen: http://osmac.bplaced.net/gridlines.gpx


    • Re: virtuelles Raster für Übersichtlichkeit · MKnight (Gast) · 03.06.2013 13:41 · [flux]

      Oli-Wan wrote:

      max333 wrote:

      Kann jemand dieses Skript so abändern, dass die Rastergröße nur halb so groß ist?

      Ersetze `seq -80 80' durch `seq -80 .5 80' und `seq -179 180' durch `seq -179 .5 180'.

      Interessanterweise bekomme ich als Output dann die Koordinaten mit Komma, bspw.:

      ␣␣␣<trkseg><trkpt␣lat="-80,0"␣lon="-179"></trkpt><trkpt␣lat="-80,0"␣lon="180"></trkpt></trkseg>
      

      Hab mir das jetzt in der Ausgabedatei ersetzt, wüsste trotzdem gern, was da schiefläuft.

      Bonus-problem:
      Da ich gern eine noch feinere Unterteilung hätte habe ich jetzt mal versucht, mir anhand des Script ein .de-raster zurechtzufrickeln (damit die Ausgabedatei nicht so riesig wird) und bekomme es nicht hin (josm will es nicht laden)
      Kann mir da jemand unter die Arme greifen?

      Edit: Ah, ich muss wohl noch
      lon=\-179\ etc ersetzen ... gleich wieder da 😉

      Edit2: Ich bekomme es nicht hin...


    • Re: virtuelles Raster für Übersichtlichkeit · max333 (Gast) · 03.06.2013 14:08 · [flux]

      Hab geschafft, aber in php getippt. Mit shell hab ichs nicht hinbekommen. Falls jemand Interesse hat:

      Grid mit 0,5er Schritten und Nummerierung an den Ecken:

      <?php
      $out␣=␣"phpgrid1.gpx";
      $steps␣=␣0.5;␣//(1,␣0.5,␣...)
      
      $buff␣=␣'<?xml␣version="1.0"␣encoding="UTF-8"␣standalone="no"␣?>
      <gpx␣xmlns="http://www.topografix.com/GPX/1/1"␣creator=""␣version="1.1"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.topografix.com/GPX/1/1␣">http://www.topografix.com/GPX/1/1/gpx.xsd">\n';
      for␣($x=-179;␣$x<=180;␣$x=$x+$steps)
      {
      for␣($i=-80;␣$i<=80;␣$i=$i+$steps)
      {
      $buff␣.=␣"<wpt␣lat=\"$i\"␣lon=\"$x\"><name>$i␣$x</name></wpt>\n";
      }
      }
      
      $buff␣.=␣'<trk><name>Grid␣lines</name>\n';
      
      for␣($i=-80;␣$i<=80;␣$i=$i+$steps)
      {
      $buff␣.=␣"<trkseg><trkpt␣lat=\"$i\"␣lon=\"-179\"></trkpt><trkpt␣lat=\"$i\"␣lon=\"180\"></trkpt></trkseg>\n";
      $buff␣.=␣"<wpt␣lat=\"$i\"␣lon=\"90\"><name>$i</name></wpt>\n";
      }
      
      for␣($i=-179;␣$i<=180;␣$i=$i+$steps)
      $buff␣.=␣"<trkseg><trkpt␣lat=\"80\"␣lon=\"$i\"></trkpt><trkpt␣lat=\"-80\"␣lon=\"$i\"></trkpt></trkseg>\n";
      
      $buff␣.=␣"</trk></gpx>";
      
      $buff␣=␣str_replace(",",␣".",␣$buff);
      
      $file␣=␣fopen($out,␣"w");
      fwrite($file,␣$buff);
      fclose($file);
      
      ?>
      

      bzw. dieses hier, wenn man die Quadrate fortlaufend nummeriert haben möchte:

      <?php
      $out␣=␣"phpgrid1.gpx";
      $steps␣=␣0.5;␣//(1,␣0.5,␣...)
      
      $buff␣=␣'<?xml␣version="1.0"␣encoding="UTF-8"␣standalone="no"␣?>
      <gpx␣xmlns="http://www.topografix.com/GPX/1/1"␣creator=""␣version="1.1"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.topografix.com/GPX/1/1␣">http://www.topografix.com/GPX/1/1/gpx.xsd">\n';
      $count=0;
      for␣($i=-80;␣$i<=80;␣$i=$i+$steps)
      {
      for␣($x=-179;␣$x<=180;␣$x=$x+$steps)
      {
      $iz=$i-0.25;
      $xz=$x-0.25;
      $count++;
      $buff␣.=␣"<wpt␣lat=\"$iz\"␣lon=\"$xz\"><name>$count</name></wpt>\n";␣//$i␣$x
      }
      }
      
      $buff␣.=␣'<trk><name>Grid␣lines</name>\n';
      
      for␣($i=-80;␣$i<=80;␣$i=$i+$steps)
      {
      $buff␣.=␣"<trkseg><trkpt␣lat=\"$i\"␣lon=\"-179\"></trkpt><trkpt␣lat=\"$i\"␣lon=\"180\"></trkpt></trkseg>\n";
      $buff␣.=␣"<wpt␣lat=\"$i\"␣lon=\"90\"><name>$i</name></wpt>\n";
      }
      
      for␣($i=-179;␣$i<=180;␣$i=$i+$steps)
      $buff␣.=␣"<trkseg><trkpt␣lat=\"80\"␣lon=\"$i\"></trkpt><trkpt␣lat=\"-80\"␣lon=\"$i\"></trkpt></trkseg>\n";
      
      $buff␣.=␣"</trk></gpx>";
      
      $buff␣=␣str_replace(",",␣".",␣$buff);
      
      $file␣=␣fopen($out,␣"w");
      fwrite($file,␣$buff);
      fclose($file);
      
      ?>
      

    • Re: virtuelles Raster für Übersichtlichkeit · MKnight (Gast) · 04.06.2013 23:20 · [flux]

      Ein GPX (oder das entsprechende .sh) für .de hat keiner ne zielführende Idee für?


    • Re: virtuelles Raster für Übersichtlichkeit · wambacher (Gast) · 04.06.2013 23:33 · [flux]

      MKnight wrote:

      Ein GPX (oder das entsprechende .sh) für .de hat keiner ne zielführende Idee für?

      Um nicht den ganzen Thread durchackern zu müssen: Willst du eigentlich nur ein Gitternetz im Josm haben?

      Hier steht eine weitere Lösung dafür: https://help.openstreetmap.org/question … es-in-josm

      Gruss
      walter

      p.s. wenn ich das für mich bräuchte, würde ich meinen MapServer ein transparentes Grid als WMS erzeugen lassen.


    • Re: virtuelles Raster für Übersichtlichkeit · MKnight (Gast) · 05.06.2013 10:22 · [flux]

      wambacher wrote:

      Um nicht den ganzen Thread durchackern zu müssen: Willst du eigentlich nur ein Gitternetz im Josm haben?

      Hier steht eine weitere Lösung dafür: https://help.openstreetmap.org/question … es-in-josm

      Jein, das ist genau die Lösung, die hier auch im Thread besprochen wird. Mein Problem ist, dass ich nicht weiss, wie ich das Script korrekt umschreibe, dass ich nur das Gitternetz für .de bekomme.


    • Re: virtuelles Raster für Übersichtlichkeit · Oli-Wan (Gast) · 05.06.2013 10:44 · [flux]

      MKnight wrote:

      Mein Problem ist, dass ich nicht weiss, wie ich das Script korrekt umschreibe, dass ich nur das Gitternetz für .de bekomme.

      So?

      #!/bin/sh
      
      out=gridlines.gpx
      echo␣'<?xml␣version="1.0"␣encoding="UTF-8"␣standalone="no"␣?>
      <gpx␣xmlns="http://www.topografix.com/GPX/1/1"␣creator=""␣version="1.1"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.topografix.com/GPX/1/1␣">http://www.topografix.com/GPX/1/1/gpx.xsd">
      <trk><name>Grid␣lines</name>'␣>␣$out
      for␣i␣in␣$(seq␣46␣.5␣56);␣do
      echo␣"<trkseg><trkpt␣lat=\"$i\"␣lon=\"4\"></trkpt><trkpt␣lat=\"$i\"␣lon=\"16\"></trkpt></trkseg>"␣>>␣$out
      done
      for␣i␣in␣$(seq␣4␣.5␣16);␣do
      echo␣"<trkseg><trkpt␣lat=\"46\"␣lon=\"$i\"></trkpt><trkpt␣lat=\"56\"␣lon=\"$i\"></trkpt></trkseg>"␣>>␣$out
      done
      echo␣"</trk></gpx>"␣>>␣$out
      

      http://osmac.bplaced.net/gridlines-de.gpx


    • Re: virtuelles Raster für Übersichtlichkeit · MKnight (Gast) · 05.06.2013 11:11 · [flux]

      Sehr schön, danke!


    • Re: virtuelles Raster für Übersichtlichkeit · mmd (Gast) · 08.06.2013 10:50 · [flux]

      Je nach locale-Setting erzeugt das Script lat/lon-Werte mit Komma statt Punkt als Dezimaltrenner. Von JOSM wird das mit einem "Error: NaN in greatCircleDistance" quittiert. Da fehlt also noch so etwas wie export LC_ALL=C