HecGeoRAS - stream centerline topology - error node outside terrain

22608
12
05-31-2012 11:33 AM
Labels (1)
elsasonia
New Contributor
Hello,

I am working with ArcMap10 and HecGeoRas10.

I had a terrain model in .dem, and I converted it in TIN with 3D Analyst Tools / Conversion / From Raster / Raster to TIN.
Then I created the River layer, and I digitized my river.

But when I try to do RAS Geometry / Stream Centerline attributes / topology, I have the error message "River node lies outside the terrain".

I tried a tutorial, and with those file everything works, but as soon as I use my TIN it doesn't work anymore.

I saw someone else posted a similar problemhttp://forums.arcgis.com/threads/46417-Hec-Geo-Ras-River-Node-Lies-Outisde-the-Terrain?highlight=riv...

So I tried what was written:
- My nodes don't seem outside of the TIN. To be sure I even tried with only 1 river made of 2 points in the middle of my TIN, but still the same error message
- I checked the spatial references, and they seem the same: both GCS_North_Amercian_1983
- I also tried to cut my River layer to be sure it doesnt go out of the TIN, by creating a polygone shapefile rectangular a little bit smaller than the TIN, and doing Analysis Tool / Extract / Clip. But event using this new River file it still doesnt work.

So what I think is:
- Maybe I did something wrong when I converted my dem into tin? is there any trick?
- when I check the TIN Properties, in Source I see the Geographic Coordinate System, but no projections as in the TIN of the tutorial. Is it normal or is there something wrong? Can my error come from there?

Or does anybody have an idea of why I have this message and how to fix it?

Thank yo very much if you could help me
Elsa
Tags (2)
0 Kudos
12 Replies
MattMead
New Contributor III
It sounds like something is wrong with your terrain TIN and based on what you said about the source tab not listing a projection I have a couple things for you to try.  When you create a TIN it uses whatever your mxd's projection is for the final product.

So it could be that your mxd doesnt have a projection selected(not likely since you said you checked your river spatial and it listed info).  to double check, right click "layers" in the contents tab, properties->coordinate system tab. (in 9.3.1 at least, cant imagine its too different in 10)

Another possibility is your DEM is in one spatial reference and your mxd is in another and its having issues translating that into your new TIN.  If you have it, try using spatial analyst->extract by mask (using a polygon of the area you want to work with) to clip it down to just the stretch of stream you need and a bit beyond your XS limits.  This will automatically create your dem in the mxd's spatial reference and has the added benefit of minimizing extra data.  Create the TIN like you did before and hopefully that works.

Baring that, try uninstalling and reinstalling Geo-RAS.  No idea if that will help or not, but stranger things have happened.

Something else I thought of, one of my coworkers had an issue with one of the newer geo-ras versions flat out failing to create the 3d files.  I dont remember if this was the error she got or not though.  To get around that, just create a 3d polyline file in your geodatabase and give it the same fields as the original "River" file.  When it comes to setting up the files to run the processes, just select your pre-made River3d file.

Good luck
0 Kudos
AmiraIsmail
New Contributor

I have issue when I want to do the Stream Centerline Attributes/All. Box appear says that error occurred in stream topology tool. I using grid, but most of the comment are tin. can someone please help me on how to do in grid way?

0 Kudos
elsasonia
New Contributor
Thank you for your response.

I tried to check everything you told me, but I didn't find the problem.

So finally, I tried to delete all my files, to reinstall Hec-Geo-Ras and to redo all the procedure in a totally new folder, really paying attention to all the coordinate systems. I created a smaller TIN with the clip as you told me.

It works better, but I still have problems.
I mean, I don't have an error message anymore when i do the topology. It says "River topology successfully created". And the calculation of length for stations also run well, saying ''River Length and station distance successfully calculated'.

But then when I check the attribute table of the River, it is wrong!
My project is a river with 2 tributaries (so my river is divided into 3 reaches). I see correctly the different rivers and reaches in the table. But the columns "FromNode", "ToNode", "ArcLength","FromSta" and "ToSta" don't make sense I think. It is like it doesn't connect the different reaches in the good way.

For example it says from 1 to 2 for the first reach of the river (so normal) but Null in the arclength, fromsta and tosta.
And then it says from 1 to 1 for the first tributary (shouldn't it be form 3 to 2?), but compute some numbers in the 3 columns after.
For the middle reach of my river (after the first tributary) it says from 1 to 3 (instead of from 2 to 4 I guess) and null for the 3 other columns.

I tried with a simpler river (only two reaches and one tributary) but I still have the same problem.
I think I have been careful to snap correctly the end of a reach to the beginning of the next one (but maybe there is a trick?), so I don't understand why it doesn't link them properly.

As I said, there is no error message, but it seems wrong to me doesn't it? And I don't want to go on digitizing all the features to realize when I import it in Hec-Ras that it is all wrong.

Do you have any idea of where it comes from?

Thank you for your help
Elsa
0 Kudos
MattMead
New Contributor III
Oh, you got one of the fun issues.  The to-from node and the arc length you can input yourself so that isnt necessarily a huge deal.  When you connect stream centerlines together you need to make sure that the end vertex of the tributary is snapped to a vertex on the receiving stream.  If you do this, HEC-RAS will automatically input a junction at this location and everything will, theoretically, work out just fine.  For simplicity sake, it is sometimes best to manually break the receiving stream up into above and below tributary sections.  Based on your descriptions, it sounds like you already did all of this though.  Since you mentioned the reaches not making sense in their to-from, verify that all your centerlines have the end vertex at the downstream end.

What happens when you run the cross section processing?  Usually when we run into this issue the reach lengths calculated between the cross sections will be wildly wrong.  If you have not already done so, run the XS stuff and see what happens.

If your distances are wrong then unfortunately you will be starting over again.  You can export your centerlines and your cross sections into non-georas polyline files and bring those files into a new mxd.  Whenever we encounter this error we end up having an mxd and georas setup for each of the stream reaches.  Its tedious and a royal pain, but its the only way we have found to get around the issues.
0 Kudos
elsasonia
New Contributor
Thanks,

I verified the vertex of my centerline, and it looks ok.
I just run the XS process, and it runs well, without error message, but indeed the distance between cross sections seems wrong.

I saw that I can change manually the to-from nodes and the arclength, but will it really work in the following? Will it consider my changes? And also, if I set it manually, the arc length value will be quiet imprecise ! I mean, the point of using Hec-GEO-Ras was to have that computed automatically! Because I don't have those measurement, I would have to make rough estimates.

So I guess I'll have to try your solution. But I didn't get exactly what I'm suppose to do.
You said I should extract the cross sections and stream centerline files, and put them in a new mxd file, but that you have one mxd file for each stream reach.

So should I create one mxd file for each reach of each river (so for me 5 mxd files) or just for each river (so 3 mxd files, considering the main river as one reach).
And then in each mxd file I put the same complete TIN file and the exported cross sections and river shape files, that I edit to keep only the portion I'm interested?

And when you export it into Hec-Ras to make the simulation, can you make one simulation for the entire river with geometry from different files? It will understand how to connect the different reaches?
Sorry for all those questions, but I never run Hec-Ras with Hec-GEO-Ras yet, so I don't know how it works exactly.

Thank you

Elsa
0 Kudos
MattMead
New Contributor III
1)I verified the vertex of my centerline, and it looks ok.
you can make 100% sure they snap by using the snapping options in the editor menu

2)I just run the XS process, and it runs well, without error message, but indeed the distance between cross sections seems wrong.
That is unfortunate.  You basically need to start over at this point because we have spent a lot of time trying to figure out what goes wrong in these instances and never figure anything out.

3)I saw that I can change manually the to-from nodes and the arclength, but will it really work in the following? Will it consider my changes? And also, if I set it manually, the arc length value will be quiet imprecise ! I mean, the point of using Hec-GEO-Ras was to have that computed automatically! Because I don't have those measurement, I would have to make rough estimates.
In the attribute table you can right click on a field and there is an option to calculate geometry.  This will calculate the length(or area if using a polygon) in just about any unit you would ever want.

4)So I guess I'll have to try your solution. But I didn't get exactly what I'm suppose to do.
You said I should extract the cross sections and stream centerline files, and put them in a new mxd file, but that you have one mxd file for each stream reach.

You should export the data so you dont have to 100% start over.  You do not want to get your old georas data in the same mxd as your new so by exporting it to a regular shapefile you avoid that.  During our dealings with this issue we have restarted a number of projects and had them still fail while adding in the old data so it can be directly copy&pasted.  It shouldnt make a difference, but it does.

