Here, I'm trying to bring the z coordinates of these points down so that the top panels will be perfectly flat without distorting the shaft. How do I do this? Scaling down along the normals makes the end of the hilt here thin, and I can't be precise when trying to snap to the edge.
Method 1: Math
- Align the 3D cursor with the center of your column. Set your pivot point to 3D cursor. Turn on Snap to Vertex using Active Element. Select the vertices on one half of your column.
- Rotate the vertices (in your case about the Y-axis, in my case about the X-axis) to align with the top edge of the square. Be sure to note the amount your vertices rotate by in the bottom left corner. Calculate 1/cos(angle of rotation)
Scale the selected vertices with the axis about which you rotated locked (again Y in your case, X in mine. For you, S to scale, Shift+Y to lock Y axis) by the amount calculated. You can copy paste this amount.
Repeat for the other side, and you should be done.
Method 2: Shrinkwrap Modifier
- Select the top edges of the square in the front. Duplicate these edges and separate them from the object.
- Enter edit mode on the new object, which I have named 'Target' in my pictures. Extrude these edges along the Y-Axis (in my examples it is the X-Axis) so that they create the shape of your desired panels.
- In your original object, create a new vertex group and add the vertices you wish move to this group.
- Add a Shrinkwrap modifier to your original object. Set the target to your new object (in my case Target), and select your vertex group. Change the Mode to Project, and check the Z axis and both directions. Apply the modifier, and you should have what you want.
When moving vertices you can lock the movement to an axis. For your example, pressing Z will only allow the selected verts to move on the Z axis.
If you also use snapping you can have the selected verts snap to be aligned with specific vertices (or edges...). If you have locked the movement to a single axis, the selection will not move sideways to snap exactly, it will only align on the one axis. You can leave snapping disabled and hold ⎈ Ctrl to temporarily enable it when you want to use it.
The active selected vertex is the one that gets aligned, this is the one highlighted a different colour (white in the default theme). To the right of your image, you could have the centre vertex as the active one and move on the X axis so that the centre of the upper extrusion aligns to the top point of the bottom section to centre the upper extrusion with the bottom section.