On Thu, Jan 9, 2014 at 1:46 AM, John Ciolek <jcio...@alphatrac.com> wrote: > > On Jan 8, 2014, at 12:35 PM, Markus Metz wrote: > >> On Thu, Dec 12, 2013 at 11:13 PM, John Ciolek <jcio...@alphatrac.com> wrote: >>> I have automatically generated raster data from which I create a contour >>> using r.contour. Sometimes the "feature" to be contoured is not completely >>> contained within the specified region. When this happens, r.contour >>> generates an open contour - basically the beginning line segment point does >>> not equal the ending line segment point. >>> >>> Is there a way to get r.contour to close the contour at the region's border? >> >> No. This is a feature of r.contour because it is impossible to tell >> where a contour would continue if it hits the region's border. >>> >>> If not, is there an easy way to close the contour? >> >> Why do you want to close the contour? > > I am trying to create areas from the contours, where the areas clip to the > set region. > >> >> If you want to convert the contour lines to areas, you might instead >> modify the raster with r.mapcalc, e.g. for contours at every 100 unit >> step >> >> r.mapcalc "surface.classified = int(surface / 100) * 100" >> >> but here a value of 99 would be converted to 0, thus as an alternative >> >> r.mapcalc "surface.classified = int((surface + 50) / 100) * 100" >> >> which would convert e.g. all values >= 50 and < 150 to 100. >> >> After that the classified raster could be converted to vector areas >> with r.to.vect type=area >> >> HTH, >> >> Markus M > > > Wouldn't this create a very blocky contour?
The contours are as blocky as the current region settings, also with r.contour. If you first classify the raster, then convert it to a vector, you can use r.to.vect with the -s flag which creates smoothed lines and boundaries. Then there is v.generalize for further smoothing. > > The contouring is done in batch mode for a real-time modeling system. Right > now I'm thinking it would be easiest to write a program to add one extra > point to the vector if the first and last points do not match. Was hoping > for an easier way. r.contour itself is slow, the r.mapcalc + r.to.vect approach could be faster. Markus M > > John > > > _______________________________________________ grass-user mailing list grass-user@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-user