With Even's help, I compiled latest PROJ with support for the "Bertin
1953" projection (see:
https://lists.osgeo.org/pipermail/gdal-dev/2018-November/049314.html).
To test this in GRASS GIS, I have a global "borders" map (for which I
don't remember where I retrieved it from) named
`TM_WORLD_BORDERS_SIMPL-0.3.shp` along with the relevant files to build
up an ESRI Shapefile.
Reprojecting this map in "Bertin", as a Geopackage:
ogr2ogr -t_srs "+proj=bertin1953 +wktext" -f GPKG TM_WORLD_BORDERS_SIMPL-0.3_Bertin1953.gpkg TM_WORLD_BORDERS_SIMPL-0.3.shp
and importing and cleaning it in GRASS GIS:
grass -c TM_WORLD_BORDERS_SIMPL-0.3_Bertin1953.gpkg /geo/grassdb/global/bertin_1953 -e
v.clean -c input=tm_world_borders_bertin output=tm_world_borders_bertin_clean error=cleaning_errors tool=snap,rmdangle,rmbridge,chbridge,bpol,prune threshold=10 --o
works, with an undesired effect of a huge self-overlapping Antarctica,
before and after cleaning too (see attached images:
tm_world_borders_bertin.png and tm_world_borders_bertin_clean.png).
I guess this is another case of a global borders map problem to
understand.
Another approach is to first import this map (this time the ESRI
Shapefile) in its "native" spatial reference system, then pull it over
to the "Bertin 1953" Location:
grass -c TM_WORLD_BORDERS_SIMPL-0.3.shp /geo/grassdb/global/wgs84/tm_world_borders
v.in.ogr in=TM_WORLD_BORDERS_SIMPL-0.3.shp out=tm_world_borders snap=0.0001 --o -e
Then, some cleaning (blindly following some Wiki instructions):
v.build -e map=tm_world_borders error=build_errors --o
Although the resulting `build_errors` map is not empty, i.e.:
v.info -t build_errors@tm_world_borders
90 degree south is exceeded by 0.032928 cells
360 degree EW extent is exceeded by 1 cells
nodes=69
points=0
lines=0
boundaries=69
centroids=0
areas=69
islands=69
primitives=69
map3d=0
nothing appears on-screen when trying to draw these boundaries.
Next,
v.clean -c input=tm_world_borders output=tm_world_borders_clean error=cleaning_errors tool=snap,rmdangle
,rmbridge,chbridge,bpol,prune threshold=0.001 --o
derives
v.info -t tm_world_borders_clean@tm_world_borders
90 degree south is exceeded by 0.032928 cells
360 degree EW extent is exceeded by 1 cells
nodes=3945
points=0
lines=0
boundaries=4150
centroids=3697
areas=3762
islands=3537
primitives=7847
map3d=0
and
v.info -t cleaning_errors@tm_world_borders
90 degree south is exceeded by 0.032928 cells
360 degree EW extent is exceeded by 1 cells
nodes=5919
points=54
lines=0
boundaries=6029
centroids=0
areas=442
islands=358
primitives=6083
map3d=0
both of which show something, I guess, meaningful. Pulling these over in
the "Bertin" Location:
v.proj location=wgs84 mapset=tm_world_borders dbase=/geo/grassdb/global input=tm_world_borders
v.proj location=wgs84 mapset=tm_world_borders dbase=/geo/grassdb/global input=tm_world_borders_clean
make Antarctica too small (see also attached images: Antarctica.png and
tm_world_borders.png and tm_world_borders_clean.png) which might be ok.
Nikos
(attachments)