Results 1 to 7 of 7

Thread: Create elevationpoints along river with automatically assigned z-values

  1. #1

    Default Create elevationpoints along river with automatically assigned z-values

    Trying to create a DEM from elevation contour-lines and want the river-valleys to follow a predetermined path. As such I want to create points along a river-line. This part I am pretty sure I can do. But I also want the points to have z-attributes spanning the two elevation contours it crosses with an equal interval in relation to the length of the line. This part I have no idea how to do.

    Tried making an image explaining what I mean;
    LtTfGDvWhD.png 1mn9AMK0nw.png

    Will want to do this with many rivers and might want hundreds of points so an automated process is required.
    I'm experiences in ArcGIS Pro and ArcMap, as well as QGis and FME so help in any of these programs would be appreciated.

    EDIT: RIP, meant to post this in "How Do I ???"
    Last edited by Repporio; 05-21-2020 at 12:28 PM.

  2. #2
    Administrator waldronate's Avatar
    Join Date
    Mar 2007
    Location
    The High Desert
    Posts
    3,605

    Default

    If you're after a raster image, the interpolation process for your contours should automatically do this (assuming something like thin plate spline interpolation) If the contours don't need to be exact in the final product, a touch of fluvial erosion as a post-process will make it cleaner.

  3. #3
    Administrator Redrobes's Avatar
    Join Date
    Dec 2007
    Location
    England
    Posts
    7,244
    Blog Entries
    8

    Default

    Yeah, I am a little unsure of what you are asking for. Are all of these rivers quite close together such that the contour line passing through a certain height of one river needs to match the next river along at its predetermined height too. Is then the question of how does the contour line look between those two points ? What happens in terrain is arbitrary and determined by the complex mostly randomness of the erosion and fluid flow over it. In a sense, those constraints about the river heights not withstanding, all other points on the contour line are arbitrary.

    What you essentially have are a number of fixed height points on a DEM and need to obtain all of the other ones in between such that it looks realistic. But in order to be realistic the water flow over the DEM would need to make sure that it conforms to the river flow and drainage basin.

    A couple of people where I was one of them have tried in the past to create a realistic DEM where the rivers were nailed to fixed locations in order to create the DEM of Middle Earth. There, the map is well known and not something that one can just move rivers about. At the time we hand drew in the approximate contours such that they conformed to the placement of the rivers and then used some automated process to refine the map into a more realistic terrain based on erosion.

    If you are able to draw in the contours by hand such that they pass through these points then I can give you a method of how to turn that raster bitmap of contours into a greyscle raster of height values. But doing it by hand leaves you with a very coarse map which ideally needs to have some post processing erosion applied to it before it looks any good.

  4. #4
    Guild Apprentice Rwhyte's Avatar
    Join Date
    Apr 2018
    Location
    Central Coast, California
    Posts
    39

    Default

    With ArcGIS available (and if you have the Spatial Analyst or 3D Analyst extension), check out the tool Topo to Raster. That can take the contours as input and create a DEM. And, as a bonus, that tool can also take stream lines and incorporate those into the DEM as well. It doesn’t look like the streams need to have elevation themselves, they’ll be assumed to be locally low, and flowing toward the next contour. That may do it. There’s a bunch of options with that tool, and worth experimenting. Like mentioned above, drawing ‘topographically correct’, and compelling contours will be half the battle.

  5. #5
    Administrator waldronate's Avatar
    Join Date
    Mar 2007
    Location
    The High Desert
    Posts
    3,605

    Default

    Looking at your original images again, I see I misunderstood your problem. You want to add additional constraints at a different altitude resolution in addition to your contours in order to get the effect of having more contours. This sort of extra constraint is also needed for the case where a mountain peak might not be where the interpolator would guess it to be (unless you can just use a tiny contour at the top). The Topo to Raster tool that RWhyte mentions looks like it specifically does this sort of process for river networks.

    A very long time ago, I wrote a very low quality surface tesselator in Wilbur that lets you draw curves at constant altitude and then interpolates between those curves. It also has the ability to set the altitude along certain curves, which can be used to force valleys and rivers to certain locations. The entered points are used to generate a Delaunay triangulation and the those triangles are rasterized. I kept meaning to get a better interpolator than the simple linear one in Wilbur, but I never got around to it because I was using the rough results as input into another process. https://www.cartographersguild.com/s...ad.php?t=29412 (Volume 2) has an example of turning a single rough contours and some ridgelines into a questionable DEM.

  6. #6

    Default

    Quote Originally Posted by Redrobes View Post
    Yeah, I am a little unsure of what you are asking for. Are all of these rivers quite close together such that the contour line passing through a certain height of one river needs to match the next river along at its predetermined height too. Is then the question of how does the contour line look between those two points ? What happens in terrain is arbitrary and determined by the complex mostly randomness of the erosion and fluid flow over it. In a sense, those constraints about the river heights not withstanding, all other points on the contour line are arbitrary.

    What you essentially have are a number of fixed height points on a DEM and need to obtain all of the other ones in between such that it looks realistic. But in order to be realistic the water flow over the DEM would need to make sure that it conforms to the river flow and drainage basin.

    A couple of people where I was one of them have tried in the past to create a realistic DEM where the rivers were nailed to fixed locations in order to create the DEM of Middle Earth. There, the map is well known and not something that one can just move rivers about. At the time we hand drew in the approximate contours such that they conformed to the placement of the rivers and then used some automated process to refine the map into a more realistic terrain based on erosion.

    If you are able to draw in the contours by hand such that they pass through these points then I can give you a method of how to turn that raster bitmap of contours into a greyscle raster of height values. But doing it by hand leaves you with a very coarse map which ideally needs to have some post processing erosion applied to it before it looks any good.
    Yeah, I'm not the best at explaining and I feel that shows. There is a specific "valley" in which two rivers flow along either side of a small crest of hills. No idea how realistic this is as I'm no geologist, but I think it cools so it goes. I am the very opposite a manual artist and am way to lazy to do any kind of manual work (which is probably the reason I love GIS programs and their magical tools) so I avoid hand drawing like it's the plague. ;P Really appreciate the help though.


    Quote Originally Posted by Rwhyte View Post
    With ArcGIS available (and if you have the Spatial Analyst or 3D Analyst extension), check out the tool Topo to Raster. That can take the contours as input and create a DEM. And, as a bonus, that tool can also take stream lines and incorporate those into the DEM as well. It doesn’t look like the streams need to have elevation themselves, they’ll be assumed to be locally low, and flowing toward the next contour. That may do it. There’s a bunch of options with that tool, and worth experimenting. Like mentioned above, drawing ‘topographically correct’, and compelling contours will be half the battle.
    Hadn't really looked into the tool previously but you're right, it does exactly what I was looking for. Thanks for the advice!



    Quote Originally Posted by waldronate View Post
    Looking at your original images again, I see I misunderstood your problem. You want to add additional constraints at a different altitude resolution in addition to your contours in order to get the effect of having more contours. This sort of extra constraint is also needed for the case where a mountain peak might not be where the interpolator would guess it to be (unless you can just use a tiny contour at the top). The Topo to Raster tool that RWhyte mentions looks like it specifically does this sort of process for river networks.
    Precisely. Was afraid it would just form some kind of ridge if I made it the "manual" way I first implied. Luckily, with Topo to Raster I don't have to ever find out.

    Quote Originally Posted by waldronate View Post
    A very long time ago, I wrote a very low quality surface tesselator in Wilbur that lets you draw curves at constant altitude and then interpolates between those curves. It also has the ability to set the altitude along certain curves, which can be used to force valleys and rivers to certain locations. The entered points are used to generate a Delaunay triangulation and the those triangles are rasterized. I kept meaning to get a better interpolator than the simple linear one in Wilbur, but I never got around to it because I was using the rough results as input into another process. https://www.cartographersguild.com/s...ad.php?t=29412 (Volume 2) has an example of turning a single rough contours and some ridgelines into a questionable DEM.
    Yeah Wilbur is a truly magical tool that I plan to apply on the DEM once complete. Have by no means mastered your program but have done some slight testing with it and you can really get some amazing looking terrain when using it right. I'll dive deeper into how I can use the program once I get to that stage.

    So this is what I wanted the area to look like (with some fancy Wilbur generated hill-shade)
    ArcGISPro_bDKbUF0VS3.png

    To the left is how the flow accumulation looked after a normal interpolate-fill-accumulation process, with the watershed in the background. And to the right with the Topo to Raster with the river as a stream input.

    ArcGISPro_qLc6NfysaE.png ArcGISPro_ujttHwdgZJ.png

    So yeah, got it pretty much exactly how I wanted it. Thanks a lot guys. Really appreciate it.

  7. #7
    Guild Apprentice Rwhyte's Avatar
    Join Date
    Apr 2018
    Location
    Central Coast, California
    Posts
    39

    Default

    That’s great, glad it all worked! Always nice when the process becomes simpler. Ideally, it’d be great if there were a free or open source alternative that works the same way. But none as far as I can tell. Nice work on the map, and thanks for posting the result!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •