|
|
| GeoCommunity Mailing List |
| |
| Mailing List Archives |
| Subject: | GISList: SUM: Transfer of elevation attributes to sub-basins |
| Date: |
04/03/2003 03:35:01 PM |
| From: |
David Crosby |
|
|
Hi All,
Thanks to all for the response to my query about transferring elevation attributes to drainage sub-basin boundaries that I have. Most responses centred around using points on the basin boundary to drill through to the underlying TIN and getting the elevation. All great ideas, and all would have worked.
I ended up using an Avenue script from the ESRI site called "Elevation tools for points, lines, and polygons". This slick application calculates the highest and lowest points of features, areas, volumes, and much more.
Responses and original query are posted below. Thanks again.
Response 1:
If you've got the subbasins as an ArcInfo coverage format, then you can use the built-in topology. Each coverage has of course both an arc feature class and a polygon feature class. The arcs have a LeftPoly and a Rightpoly. Before you do your intersect with the points, join the polygon attribute table to the arc attribute table using the left and right poly fields and the poly# field using the advanced option to keep only matching records. Between the two resulting tables, you've got two records for each shared arc and only one record for each non-shared arc. Export the joined tables and alias the leftpoly or rightpoly field with simply "polyNum" to help keep straight which is which. From there, you can intersect the two arc feature classes with the elevation points, then append the results together and select the highest elevation for each "polyNum".
Response 2:
Turn the sub-basins into simple polygons or linestrings (not coverages) and drape them over the TIN. Then write a simple script to traverse the coordinates of each sub-basin, searching for the max Z value. Could all be done in ArcView/Avenue pretty easily if you have 3D Analyst.
Response 3:
One way that seems prettystraightforward would be to sample the TIN along the polyline of the sub-basin polygon at a fixed interval and record the highest elevation you encounter in the PAT of the sub-basin coverage. Writing this script in Avenue is not difficult, but I think you'd need 3dAnalyst to sample the TIN (use the aTIN.Elevation request). Use the aPolyline.Along request to generate PTs along the polyline. This technique won't necessarily get the highest elevation, but it should be sufficiently close if you sample at a small enough interval along the polyline.
Original Query:
I have two layers - elevation contours (actually elevation > 'bands') and contiguous drainage > sub-basins, both polygon coverages. I also have a TIN and a DEM > of the study area. I would like to > determine the highest elevation that occurs on the boundary of > each sub-basin. > > My idea to do this would be something like to convert both > coverages to lines, and transfer the > polygon attributes to the lines. Then intersect the two > coverages together, and take the resulting > node with the highest elevation from each unique sub-basin to > determine the elevation. One problem > I see with this though is that since the basins are contiguous > and share boundaries, the sub-basin > lines will not have a unique sub-basin ID to work with. > > Question is, does anyone have any suggestions on how to handle > this problem, a good methodology for > doing it, or any code to share that could get me started? I have > the ESRI suite of products > available to work with.
To unsubscribe, write to gislist-unsubscribe@geocomm.com ________________________________________________________________________ GeoCommunity GeoBids - less than $1 per day! Get Access to the latest GIS & Geospatial Industry RFPs and bids http://www.geobids.com
Online Archive of GISList (and numerous others) available at: http://spatialnews.geocomm.com/community/lists/
Setup a GeoCommunity Account and have access to the GISDataDepot DRG & DOQQ Catalog http://www.geocomm.com/login.php
|
|

Sponsored by:

For information regarding advertising rates Click Here!
|