GNMANALYSE(1)

πŸ’… GNMANALYSE(1) β€” the GDAL girlies' network analysis era

okay bestie, gather round, because this is gnmanalyse from the GDAL family and she is so underrated. she analyses geographical networks. that's the whole vibe. periodt. πŸ¦‹


✨ SYNOPSIS ✨

like, this is literally how you call her:

Usage: gnmanalyse [--help][--help-general][-q][-quiet][--long-usage]
                  [dijkstra <start_gfid> <end_gfid [-alo <NAME>=<VALUE>]...]
                  [kpaths <start_gfid> <end_gfid> <k> [-alo NAME=VALUE]...]
                  [resource [-alo <NAME>=<VALUE>]...]
                  [-ds <ds_name>][-f <ds_format>][-l <layer_name>]
                  [-dsco <NAME>=<VALUE>]... [-lco <NAME>=<VALUE>]...
                  <gnm_name>

🌸 DESCRIPTION 🌸

so basically, the gnmanalyse program gives you analysing capabilities of geographical networks in GDAL. no cap.

the results of calculations come back in an OGRLayer format, or as a console text output if such layer is undefined (like, if nobody told her where to put it, she just yells it at you in the terminal, iconic behaviour honestly).

and the very important part: all calculations are made considering the blocking state of features. every single one. so mind your blocks, bestie. 🚧


the main-character operations πŸ’–

  • --help β€” shows you this help message and then dips. exit.
  • --help-general β€” gives u a brief usage message for the generic GDAL commandline options and exits. it's the "general" help, iykyk.
  • dijkstra <start_gfid> <end_gfid> β€” calculates the best path between two points using the Dijkstra algorithm, going from the start_gfid point to the end_gfid point. classic. legendary. the blueprint.
  • kpaths <start_gfid> <end_gfid> β€” calculates K shortest paths between two points using Yen's algorithm (which internally uses the Dijkstra algorithm for single path calculating, so like, she's doing Dijkstra's thing behind the scenes, we love a supportive queen) from the start_gfid point to the end_gfid point.
  • resource β€” calculates the "resource distribution". the connected components search is performed using breadth-first search, and it starts from that features which are marked by rules as 'EMITTERS'. yes, we're manifesting. ✨

the flags, the options, the moment πŸŽ€

  • -d <ds_name> β€” the name and path of the dataset to save the layer with resulting paths. not need to be existed dataset. (fr fr, she'll make it happen.)
  • -f <ds_format> β€” define this to set the format of newly created dataset.
  • -l <layer_name> β€” the name of the resulting layer. and heads up: if the layer exist already β€” it will be rewritten. so like, don't be surprised bestie, she is not sentimental. πŸ’€
  • <gnm_name> β€” the network to work with (path and name). this is the one you actually have to give her.
  • -dsco <NAME>=<VALUE> β€” dataset creation option (format specific).
  • -lco <NAME>=<VALUE> β€” layer creation option (format specific).
  • -alo <NAME>=<VALUE> β€” algorithm option (format specific).
girl help, the NAME=VALUE situation is everywhere β€” but that's literally just how you pass these. keep the equals sign, keep the vibes. 🫢

πŸ”₯ RETURN STATUS CODE πŸ”₯

the program returns status code 0 in case of success, and non-zero in case of error. and here's the little plot twist: non-blocking errors emitted as warnings are considered as a successful execution. so if she's grumbling at you in warnings, she still considers it a slay. okay?? 😭


πŸ‘‘ AUTHOR πŸ‘‘

Mikhail Gusev <gusevmihs@gmail.com>, Dmitry Baryshnikov <polimax@mail.ru>

absolute legends, respectfully. πŸ™‡β€β™€οΈ


1998-2026


and that's the whole page, bestie. gnmanalyse, from the GDAL girlies, dated Aug 18, 2026 β€” go route some paths, count some k's, distribute some resources. no cap, she ate. πŸ’…βœ¨

πŸ“¦ where this page comes from