Topographic Data Browser
Initial documentation (before implementing the project) is available here.
Usage instructions are available below.
Dource code's documentation generated using Doxygen is here.
Requirements:
- Modern C++ compiler supporting C++11,
- Make and CMake,
xorg-dev
,- Development version of OpenGL - version 1.2+.
Get sources:
git clone "https://github.com/JMendyk/catchea.git" catchea && cd catchea
# git checkout develop # to build development version (may be unstable)
mkdir build && cd build
cmake -H.. -B. -G "CodeBlocks - Unix Makefiles"
cmake --build . --target catchea --
make install
To utilize multiple cores of processor, parameter -j X
(where X = cores to use) can be added
to improve build speed.
In project's root folder, directory dist
will be created
with redistributable package.
Then download HGT data files for the app using scripts/download_tiles.py
to
res/assets/tiles
directory inside app's folder.
Compiled version of the app is available in releases tab.
When app starts it loads example tile. To load own HGT files select "folder" icon it top-left corner.
You can also load multiple files using Top menu's second option. This modules provides functionality of loading rectangular area from HGT files in provided file.
On the right side of the screen customization of Elevation coloring and Catchment area generation are available.
Elevation coloring lets use color loaded map based on heights of the samples on the map. Two presets - Black & White and Color area available. You can also create custom coloring rules that match your needs.
Catchment area generation finds regions which shared common local minimum. Five algorithm for catchment area generation are available - each of them works in different ways and returns different results to match user requirements.
Additionally, you can click any point on map using Left or Right mouse button - then single catchment area will be generated using provided coordinate as starting point.
Zoom the map view using Ctrl + Mouse Wheel or Page Up/Down buttons. Move around using Arrow Buttons; Mouse Wheel (vertically), Shift + Mouse Wheel (horizontally) or by holding Middle Mouse Button and moving mouse around.
Important Note: Single HGT tile (that is 1201^2 samples representing 1x1 degree excerpt of earths surface) can consume from 20 to 30 MB of memory. Thus loading and operations on large area (such as Poland - 60 tiles) can use up to 1.8 GB. Keep it in mind when loading such big area and while performing operations on them (which will obviously take longer to finish).
This project uses following libraries:
This project includes script to download HGT files from https://dds.cr.usgs.gov and provides limited amount of these files in project's file structure. Read usage and licensing information of these data's authors before using them.
This project uses icons from Material Design Icons's collection. These icons are available under the Apache License Version 2.0.