
^ Another unusual re-projection: Earth Cassini 256x512=131k, 28% land, Classic, WrapX+Y (zipped scenario file attached, Freeciv 2.6.x format.)
The process of re-projecting the terrain and river layers caused the usual disconnections in rivers, new land-connection that shouldn't be, etc. For the Solv'ev projection, I converted the re-projected river layer to X,Y coordinates and replotted with an automated process (which fixes diagonal-only river connections.) For this Cassini re-projection, I instead converted the resulting river layer image bitmap directly to a new river layer as text without re-plotting by X,Y coordinates. After looking at both, I think that the re-plotting by X,Y method is better. The rivers in North America in the Cassini version are somewhat unrecognizable (which may be in-part due to the strange orientation of the map.)
I like the look of this Cassini version better than the Solov'ev re-projection. The Cassini seems less distorted, although it also seems a bit more disorienting when trying to move around on the map in Freeciv due to the orientation I selected (160, -90, 360 in GProjector.)
EDIT: I decided to run through the whole process again, but with slightly different initial conversion of the GEBCO Latest 2 color image. I created an alternate conversion script which handles color ranges somewhat differently. This time the converted topo/bathy image features more shallow oceans, fewer mountains, and more hills. I already had the GEBCO image saved as 512x256 reduced using Graphic Converter with Nearest Neighbor interpolation, and also a copy reduced using "No Interpolation". The alternate script reduced the total color combinations within the images, then converted to Freeciv tile types. The next step of the process merged the two converted images so that any pixel that is land in either image is land in the merged image. I also had the land merge script give preference to shallow ocean over deep ocean (if shallow ocean in one image and deep in the other image, it uses shallow.)

^ GEBCO Latest 2 color image resized to 512x256 pixels using "Nearest Neighbor"

^ GEBCO Latest 2 color image resized to 512x256 pixels using "No Interpolation".

^ Pixel differences between the two different resize interpolation methods.

^ The land-merged image with r,g, and b values reduced to a midrange value within each of 8 ranges. 256 possible values, divided by 8 ranges = 32 values per range. First range is 0-31 which is 32 values. So any r,g or b value within 0 to 31, would be changed to a midpoint value for the range, which is 16. This de-fuzzes the image by decreasing the total color combinations used. The original GEBCO Latest 2 color image has 1,378 color combinations. After constraining the ranges and reducing to 512x256, it's 48 which is much easier to convert to Freeciv's 14 terrain tile letters.

^ The GEBCO elevation+ocean depths (topographical+bathymetric) only image after constraining the ranges to midpoint values, it is trivial to convert to Freeciv colors and/or tile letters.
Code: Select all
elif [ ${b} -gt ${r} -a ${b} -gt ${g} ] ; then # Blue dominant
if [ ${g} -le 96 ] ; then
r=000 g=033 b=129 chr=":" # deep ocean
elif [ ${g} -ge 97 ] ; then
r=0 g=46 b=137 chr=" " # shallow ocean
fi
^ Example code for converting the constrained blue dominant RGB values which are -all- ocean in the GEBCO Latest 2 image color scheme. It's very easy to shift the line between deep and shallow ocean to get more of either.

^ After running through the rest of the process steps, the new world image.
Next, I re-projected the image of the terrain layer, and also the river layer (as a bitmap), in GProjector using "Equirectangular Oblique" centered at 0 longitude, 70 north latitude, 180 height.
I converted the re-projected river layer bitmap to x,y coordinates for each pixel, then re-plotted the river layer using a script which fixes diagonal-only river connections. The Nile came out well, but some rivers are still broken/disconnected. It's still much better than resizing the river layer bitmap as an image.

^ Re-projected river layer as bitmap from GProjector at 8192x4096.

^ Resized bitmap to 512x256 is awful to the point of being unusable.
Converting black pixels from the 8192x4096 image to x,y coordinates, then re-plotting river tiles works much better. In this case, each x or y value was divided by 16 to plot on the smaller 512x256 map since the original 8192x4096 image was 16 times the size.

^ Terrain layer image of the attached scenario (Earth Plate Caree Equirectangular Oblique) file using the new image with more shallow ocean and hills.