This adds a simple `make demo` target that builds the demo with `gcc`. The readme is also updated to mention the make target and give an example of how to run it. The example should make clearer what is to be passed in as the `dbname` parameter; initially I tried `db.zip` and passing in the `out_v1` directory path before realizing that each of the database files is separate and that the full path should be given.
1.7 KiB
ZoneDetect
This is a C library that allows you to find an area a point belongs to using a database file. A typical example would be looking up the country or timezone given a latitude and longitude. The timezone database also contains the country information.
The API should be self-explanatory from zonedetect.h. A small demo is included (demo.c). You can build the demo with make demo and run it like this: ./demo timezone21.bin 35.0715 -82.5216.
The databases are obtained from here and converted to the format used by this library.
Online API
You can test the library using an online API: https://timezone.bertold.org/timezone It takes the following GET parameters:
- lat: Latitude.
- lon: Longitude.
- c: Set to one (c=1) to produce compact JSON.
- s: Set to one (s=1) to get only the timezone.
For example: https://timezone.bertold.org/timezone?lat=51&lon=5
You are free to use this API for any application, but I am not responsible for the quality of service. Please contact me if your application requires reliability.
Demo
An online demo is available here: https://cdn.bertold.org/demo/timezone.html. Simple click anywhere on the map and see the result of the query.