In ArcGIS 10.1 (ArcView/Basic) how would I go about transferring vertex Z-values from one polyline layer to another geometrically similar layer? Unavoidably for now, In ArcGIS 10.1 (ArcView/Basic) I have need fairly regularly to export Z-enabled fGDB feature classes to shapefiles, after which the shapefiles are attributed or edited and returned to me for re-import. Usually all is well, but occasionally the Z-values are inexplicably dropped during export to shape. Too often, we don't realize that the Z's are missing until after a whole lot of intensive attribution has been accomplished on the exported feature class. Then, I have the problem that the original fGDB feature class has the Z-values and the painstakingly attributed one has none.
Now, if the geometry of the two layers is still identical, then, yes, a spatial join followed by an appropriate string of joins and calculates with some Python block code would do fine. One hitch I run into, though, is that sometimes some topological editing has been done on the exported feature classes, things like splitting lines at vertices, exploding multipart features, etc. Positionally, the same vertices are all there. Just the topology of how they are connected by polylines has changed. Rarely--but sometimes--vertices have been moved or added or new features have been added. So, in effect, what I need is a way to match vertices of two layers and transfer the vertex z-values in one layer to the vertices of the other for those vertices that do match.
I hope I haven't confused anyone, and thanks for the help. I really could use a good solution to this. I should add that my team (though not myself) has FME to use, so that package is a viable tool for a solution. (It does often work magic where ESRI products sit by and watch longingly.)