From 8bad3fcf85fc309ba0dbcf9185f778b820f4f2f2 Mon Sep 17 00:00:00 2001 From: Philip Sargent Date: Tue, 4 Feb 2025 00:26:53 +0000 Subject: [PATCH] make essentials updates, diagram and links --- .../troggle/gpx_publish_process-small.jpg | Bin 0 -> 33373 bytes handbook/troggle/make-essentialsREADME.txt | 45 ++++++++++++++++-- handbook/troggle/scriptscurrent.html | 32 ++++++++++--- 3 files changed, 66 insertions(+), 11 deletions(-) create mode 100644 handbook/troggle/gpx_publish_process-small.jpg diff --git a/handbook/troggle/gpx_publish_process-small.jpg b/handbook/troggle/gpx_publish_process-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bce400bd3d61bbd09142b84ee4e4e1ff733a03d5 GIT binary patch literal 33373 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
4b=X1#pTg!*iTAcwSO@bsAiSiC3DBO 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 lp(iynQ2EtntksiMioTTq+K5$E6I5sqiQcO

make_essentials.sh

-

In :loser:/gpx/ + +

+
+ + +

Click for enlarged view +
+
+
+

This needs re-writing because the process is highly confusing: see the "documentation" in the diagram on the right. ALSO the 2024 process created a GPX track which was unusable in OSMand (our preferred GPS app) because it put every point into a separate trkseg. +

In :loser:/gpx/ [2024 text]

Makes essentials.gpx - see GPS on expo. This used to require the gpx2survex program (written in OCAML) but now doesn't (since 2023). Get the OCAML file from GitHub https://github.com/mshinwell/gps2survex;

Read the README file in :loser:/gpx/y.

Someone needs to document this and and make_svx.sh properly. - +

    +

    gpx2survex and make_svx.sh

    + [to be re-written in 2025] + +

    In :loser:/gpx/

    Regenerates the surface tracks as survex files from GPS .gpx files. Also requires the gpx2survex program.

    We used to use the OCAML program gpx2survex but we now also have a python equivalent gpx2survex.py which is used by make_svx2.sh This is part of the make_essentials generation process. @@ -113,13 +127,17 @@ Get the OCAML file from GitHub Documented, by man survexport, survexport --help, and in the Survex manual on survexport. - - +

    ogr2ogr

    + If you need to refresh everything from scratch, e.g. if the kataster boundary data shapefile is updated (unlikley), then download GDAL which contains the ogr2ogr2 executable and can convert to gps: + format gpx. The command line to do this is:
    +ogr2ogr -f GPX -nlt MULTILINESTRING -t_srs EPSG:4326 -s_srs EPSG:32633 boundaries.gpx 4_Teilgruppen_UTM_33_N_2021_01.shp -dsco GPX_USE_EXTENSIONS=YES + +

    convert_shx.ml

    -

    Not quite obsolete, but nearly. +

    Obsolete. We do not need this as we use ogr2ogr on the command line to generate the boundaries as a GPX file from the shapefile (.shp) format. This only needs to be done once.

    Unusually, this is in the :loser: repository, in :loser:/fixedpoints/scripts/convert_shx/ -

    We think this turns a shapefile which holds the coordinates of the 1623, 1624 boundaries into GPX. But we have mislaid the shapefile containing this vital data. +

    We think this turns a shapefile which holds the coordinates of the 1623, 1624 boundaries into GPX. But we have mislaid the shapefile containing this vital data. We now have the shapefile again.

    It runs ogr2ogr -f csv -lco GEOMETRY=AS_WKT outputfile inputfile and then extensively post-processes the shapefile output. It is written in OCAML. Therefore it must be Mark Shinwell's responsibility.

    ogr2ogr is a file conversion utility. @@ -127,7 +145,7 @@ It seems to be being run to convert CSV files into something else. The "shx" par shapefile index format.

    We suspect this was part of the production process for originally making essentials.gpx, but we don't need it as we now have the boundary data in other formats.

    - +

svx2qm.py, tablize-qms.pl, find-dead-qms.py,qmreader.pl

See the entire page devoted to the various QM scripts.