Select to view content in your preferred language

Updating z values of all vertices between two vertices

1869
9
Jump to solution
06-10-2022 01:28 AM
MaxNilsson
Occasional Contributor

Hi,

I have a situation where I have a polygon feature with x,y values for all vertices that I want to keep. Now I want to raise some of them and give them z value. However, I don't want to assign the z-value for all vertices manually since there are a lot of them. For example, I want to raise Vertex 1 (+ 1m) and Vertex 5 (+ 4m). Vertex 2,3,4 should then get a z-value assuming there is a straight line between Vertex 1 and 5.

MaxNilsson_1-1654849583025.png

Is there a tool that I can use to achieve this? The only way I have found is to raise all vertices that should have a given z-value, then remove and again add vertices inbetween and move them back to x,y position. This would be an acceptable solution if there weren't so many vertices in my feature.

 

Thanks in advance!

/Max

0 Kudos
1 Solution

Accepted Solutions
Scott_Harris
Esri Regular Contributor

It's currently not possible to interpolate z's in the way you suggest. I think it's similar to this Idea: https://community.esri.com/t5/arcgis-pro-ideas/provide-z-tools-similar-to-route-editing-tools/idi-p/...

View solution in original post

9 Replies
Stefan_Thorn
Frequent Contributor

It is still manual but via Edit > Edit Vertices you can assign a Z value to vertices you have selected.

Select the line or polygon and all vertices will appear (my example also shows parts from a multipart feature)

Next you can select the vertices in the list or in the map. 

Stefan_Thorn_1-1654857074962.png

Click on the Z and you can assign a new Z value to the selected vertices

Stefan_Thorn_0-1654857056196.png

 

0 Kudos
MaxNilsson
Occasional Contributor

That is not a solution to my issue as I don't know what the values are going to be for vertex 2, 3 and 4. Therefore I don't know the z-value to assign the vertices.

0 Kudos
DuncanHornby
MVP Notable Contributor

Its not entirely clear where you are obtaining these Z values, typically it would be from another dataset such as a DEM or TIN. If this is what you are doing then explore the interpolation tools in the 3D Analyst toolbox > 3D Features > Interpolation. Update Feature Z is probably where you want to start?

0 Kudos
Scott_Harris
Esri Regular Contributor

@MaxNilsson 

There's a way to change the z's of selected vertices while maintaining their relative positions, which is part of what you are asking for:

  1. Add the polygon layer to a local scene view.
  2. Open Edit Vertices and select the polygon.
  3. Select the vertices you want to update.
  4. Make sure Stretch Proportionately is turned off on the toolbar (this is required in order to use the H key shortcut in the next step).
  5. Hold the H key while dragging one of the vertices to the desired height (this is the shortcut to change just the height of the selected vertices)

editz.gif

This might help you. I'm not sure.

-Scott

 

MaxNilsson
Occasional Contributor

Hi @Scott_Harris ,

Yes, I'm aware that I can lift the vertices individually. What I'm trying to achieve is lifting only 2 to a desired z-value and then having the rest of the vertices inbetween interpolate to a value representing a line between the two lifted vertices. 

Scott_Harris
Esri Regular Contributor

It's currently not possible to interpolate z's in the way you suggest. I think it's similar to this Idea: https://community.esri.com/t5/arcgis-pro-ideas/provide-z-tools-similar-to-route-editing-tools/idi-p/...

MaxNilsson
Occasional Contributor

Thank you @Scott_Harris . The suggestion about interpolating values in that post is what I am looking for. I don't feel hopeful that it will be added since the post is from 2011, but are there any plans for more options in editing z-values?

0 Kudos
Scott_Harris
Esri Regular Contributor

@MaxNilsson I updated the status of that Idea to "under consideration" to better reflect the current state. We think it's a good idea and we have an issue in our backlog to enhance z editing. Feel free to add your use case to the Idea page, as it helps us to understand what your requirements are.

Thanks!

-Scott

0 Kudos
Stefan_Thorn
Frequent Contributor

I found this old post in which @XanderBakker wrote a python script to interpolate the missing z-values. maybe it can be some help?

https://community.esri.com/t5/data-management-questions/interpolate-missing-z-values-in-polyline/td-...