Michael Jones (mtj++at++babar)
Thu, 4 Nov 1993 15:50:20 -0800
:I have several objects in a scene, each with a different location/orientation
:in 3D space. I wish to zoom up or down each of the objects so that they all
:appear to be roughly the same size no matter how far they are from the viewers
:eyepoint.
It's solved by "similar triangles". Given a distance to an object and
an angular field-of-view, you can compute the angle the object subtends
by looking at it's radius. Using the "corresponding parts of similar
triangles are similar" cranial imprint, you can deduce the necessary
scale factors. Just think of a top view:
+-------------+--------------+
| |
|
The vertical lines represent radii, while the pluses are (left to right)
the eye, a near object, and a far object.
--Be seeing you, mtj++at++sgi.com 415.390.1455 M/S 7L-590 Michael Jones Silicon Graphics, Advanced Graphics Division 2011 N. Shoreline Blvd., Mtn. View, CA 94039-7311
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:50:05 PDT