diff options
| author | Toby C. Wilkinson <open@tobywilkinson.co.uk> | 2021-12-20 19:22:46 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-20 20:22:46 +0100 |
| commit | 5fe037f86a7ed040893c3406aed8bffebbb722f6 (patch) | |
| tree | e237860503c653a6f404f375deedca18949b1d81 /docs/plot | |
| parent | dad309d7fca5479ce936f320911df2221a78e43c (diff) | |
| download | PROJ-5fe037f86a7ed040893c3406aed8bffebbb722f6.tar.gz PROJ-5fe037f86a7ed040893c3406aed8bffebbb722f6.zip | |
Fix and additional options for Peirce Quincuncial projections (#2978)
This fixes the current forward implementation of Peirce Quincuncial proj to correctly flip/reflect out the southern hemisphere to four triangles, and rotate entire result to a square or diamond. (It there resolves the issues identified with pull request https://github.com/OSGeo/PROJ/pull/2230 , where southern hemisphere was wrongly projected over northern, and reverses the restriction to northern hemisphere introduced there). It also adds additional lateral projection of the hemispheres.
- This PR adds an optional parameter `+type` which allows selection of projection. The `+type=square` and `+type=diamond` types match in principle ESRI's twin implementations of square and diamond PQ projs. The **default** if not specified is `+type=diamond`.
- The previous behaviour restricted to the northern hemisphere can be reproduced using the `+type=nhemisphere`, though this is an edge case only.
- An additional `+type=horizontal` and `+type=vertical` rectangular lateral versions have been added that place each hemisphere side-by-side. This is primarily to allow creation of projections such as Greiger Triptychial, which also require the additional optional params `scrollx` or `scrolly` in order to shift parts of the projection from one side of the map to the other.
- Additional documentation has been added to proj description, including quoting the usual meridian used in common usage of projection, and images showing the different types.
Diffstat (limited to 'docs/plot')
| -rw-r--r-- | docs/plot/plotdefs.json | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/docs/plot/plotdefs.json b/docs/plot/plotdefs.json index 1e9c05ee..a6d70273 100644 --- a/docs/plot/plotdefs.json +++ b/docs/plot/plotdefs.json @@ -1051,13 +1051,46 @@ "type": "poly" }, { - "filename": "peirce_q.png", + "filename": "peirce_q_square.png", "latmax": 90, - "latmin": 0, + "latmin": -90, + "lonmax": 180, + "lonmin": -180, + "name": "peirce_q_square", + "projstring": "+proj=peirce_q +lon_0=25 +type=square", + "res": "low", + "type": "poly" + }, + { + "filename": "peirce_q_diamond.png", + "latmax": 90, + "latmin": -90, "lonmax": 180, "lonmin": -180, "name": "peirce_q", - "projstring": "+proj=peirce_q", + "projstring": "+proj=peirce_q +lon_0=25 +type=diamond", + "res": "low", + "type": "poly" + }, + { + "filename": "peirce_q_horizontal.png", + "latmax": 90, + "latmin": -90, + "lonmax": 180, + "lonmin": -180, + "name": "peirce_q_horizontal", + "projstring": "+proj=peirce_q +lon_0=25 +type=horizontal", + "res": "low", + "type": "line" + }, + { + "filename": "grieger_triptychial.png", + "latmax": 90, + "latmin": -90, + "lonmax": 180, + "lonmin": -180, + "name": "grieger_triptychial", + "projstring": "+proj=pipeline +step +proj=ob_tran +o_proj=peirce_q +o_lat_p=-45 +o_lon_p=45 +type=horizontal +scrollx=-0.25 +step +proj=affine +s11=-1 +s12=0 +s21=0 +s22=-1", "res": "low", "type": "poly" }, |
