Rotate 3D to specific z coord

(Kalunga Br) #1

Hi, I am pretty new to Rhino 3D drawing, so I have what may be a rather simple problem.
I need to relocate a triangle, having its vertices placed at specific Z coordinates (e.g. z=5.1m), but without changing the edges lengths. It doesn’t matter at this point what will happen to XY. I tried Rotate 3D but couldn’t position the vertices at my target Zs precisely. Is there a better way to solve this problem?


hi Kalunga, my imagination is currently a little weak to unriddle this without an image or a file… (the flue is hitting me hard). without cracking my head further to pieces maybe you can quickly make one from this situation or throw an abstracted file in.

my first guess would be to use smarttrack if you have dots on the exact coordinates, you can then use Orient3Pt to align it but its just wild guessing for now.

(Chris Kuether ) #3

Simply select all, issue command ‘move’. When prompted, enter 0 for where to move from, at where to move to enter 0, 0, Zcoordyouwant.

(Kalunga Br) #4

Hi RichardZ, thanks for your interest. I need to transform the triangle by entering the 3 vertices Z coord alone (z coords are different for each vertice). I don’t have the destination’s XYs, and I need to keep edges lengths. In fact, my goal is to retrieve the XYs once the triangle is relocated to given Zs, for referencing an underwater photogrammetry model. The att print shows the original black triangle and the yellow one was transformed using Rotate 3D, but I can’t get the vertices to precise Zs.

(Kalunga Br) #5

Hi Chris, thanks for you reply. In this case I suspect I would have it changing the edges length, right? But I don’t want it to change the edges lengths after all… Furthermore, the Zs I need to move to are different for each of the 3 vertices.

(Pascal Golay) #6

Hello - Orient3Pt should do this. (Vertex OSnap)


(Kalunga Br) #7

Hi Pascal. My problem with Orient 3pt is that I don’t have the destination XYZs (only Zs). In the att picture, the yellow triangle is not my " destination", just shows the kind of transformation I want (translation to specific Zs, no change in edges length). But using Rotate 3D I can’t get the vertices to pin point Zs.

(Pascal Golay) #8

Hello - what I’d do is set the CPlane to the required Z,(CPlane > Elevelation) then start Orient3Pt. Snap to the vertices for the first three points and then turn on Project in OSnaps and snap the same three vertices in the same order.
@kalunga_br -


(Kalunga Br) #9

In Rhino can I enter something like @x,y,-5.1, for example, to have a entity going to an specific z, but letting XY flexible? Or, in other words, 3D move a vertex without changing the triangle edges length?

(David Cockey) #11

Orient3Pt will do that. Note that in general only one vertex may be aligned vertically with the original triangle, and it will be the one you use as Point 1. That is a result of preserving object size and shape.

(Kalunga Br) #12

I will work on this a bit more David and let you guys know. I see a series of step by steps tutorials out there for Rhino. Is there one in particular you would recommend for a beginner but with some mapping/GIS background? I know it is a different mindset… but I reckon I need to grasp the basics of digital 3d drawing before going much further.

(David Cockey) #13

Can you upload a simple .3dm file with a triangle and let us know the z value(s) you want the vertices to be located at? If so I should be able to provide a simple step-by-step procedure for moving the triangle without changing it’s size or shape with the vertices at the desired value(s).

(Pascal Golay) #14

Hello - take a look at the clip linked in my post above - does that cover what you need to do?


(Kalunga Br) #15

Hi David, I would very much appreciate it. Here it is the .3dm file. I wrote on the triangle corners the depths (Zs) I need to have them located at.
Thanks a lot for your time!
Transform (5.9 KB)

(Kalunga Br) #16

Dear Pascal, tks for the clip. However I need the 3 vertices positioned at different Zs.


Well, the only way I know how do do this without distorting the triangle is to use some construction geometry and two successive 3D rotations. Below is a step-by step… Let me know if it’s not clear.
(The trick I use for creating the intersections in the file is to make a small plane at the correct Z height and intersect it with the circle to create a point.)

Transform TRI_construction.3dm (81.8 KB)


(David Cockey) #18

Mitch’s method looks good to me.