Tools for computing various statistics related to Geocaching/Opencaching.
 
 
 
Go to file
Tomasz Golinski 1c5f7bfe98 Escape username in CURL requests 2020-08-06 21:53:27 +02:00
geojson Fix installation paths for subfolders 2020-05-24 14:14:57 +02:00
maps Fix installation paths for subfolders 2020-05-24 14:14:57 +02:00
.clang-format
.gitignore
README.md Initial support for reverse-geocoding for Poland - data about powiaty. 2020-04-03 02:23:16 +02:00
api.h Cppcheck: remove get_lat_lon function in Api class and morph it into a constructor of Position class 2020-07-06 17:15:28 +02:00
cache.cpp Increase a bit verbosity in geostat_cli cache list by adding region info 2020-07-17 19:56:58 +02:00
cache.h Cppcheck: remove get_lat_lon function in Api class and morph it into a constructor of Position class 2020-07-06 17:15:28 +02:00
common.cpp Move code for printing out header html to common.h 2020-08-06 21:13:40 +02:00
common.h Move code for printing out header html to common.h 2020-08-06 21:13:40 +02:00
config_user_example.h
debug.cpp Move debug output from cout to cerr not to mess up generated HTML 2020-06-03 00:19:19 +02:00
debug.h
geo.css Add a bit of padding to footer 2020-05-03 23:14:56 +02:00
geodb.cpp
geofriends.cpp Move code for printing out header html to common.h 2020-08-06 21:13:40 +02:00
geostat.cpp Drop unneeded reference to GPX files. 2020-08-06 21:14:10 +02:00
geostat_cli.cpp Initial support for processing owned cache lists 2020-08-01 23:00:50 +02:00
gpx.cpp
gpx.h
heat.cpp Move maps to separate dir in target dir, create separate meson.build for that dir 2020-04-02 22:13:06 +02:00
heat.h
maps.h Add Poland_powiaty map 2020-04-01 02:47:14 +02:00
meson.build Add geofriends tool to compute stats related to interaction of two given users 2020-08-06 16:56:01 +02:00
ocdb.cpp OCdb: get name for found and owned caches, don't get it for not found. 2020-08-05 01:32:32 +02:00
ocdb.h Add function to get owned caches from local db 2020-08-01 22:14:02 +02:00
okapi.cpp Escape username in CURL requests 2020-08-06 21:53:27 +02:00
okapi.h Restructure CURL code. There is no need to initialize CURL handle for each request, it can be reused. 2020-08-06 21:53:13 +02:00
rating-star.png
region.cpp Cppcheck: use more STD algorithms instead of loops 2020-07-06 17:06:59 +02:00
region.h Cppcheck: use more STD algorithms instead of loops 2020-07-06 17:06:59 +02:00

README.md

GEOSTAT

Sample web interface

A sample web interface to play with the tool is available at http://tomaszg.pl/geo/.

Usage

The main tool is called geostat. It is able to access opencaching.pl via OKAPI or from local database dump maintained by geodb. It can also partially read GPX files, e.g. exported from c:geo. It produces various statistics (either as text output with geostat_cli, or in a HTML form with geostat) and renders a heat map of found/not found caches in a selected region. HTML output requires a style sheet. Sample one is included as geo.css.

Usage: geostat [options]
Generate HTML stats from Opencaching data or GPX files.

 * Data sources:
	-o[user]	use Opencaching; if specified user will be a user name used for all OC instances
	-p user		user for opencaching.pl
	-d user		user for opencaching.de
	-u user		user for opencaching.us
	-n user		user for opencaching.nl
	-r user		user for opencaching.ro
	-k user		user for opencaching.uk
	-q		use local SQLite file with dump of OC database
	-i timestamp	start date
	-f timestamp	finish date

 * Output:
	-N		compute stats only for unfound caches (works only with SQLite)
	-Q		exclude quiz caches from unfound caches
	-H file		render a heat map to a file
	-s n		stamp size for a heat map (default = 15)
	-e		use exponential to flatten the heat map
	-t		draw trail instead of heat map
	-m map		chosen map: Poland, Poland_relief, Poland_big, Europe, World or a name of voivodeship (default = Poland)
	-h		display this help screen

There is a helper program geodb which manages local SQLite database. It can initialize the database from full data dump or update it according to changelogs grabbed from OKAPI.

Usage: geodb [-i path] [-uh]
Manage local Opencaching database.
	-i folder	initialize database from dump located in given folder
	-u	update database with changelogs grabbed via OKAPI
	-h	display this help screen

Installation

To compile it requires:

To build the project copy config_user_example.h to config_user.h and fill it out (at least API key is needed). Then run meson build; cd build; ninja. You might need to set CXX variable to point to a correct compiler.

Credits