Location relative to parent's origin? For a model I'm working on I need three cubes that are parented to each other to form an expandable column that moves on the Z axis. I've got a much more complex model for a robot but to simplify everything I'm using cubes to test. 



Each tier of cubes is parented to the bigger cube below it. 

I have taken each cube and also set its origin to the center of the top face as seen in the picture above. From this I would expect if I set all of the Z values for the top two cubes that the cubes would all have their top face aligned to each other as such:



This however only works for my the middle cube, but the top cube seems like its offset from the global origin and not its parent origin. In the picture below all of the Z values are set to 0.



And here you can see that all of the cubes are parented to each other:



I don't get what I'm doing wrong as the middle cube offsets properly from its parent cube, but the top one wont offset from the middle cubes origin. I've retried making this 3 times now and every time it ends up the same. 

Here is my testrig blender file if you want to open it up.
https://drive.google.com/file/d/1UIYmEK1Pk0sPhWYnF5bFFau5ZdVZs_2H/view?usp=sharing
I think I found my answer: I had tried applying all transforms but what I really needed to do was apply "All Transforms to Deltas" under the "Object->Apply". I come from Maya and assumed "Apply All Transforms" worked the same as the "Set Transformation values to Zero" function in Maya.