Am creating an app which correctly calculates contours from a DEM file or any height-map given to it. The correctness of the contour holding the most importance, since a person viewing the contours shouldn't end up taking wrong planning decisions and maybe losing their life by the route they choose after looking at the map.
I have already tried using GDAL 1.7 source code, compiled it and added some features of my own to it for some other objective. Now I want to add-to/modify the source to be able to use the contour generation function of GDAL in C++.
But before proceeding, I wanted to know:
1. If GDAL offers the best free contour generation algorithm available or is there any other library which I can link to my code and feed my DEM map to it and receive contour vector lines (or go thru research papers and implement the contour generation algorithm myself in C++)? If GDAL, then why is it the best?
2. A generated contour will basically be points connected with straight lines. Is it more correct for a contour to be depicted with connected straight lines or will it give a more correct result to use a spline to smoothen out the lines?
I won't be interpolating any contours or the DEM because I've read on this website that interpolation leads to incorrect results.