Displaying Soil Horizons in 3D
I am currently trying to create a 3D model of a soil map showing the depths of each map unit.
Each map unit has its own series of soil horizons, and each soil horizon has different soil depths. I want to symbolize the map so that each soil horizons would be displayed as a different colour (so that horizon A for all map units would be red, horizon E as yellow, etc). I'm using ArcScene right now, but I can't seem to find a solution for this.
Mapping Center Answer:
To do this, you’ll need to create features for each soil unit by horizon. That is, you cannot just use the soil unit polygons from something like the SSURGO database with just a 1:M relationship to the horizons table. So, if your soil unit polygon has 3 horizons, you will need to create three separate features—the polygon XY coordinates will be the same, but the Z coordinates will differ.
So, assuming you can get feature classes that contains polygons representing horizons A, B, C, D, and E, when they exist, you can use a tool called Extrude Between to create a set of multi-patch shapes (I’ve never done this 3D part, though I’ve worked with soils data to do traditional 2D mapping and written Python scripts to create the data from the SURGO .MDB file—I just checked with one of the folks on the 3D development team to see what tools existed for this sort of work). That will allow you to treat each soil polygon as having a consistent Z value for all vertexes. If you want to go a bit further and have differing Z values for each vertex in your soil unit polygons, you’ll need to convert the data to TINs before using the Extrude Between tool.
It sounds to me like you should be able to do this; though it may require a lot of effort to get your soils data organized properly. I would experiment with just one soil unit polygon to get started and work out the exact steps in the procedure.
If you would like to post a comment, please login.