5) So should I create one mxd file for each reach of each river (so for me 5 mxd files) or just for each river (so 3 mxd files, considering the main river as one reach).
And then in each mxd file I put the same complete TIN file and the exported cross sections and river shape files, that I edit to keep only the portion I'm interested?

For simplicity sake, i would just go with the 3.  This issue only shows up when you have multiple stream centerlines so having a single element for your main stream is not an issue. 

6)And when you export it into Hec-Ras to make the simulation, can you make one simulation for the entire river with geometry from different files? It will understand how to connect the different reaches?

When you import all 3 georas setups into HEC-RAS they will all come in just fine, but will not be connected together.  To connect them, open the main geometric data window in HEC-RAS, zoom to the confluence, then in the edit menu at the top, select "Move Object."  Select the last vertex of your tributart and move it so that it intersects with your main stream.  This will automatically break the main stream and add the junction.

Sorry for all those questions, but I never run Hec-Ras with Hec-GEO-Ras yet, so I don't know how it works exactly.

Its not normally this much of a pain.  Georas is definitely the fastest and most reliable way of getting your data into RAS, but it has its quirks.
0 Kudos
elsasonia
New Contributor
Ok, thank you very much for all your answers.
I'm trying to do that right now.
But of course, I have some more questions 🙂

I am doing my main river. For the banks, should I put only the banks of this main river, so with a hole in the places of the tributaries, and I put the banks of the tributaries only within the file of the tributaries? Or should I digitize also the banks of the tributaries in the main river file?
And when I'll import it in Hec-Ras, I'll connect the River and the tributaries as you said so that Hec-Ras creates a junction. Should I do the same for the banks?

And I have another question, about systems of coordinates.
I realized that the DEM I have at the beginning - from which I create the TIN - doesn't have a projection, the coordinate system is GCS_NA_1983, without projection, and the data are in decimal degree. So of course the TIN is the same then.
And when it calculate the arclength of the River, it gives a result in decimal degree. Even when I use the calculation tool in the attribute table as you told me, it says I can only choose decimal degree, since there is no projection...
So I modified the coordinate system of the whole big layer, adding a projection (NAD_1983_UTM_Zone_18N). So now I can can calculate the length in meters, and it seems the good length. But there is always some warning messages saying that the files (River and banks) are not in the same coordinate system than the data frame.
Is it a problem?
Because I also seen I can project a raster (in data management tool / projection and transformation). So maybe I should first project my dem, then re-create a TIN, and it will work? I'll try.

Elsa
0 Kudos
MattMead
New Contributor III
Create each stream's georas files as if they are the only stream you are working on.  That said, as far as I know it would still work if you had your bank lines broken up.  The bank lines only set the bank stations in the cross sections and are not used for anything else. 

With this in mind, depending on what information you are basing your bank locations on you may need to go back and revise the stationing in the Hec-RAS cross section editor.  If you base the location off of aerial photography you may be off significantly if there is any dense tree cover.  Basing the bank lines off of your topography(DEM, contours, etc) also has its drawbacks because depending on the detail level you may not get the bank crest(ie contour interval not detailed enough, DEM resolution too low, etc) or topography might not show any channel at all if its not detailed enough/hydraulicly corrected/shady survey company with bad LIDAR. Ultimately you need to check both and that can be time consuming not just in Arc, but also going through and checking each cross section to make sure everything is reasonable.  Since you will likely have to revise it anyway, we just copy parallel our stream centerline for the bank lines and use the graphical editor in HEC-RAS to move the bank point to the appropriate location.  Its really fast that way on the Arc side of things and it makes sure you visually check each cross section for reasonableness.

As for your spatial reference questions....thats a good question.  I have never changed the mxd's spatial reference in the middle of a project so honestly I dont know.  I would think that as long as all of your files are a consistent reference it would work regardless of what the mxd's reference was.  Generally speaking though, any files you create using georas will take whatever your mxd's spatial reference is...but since that is now different I dont know if it will create them using the new reference or since it is all stored in a single geodatabase if it will maintain the original.  Georas is the only time I work with geodatabases so maybe someone else can answer this question.  I would be wary of getting things mixed up though.  Sorry I couldnt help.

I would project the DEM and recreate the TIN, but I dont know what time constraints you have.
0 Kudos
elsasonia
New Contributor
Ok, to be sure I restarted a new project with a new projected tin, and I did everything as we said.
And it seems to work!
I will go on more, and I'll come back to you if I have more problems.
But for the moment, it seems ok.

Thank you so much.
0 Kudos