CI section

main
Motiejus Jakštys 2021-05-19 22:57:49 +03:00 committed by Motiejus Jakštys
parent 11e20213fd
commit ee1e490ddb
2 changed files with 22 additions and 9 deletions

View File

@ -14,22 +14,24 @@ There will be 2 deliverables from this folder:
It contains a few supporting files, notably: It contains a few supporting files, notably:
- `tests.sql` for synthetic unit tests. - `tests.sql` synthetic unit tests.
- `test-rivers.sql` for tests with real rivers. - `test-rivers.sql` tests with real rivers.
- `Makefile` to glue everything together. - `Makefile` glues everything together.
- `layer2img.py` converts a PostGIS layer to an embeddable image. - `layer2img.py` converts a PostGIS layer to an embeddable image.
- `aggregate-rivers.sql` combines multiple river objects (linestrings or
multilinestrings) to a single one.
- `init.sql` initializes PostGIS database for running the tests. - `init.sql` initializes PostGIS database for running the tests.
- `rivers.sql` is an OpenStreetMap snapshot of select rivers (`Makefile` - `rivers.sql` is an OpenStreetMap snapshot of select rivers (`Makefile`
contains code to update them). contains code to update them).
- ... and a few more files to build the paper. - ... and a few more files necessary to build the paper.
Running it Running
---------- -------
`make help` lists the most interesting commands for humans. As of writing: `make help` lists the select commands for humans. As of writing:
``` ```
$ make help # make help
mj-msc-full.pdf Thesis for publishing mj-msc-full.pdf Thesis for publishing
test Unit tests (fast) test Unit tests (fast)
test-rivers Rivers tests (slow) test-rivers Rivers tests (slow)
@ -59,6 +61,17 @@ published. It needs quite a few dependencies, including a functioning Docker
environment, postgresql client, geopandas, and a pretty complete LaTeX environment, postgresql client, geopandas, and a pretty complete LaTeX
installation. installation.
Contributing
------------
Please reach out to me before contributing. As of writing, this is not ready to
accept broader contributions, TODO:
[ ] CI.
[ ] It has a bug in `wm_self_crossing`: the program crashes with a river in
Lithuania.
[ ] Implementation is not yet complete (stay tuned).
License License
------- -------

2
wm.sql
View File

@ -281,7 +281,7 @@ begin
for i in 1..array_length(bends, 1) loop for i in 1..array_length(bends, 1) loop
continue when abs(wm_inflection_angle(bends[i])) <= pi; continue when abs(wm_inflection_angle(bends[i])) <= pi;
-- sum of inflection angles for this bend is >180, so it may be -- sum of inflection angles for this bend is >180, so it may be
-- self-crossing. now try to find another bend in this line that -- self-crossing. Now try to find another bend in this line that
-- crosses an imaginary line of end-vertices -- crosses an imaginary line of end-vertices
-- Go through each bend in the given line, and see if has a potential to -- Go through each bend in the given line, and see if has a potential to