Dividing a line by Width???

806
5
04-19-2014 09:41 AM
MarcelKahn
New Contributor
Whoever knows how to do this would be saving my life. For those of you who know about the L.A river, almost 80% of it is
cemented, while certain areas are being rehabilitated and cement is being removed. I have  a shapefile of the Los Angeles River andcreated a new field called "Cement" in the attributes table. I selected the
areas with cement and gave them a "1" in the attributes table while areas without cement are "0's". The problem I have is figuring out how to select areas on the river shapefile that have cement on the
sides and no cement in the middle.
Also, there are areas with grouted rip rap lining the sides of the river while having no cement in the middle. Does anyone know the best way to do this?

Thank you!!!!

*This is for ArcMap 10.2
Tags (2)
0 Kudos
5 Replies
RichardFairhurst
MVP Honored Contributor
Whoever knows how to do this would be saving my life. For those of you who know about the L.A river, almost 80% of it is
cemented, while certain areas are being rehabilitated and cement is being removed. I have  a shapefile of the Los Angeles River andcreated a new field called "Cement" in the attributes table. I selected the
areas with cement and gave them a "1" in the attributes table while areas without cement are "0's". The problem I have is figuring out how to select areas on the river shapefile that have cement on the
sides and no cement in the middle.
Also, there are areas with grouted rip rap lining the sides of the river while having no cement in the middle. Does anyone know the best way to do this?

Thank you!!!!

*This is for ArcMap 10.2


Your approach depends in part on what you intend to use this information to show in the future and how important having finer grades of classification will be to what you present.  Of course for real engineering you have to draw out the entire layout of the channel design in CAD to get a clear cost estimate.  GIS usually does not go that far and gives more of a quick and dirty way of classifying features for extremely rough preliminary cost estimates and overview analysis.

Just keep in mind that a low grade classification system cannot be turned into a fine grade classification system on the fly, but a fine grained classifications system can be turned into a low grade classification system on the fly by grouping values together in different ways when the distinctions are unimportant.

One approach is to convert the shapefile to a geodatabase feature class and add a coded value domain to the field.  You could then add the value of 2 and 3 and assign descriptions to the values like: 0 - No Cement; 1 - All Cement; 2 - Cement Sides only; 3 - Rip Rap Sides only.  However, this results in the classes being in a pretty arbitrary order.

If I had not committed substantial design work in maps, ect. to the values I had created, I would actually recalculate all of the 1s to 9s if I thought I would have more intermediate categories between a natural drainage course and a fully cemented channel.  Then after a more careful consideration of all the levels of classifications I wanted to include I would grade up from most natural to least natural in the domain.  Something like:

0 - No Cement; 2 - Rip Rap Sides only; 7 - Cement Sides only; 9 - All Cement

This would leave room for something like 4 - One Side Rip Rap/One Side Cement or other finer graded categories.  Then selection is as easy as "Cement" < 5 for mostly natural/rip rap to Cement >= 5 for mostly cemented.  Selection can also be accomplished with SQL like "Cement" IN (1,3,4,6) if those 4 classifications were somehow related and you want to create a filter to show them or exclude them.

I usually include the number in the domain name descriptions for graded sorting as opposed to alphabetical sorting in spreadsheets and helping me quickly access the underlying coded values I need to use for field calculations.  I can always alter the names in a legend easily enough to remove the numbers.

You may also want to create another double field for percent of cement (or percent natural) and apply values from 0 to 100 or 0 to 1.  But again, it all depends on what you intend to use this information to present on your maps.

Unfortunately, there is no easy way to upgrade a low grade classification system to a fine grade classification system without reexamining the field data or design data for those distinctions and manually correcting it.  So think it through so you don't need to do it a third time later to add another class.
0 Kudos
RichardFairhurst
MVP Honored Contributor
Consider using Linear Referencing also.  You would need to represent your channel as a line as opposed to a polygon, but the advantage is that LR allows you to break each attribute into a separate table and then combine them later.  This means you can focus on the break points for only one attribute at a time without having to insert those break points into any other attributes during the classification process.  Then after all break points are assigned you can combine the attributes to create hybrid classes with the LR toolset.  You can also create left and right hand attributes and offset those to the side at varying distances with a side offset value.

I have designed a tool in .Net that can split LR events the same way you split normal lines with a mouse click.  It makes breaking up the LR attributes fairly easy without tracking a lot of numbers.  (I hardcoded it to a specific event table, but the core code could be adapted to generalize it for a wider array of LR event tables)

LR offers another advantage in that its measures are a natural stationing approach for linear features, similar to creating stations in CAD designs,  The measure allow you to sort your linear attribute event tables according to the relative positions of each attribute along the channel without having to use a map.  In other words the measures let you correctly chain the events together so it is easy to determine if they are upstream or downstream of each other and determine how far apart they are from each other along the channel course.
0 Kudos
MarcelKahn
New Contributor
"Your approach depends in part on what you intend to use this information to show in the future"

I just need to inform viewers that areas on the L.A river shapefile are either cemented, not cemented, or a mix of both. Is there any way I can do this and only use 1's and 0's?
0 Kudos
RichardFairhurst
MVP Honored Contributor
"Your approach depends in part on what you intend to use this information to show in the future"

I just need to inform viewers that areas on the L.A river shapefile are either cemented, not cemented, or a mix of both. Is there any way I can do this and only use 1's and 0's?


No, not without creating more than one field with each field qualifying the others.  You can't use just 0 or 1 to mean False or True but sometimes Maybe without creating utter confusion and uncertainty about what the data means.  It is impossible to make a clear 3 state distinction with just a 2 state distinction.
0 Kudos
MarcelKahn
New Contributor


One approach is to convert the shapefile to a geodatabase feature class and add a coded value domain to the field.  You could then add the value of 2 and 3 and assign descriptions to the values like: 0 - No Cement; 1 - All Cement; 2 - Cement Sides only; 3 - Rip Rap Sides only.  However, this results in the classes being in a pretty arbitrary order.


I'm gonna use coded value domain and assign different values. Thank you for all your help!
0 Kudos