Re: Need a Math Lesson

New Message Reply Date view Thread view Subject view Author view

Steve Baker (steve++at++mred.bgm.link.com)
Thu, 5 Dec 96 16:55:34 -0500


> L1 / EyeRange == L2 / Range

This is the correct calculation.
A simple application of similar triangles should convince you that it is correct.

However, this equation is easily misused:

1) Make sure that the ratio of the vertical and horizontal
   field of view angles is appropriate to the vertical and
   horizontal display resolution.

    [ Is the % error in object size the same in both vertical
      and horizontal screen axes? ]

2) This is assuming a simple frustum - not some kind of weird skewed
   one.

3) Also, the term "range" is a little confusing here. This term is
   actually the distance between the object and the plane parallel
   to the screen that goes through the eyepoint. It is not the pythagorean
   distance between the eye and the object (the 'slant range').
   For simplicity, make sure the object is in the center of the screen
   when you measure it!

4) How are you measuring the object's size on the screen? Antialiasing
   blurs the edges of the object by a pixel or so - you can easily
   mis-measure by 3% of the object's size unless it covers a significant
   area of the screen.

5) Do you (or your loader or Vega) have any units conversions (eg feet to
   meters, nautical miles to meters, etc)? If so, double-check the conversion
   factors. Some of the early versions of Performer were shipped with incorrect
   conversion factors in the MultiGen Flight loader.

-----------------------------------------------------------------------------
Jude Anthony <jude++at++p3.enzian.com> said:

> I'm still working on the object size problem.

...<snip>...

> Our new method takes advantage of different ratios. Like this:
> L2
> \===============/ =
> \ / |
> \ / |
> \ / |
> \ L1 / | Range
> \-----/ - |
> \ / | Eye |
> \ / | Range |
> O - =
>
>
>So that L1 is the size of our screen, L2 is the length of the object,
>the EyeRange is the distance from our actual eyepoint to the screen,
>and Range is the distance from our (performer) eyepoint to the
>object. When we try to decide how large an object should be on the
>screen, we calculate:
>
> L1 / EyeRange == L2 / Range
>
>and keep L1 as an unknown.

Steve Baker 817-619-1361 (Vox-Lab)
Hughes Training Inc. 817-619-8776 (Vox-Office/Vox-Mail)
2200 Arlington Downs Road 817-619-4028 (Fax)
Arlington, Texas. TX 76005-6171 Steve++at++MrEd.bgm.link.com (eMail)
http://www.hti.com (external) http://MrEd.bgm.link.com/staff/steve (intranet)
                                http://web2.airmail.net/sjbaker1 (external)

"You can't destroy the Earth - that's where I keep all my stuff!" - The Tick.

=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
            Submissions: info-performer++at++sgi.com
        Admin. requests: info-performer-request++at++sgi.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:54:05 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.