tilting a disc in 3d space - need help

339 Views Asked by At

Lets imagine you have a disc like a CD. Then you take that CD and rest it flat on a desk. Now you tilt the disc left to right and forward to back while touching the desk with 1 point on the edge of the disc.

-Assume you know the tilt angle forward to back as (y) and the tilt angle left to right as (x). -You know the radius of the CD disc as R.
-You know the CD disc rotation angle between the radius of the point touching the desk and the point you want to figure the height for.

Edit// Angle y is in the yz plane

Angle x is in the xz plane

The the angle between the radius of the 2 points is in the xy plane

//

Id like to know how to determine the height from the desk to any other point on that disc.

1

There are 1 best solutions below

3
On

It is actually much simpler than that.

You can set up a Cartesian 3D coordinate system where the disc radius is $R$ (diameter $2R$), the desk is at $z = 0$, the center of the disc is at $(0, 0, z_c)$, and the disc touches the desk at $(-x_t, 0, 0)$. This means the disc is always parallel to the $y$ axis (as if you were to hold the disc up in air using a thin wire at $x = 0$, $z = z_c$).

Then, the vertical distance from any point on the disk is a function of the $x$ coordinate of that point, $$\bbox[#ffffef]{z = z_c + x \frac{z_c}{x_t} \tag{1}\label{NA1}}$$

Note that even the disc radius is not a factor. This is because the same applies if you had a triangle, or indeed any planar shape that touches the desk at $(-x_t, 0, 0)$, and is angled in the $xz$ plane only (always parallel to the $y$ axis).

This is easy to transform to any other coordinate system you prefer. However, the OP didn't specify any, so I suppose this should suffice.