<?xml version="1.0" encoding="UTF-8"?>
	<rss version="2.0"
		xmlns:content="http://purl.org/rss/1.0/modules/content/"
		xmlns:wfw="http://wellformedweb.org/CommentAPI/"
		xmlns:dc="http://purl.org/dc/elements/1.1/"
		xmlns:atom="http://www.w3.org/2005/Atom"

			>

	<channel>
		<title>Cycling 74  &#187;  Topic: change lens_angle while keeping relative size on screen equal</title>
		<atom:link href="http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/feed" rel="self" type="application/rss+xml" />
		<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/feed</link>
		<description></description>
		<pubDate>Wed, 19 Jun 2013 03:10:15 +0000</pubDate>
		<generator>http://bbpress.org/?v=2.2.4</generator>
		<language></language>

		
														
					
				<item>
					<guid>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-27134</guid>
					<title><![CDATA[change lens_angle while keeping relative size on screen equal]]></title>
					<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-27134</link>
					<pubDate>Sat, 12 Aug 2006 16:39:13 +0000</pubDate>
					<dc:creator>Brecht</dc:creator>

					<description>
						<![CDATA[
						<p>Hello,</p>
<p>I want to change the lens_angle in a 3d scene, but with the objects  <br />
staying the same size, relative to the screen&#8230;<br />
There has to be a simple formula for that, but I can&#8217;t seem to figure  <br />
out the relation between object size and lens_angle.<br />
any clues?</p>
<p>brecht.</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81834</guid>
					<title><![CDATA[Re: change lens_angle while keeping relative size on screen equal]]></title>
					<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81834</link>
					<pubDate>Tue, 22 Aug 2006 02:00:09 +0000</pubDate>
					<dc:creator>jsmitty</dc:creator>

					<description>
						<![CDATA[
						<p>If you want to change the lens angle but keep the relative size on the screen the same, you must move the object closer or farther away.</p>
<p>Using trigonometry, it should be simple to calculate the ratios.</p>
<p>
sin(theta) = Oposite/adjacent</p>
<p>sin(LensAngle) =  ( WidthOfObject/2.0 ) / DistanceFromCamera</p>
<p>sin(LensAngle) * DistanceFromCamera =  ( WidthOfObject/2.0 ) </p>
<p>
sin(LensAngleOld) * DistanceFromCameraOld= ( WidthOfObjectOld/2.0 ) </p>
<p>sin(LensAngleNew)*DistanceFromCameraNew =  ( WidthOfObjectNew/2.0 )</p>
<p>
since we want the object to stay the same size :<br />
WidthOfObjectNew = WidthOfObjectOld</p>
<p>
sin(LensAngleOld) * DistanceFromCameraOld<br />
=<br />
sin(LensAngleNew)*DistanceFromCameraNew </p>
<p>
Now we solve for DistanceFromCameraNew or LensAngleNew.  Since the lensangle and distance from camera are related.  We must solve for one or the other.  </p>
<p>LensAngleNew= arcsin(sin(LensAngleOld) * DistanceFromCameraOld/DistanceFromCameraNew )</p>
<p>DistanceFromCameraNew = DistanceFromCameraOld * sin<br />
(LensAngleOld)/sin(LensAngleNew)</p>
<p>
For example.  If your object is 3 units away from the camera, and your old camera angle was 45.  </p>
<p>Now lets say you want a new camera angle of  90.  <br />
you must move the object to </p>
<p>3*sin(45)/sin(90)<br />
the actual new distance is 2.121</p>
<p>
The easist way of thinking of this is </p>
<p>
The relative distance is sin(oldLensAngle)/sin(NewLensAngle)</p>
<p>
You should double check my math&#8230;</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81835</guid>
					<title><![CDATA[Re: change lens_angle while keeping relative size on screen equal]]></title>
					<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81835</link>
					<pubDate>Wed, 23 Aug 2006 23:18:26 +0000</pubDate>
					<dc:creator>Brecht</dc:creator>

					<description>
						<![CDATA[
						<p>Hm, that doesn&#8217;t seem to work&#8230; implemented the little example you  <br />
gave at the bottom, and the results are different&#8230;<br />
The first numberbox is the distance, 2nd and 3rd the initial and  <br />
changed lens angle.</p>
<p>#P window setfont &#8220;Sans Serif&#8221; 9.;<br />
#P window linecount 1;<br />
#P newex 260 302 76 196617 unpack 0. 0. 0.;<br />
#P newex 260 282 61 196617 pak 0. 0. 0.;<br />
#P flonum 332 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 296 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 260 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 260 347 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P newex 260 323 140 196617 expr $f1* sin($f2)/sin($f3);<br />
#P fasten 6 2 0 2 331 321 395 321;<br />
#P fasten 6 1 0 1 298 321 330 321;<br />
#P connect 6 0 0 0;<br />
#P connect 0 0 1 0;<br />
#P fasten 4 0 5 2 337 277 315 277;<br />
#P fasten 3 0 5 1 301 277 290 277;<br />
#P connect 5 0 6 0;<br />
#P connect 2 0 5 0;<br />
#P window clipboard copycount 7;</p>
<p>On Aug 22, 2006, at 4:00 AM, Jason Schmitt wrote:<br />
><br />
> If you want to change the lens angle but keep the relative size on  <br />
> the screen the same, you must move the object closer or farther away.<br />
><br />
> Using trigonometry, it should be simple to calculate the ratios.<br />
><br />
><br />
> sin(theta) = Oposite/adjacent<br />
><br />
> sin(LensAngle) =  ( WidthOfObject/2.0 ) / DistanceFromCamera<br />
><br />
> sin(LensAngle) * DistanceFromCamera =  ( WidthOfObject/2.0 )<br />
><br />
><br />
> sin(LensAngleOld) * DistanceFromCameraOld= ( WidthOfObjectOld/2.0 )<br />
><br />
> sin(LensAngleNew)*DistanceFromCameraNew =  ( WidthOfObjectNew/2.0 )<br />
><br />
><br />
> since we want the object to stay the same size :<br />
> WidthOfObjectNew = WidthOfObjectOld<br />
><br />
><br />
><br />
><br />
> sin(LensAngleOld) * DistanceFromCameraOld<br />
> =<br />
> sin(LensAngleNew)*DistanceFromCameraNew<br />
><br />
><br />
> Now we solve for DistanceFromCameraNew or LensAngleNew.  Since the  <br />
> lensangle and distance from camera are related.  We must solve for  <br />
> one or the other.<br />
><br />
><br />
><br />
> LensAngleNew= arcsin(sin(LensAngleOld) * DistanceFromCameraOld/ <br />
> DistanceFromCameraNew )<br />
><br />
> DistanceFromCameraNew = DistanceFromCameraOld * sin<br />
> (LensAngleOld)/sin(LensAngleNew)<br />
><br />
><br />
> For example.  If your object is 3 units away from the camera, and  <br />
> your old camera angle was 45.<br />
><br />
> Now lets say you want a new camera angle of  90.<br />
> you must move the object to<br />
><br />
> 3*sin(45)/sin(90)<br />
> the actual new distance is 2.121<br />
><br />
><br />
> The easist way of thinking of this is<br />
><br />
><br />
> The relative distance is sin(oldLensAngle)/sin(NewLensAngle)<br />
><br />
><br />
> You should double check my math&#8230;<br />
><br />
></p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81836</guid>
					<title><![CDATA[Re: change lens_angle while keeping relative size on screen equal]]></title>
					<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81836</link>
					<pubDate>Thu, 24 Aug 2006 05:27:10 +0000</pubDate>
					<dc:creator>dan</dc:creator>

					<description>
						<![CDATA[
						<p>are you going for the look a &#8216;dolly zoom&#8217; or &#8216;trombone effect&#8217;? :)</p>
<p><a href="http://en.wikipedia.org/wiki/Dolly_zoom" rel="nofollow">http://en.wikipedia.org/wiki/Dolly_zoom</a></p>
<p>best,<br />
dan</p>
<p>
On 8/23/06, Brecht Debackere <brecht @autofasurer.net> wrote:<br />
> Hm, that doesn&#8217;t seem to work&#8230; implemented the little example you<br />
> gave at the bottom, and the results are different&#8230;<br />
> The first numberbox is the distance, 2nd and 3rd the initial and<br />
> changed lens angle.<br />
><br />
> #P window setfont &#8220;Sans Serif&#8221; 9.;<br />
> #P window linecount 1;<br />
> #P newex 260 302 76 196617 unpack 0. 0. 0.;<br />
> #P newex 260 282 61 196617 pak 0. 0. 0.;<br />
> #P flonum 332 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
> #P flonum 296 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
> #P flonum 260 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
> #P flonum 260 347 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
> #P newex 260 323 140 196617 expr $f1* sin($f2)/sin($f3);<br />
> #P fasten 6 2 0 2 331 321 395 321;<br />
> #P fasten 6 1 0 1 298 321 330 321;<br />
> #P connect 6 0 0 0;<br />
> #P connect 0 0 1 0;<br />
> #P fasten 4 0 5 2 337 277 315 277;<br />
> #P fasten 3 0 5 1 301 277 290 277;<br />
> #P connect 5 0 6 0;<br />
> #P connect 2 0 5 0;<br />
> #P window clipboard copycount 7;<br />
><br />
> On Aug 22, 2006, at 4:00 AM, Jason Schmitt wrote:<br />
> ><br />
> > If you want to change the lens angle but keep the relative size on<br />
> > the screen the same, you must move the object closer or farther away.<br />
> ><br />
> > Using trigonometry, it should be simple to calculate the ratios.<br />
> ><br />
> ><br />
> > sin(theta) = Oposite/adjacent<br />
> ><br />
> > sin(LensAngle) =  ( WidthOfObject/2.0 ) / DistanceFromCamera<br />
> ><br />
> > sin(LensAngle) * DistanceFromCamera =  ( WidthOfObject/2.0 )<br />
> ><br />
> ><br />
> > sin(LensAngleOld) * DistanceFromCameraOld= ( WidthOfObjectOld/2.0 )<br />
> ><br />
> > sin(LensAngleNew)*DistanceFromCameraNew =  ( WidthOfObjectNew/2.0 )<br />
> ><br />
> ><br />
> > since we want the object to stay the same size :<br />
> > WidthOfObjectNew = WidthOfObjectOld<br />
> ><br />
> ><br />
> ><br />
> ><br />
> > sin(LensAngleOld) * DistanceFromCameraOld<br />
> > =<br />
> > sin(LensAngleNew)*DistanceFromCameraNew<br />
> ><br />
> ><br />
> > Now we solve for DistanceFromCameraNew or LensAngleNew.  Since the<br />
> > lensangle and distance from camera are related.  We must solve for<br />
> > one or the other.<br />
> ><br />
> ><br />
> ><br />
> > LensAngleNew= arcsin(sin(LensAngleOld) * DistanceFromCameraOld/<br />
> > DistanceFromCameraNew )<br />
> ><br />
> > DistanceFromCameraNew = DistanceFromCameraOld * sin<br />
> > (LensAngleOld)/sin(LensAngleNew)<br />
> ><br />
> ><br />
> > For example.  If your object is 3 units away from the camera, and<br />
> > your old camera angle was 45.<br />
> ><br />
> > Now lets say you want a new camera angle of  90.<br />
> > you must move the object to<br />
> ><br />
> > 3*sin(45)/sin(90)<br />
> > the actual new distance is 2.121<br />
> ><br />
> ><br />
> > The easist way of thinking of this is<br />
> ><br />
> ><br />
> > The relative distance is sin(oldLensAngle)/sin(NewLensAngle)<br />
> ><br />
> ><br />
> > You should double check my math&#8230;<br />
> ><br />
> ><br />
><br />
></brecht></p>
<p>
&#8211; <br />
***<br />
<a href="http://danwinckler.com" rel="nofollow">http://danwinckler.com</a><br />
<a href="http://share.dj" rel="nofollow">http://share.dj</a></p>
<p><a href="http://idmi.poly.edu" rel="nofollow">http://idmi.poly.edu</a></p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81837</guid>
					<title><![CDATA[Re: change lens_angle while keeping relative size on screen equal]]></title>
					<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81837</link>
					<pubDate>Thu, 24 Aug 2006 17:20:56 +0000</pubDate>
					<dc:creator>Brecht</dc:creator>

					<description>
						<![CDATA[
						<p>Yep. that&#8217;s exactly it.</p>
<p>On Aug 24, 2006, at 7:27 AM, Dan Winckler wrote:</p>
<p>> are you going for the look a &#8216;dolly zoom&#8217; or &#8216;trombone effect&#8217;? :)<br />
><br />
> <a href="http://en.wikipedia.org/wiki/Dolly_zoom" rel="nofollow">http://en.wikipedia.org/wiki/Dolly_zoom</a><br />
><br />
> best,<br />
> dan<br />
><br />
><br />
> On 8/23/06, Brecht Debackere <brecht @autofasurer.net> wrote:<br />
>> Hm, that doesn&#8217;t seem to work&#8230; implemented the little example you<br />
>> gave at the bottom, and the results are different&#8230;<br />
>> The first numberbox is the distance, 2nd and 3rd the initial and<br />
>> changed lens angle.<br />
>><br />
>> #P window setfont &#8220;Sans Serif&#8221; 9.;<br />
>> #P window linecount 1;<br />
>> #P newex 260 302 76 196617 unpack 0. 0. 0.;<br />
>> #P newex 260 282 61 196617 pak 0. 0. 0.;<br />
>> #P flonum 332 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
>> #P flonum 296 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
>> #P flonum 260 258 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
>> #P flonum 260 347 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;<br />
>> #P newex 260 323 140 196617 expr $f1* sin($f2)/sin($f3);<br />
>> #P fasten 6 2 0 2 331 321 395 321;<br />
>> #P fasten 6 1 0 1 298 321 330 321;<br />
>> #P connect 6 0 0 0;<br />
>> #P connect 0 0 1 0;<br />
>> #P fasten 4 0 5 2 337 277 315 277;<br />
>> #P fasten 3 0 5 1 301 277 290 277;<br />
>> #P connect 5 0 6 0;<br />
>> #P connect 2 0 5 0;<br />
>> #P window clipboard copycount 7;<br />
>><br />
>> On Aug 22, 2006, at 4:00 AM, Jason Schmitt wrote:<br />
>> ><br />
>> > If you want to change the lens angle but keep the relative size on<br />
>> > the screen the same, you must move the object closer or farther  <br />
>> away.<br />
>> ><br />
>> > Using trigonometry, it should be simple to calculate the ratios.<br />
>> ><br />
>> ><br />
>> > sin(theta) = Oposite/adjacent<br />
>> ><br />
>> > sin(LensAngle) =  ( WidthOfObject/2.0 ) / DistanceFromCamera<br />
>> ><br />
>> > sin(LensAngle) * DistanceFromCamera =  ( WidthOfObject/2.0 )<br />
>> ><br />
>> ><br />
>> > sin(LensAngleOld) * DistanceFromCameraOld= ( WidthOfObjectOld/2.0 )<br />
>> ><br />
>> > sin(LensAngleNew)*DistanceFromCameraNew =  ( WidthOfObjectNew/2.0 )<br />
>> ><br />
>> ><br />
>> > since we want the object to stay the same size :<br />
>> > WidthOfObjectNew = WidthOfObjectOld<br />
>> ><br />
>> ><br />
>> ><br />
>> ><br />
>> > sin(LensAngleOld) * DistanceFromCameraOld<br />
>> > =<br />
>> > sin(LensAngleNew)*DistanceFromCameraNew<br />
>> ><br />
>> ><br />
>> > Now we solve for DistanceFromCameraNew or LensAngleNew.  Since the<br />
>> > lensangle and distance from camera are related.  We must solve for<br />
>> > one or the other.<br />
>> ><br />
>> ><br />
>> ><br />
>> > LensAngleNew= arcsin(sin(LensAngleOld) * DistanceFromCameraOld/<br />
>> > DistanceFromCameraNew )<br />
>> ><br />
>> > DistanceFromCameraNew = DistanceFromCameraOld * sin<br />
>> > (LensAngleOld)/sin(LensAngleNew)<br />
>> ><br />
>> ><br />
>> > For example.  If your object is 3 units away from the camera, and<br />
>> > your old camera angle was 45.<br />
>> ><br />
>> > Now lets say you want a new camera angle of  90.<br />
>> > you must move the object to<br />
>> ><br />
>> > 3*sin(45)/sin(90)<br />
>> > the actual new distance is 2.121<br />
>> ><br />
>> ><br />
>> > The easist way of thinking of this is<br />
>> ><br />
>> ><br />
>> > The relative distance is sin(oldLensAngle)/sin(NewLensAngle)<br />
>> ><br />
>> ><br />
>> > You should double check my math&#8230;<br />
>> ><br />
>> ><br />
>><br />
>><br />
><br />
><br />
> &#8212; <br />
> ***<br />
> <a href="http://danwinckler.com" rel="nofollow">http://danwinckler.com</a><br />
> <a href="http://share.dj" rel="nofollow">http://share.dj</a><br />
> <a href="http://idmi.poly.edu" rel="nofollow">http://idmi.poly.edu</a><br />
><br />
></brecht></p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81838</guid>
					<title><![CDATA[Re: change lens_angle while keeping relative size on screen equal]]></title>
					<link>http://cycling74.com/forums/topic/change-lens_angle-while-keeping-relative-size-on-screen-equal/#post-81838</link>
					<pubDate>Sat, 26 Aug 2006 19:54:17 +0000</pubDate>
					<dc:creator>jsmitty</dc:creator>

					<description>
						<![CDATA[
						<p>Your example uses degrees, but the max Sin trigonometic function needs radians.   Try this one  instead&#8230;</p>
<p>#P window setfont &#8220;Sans Serif&#8221; 9.;<br />
#P window linecount 1;<br />
#P comment 320 162 100 9109513 Old Distance;<br />
#P comment 348 184 132 9109513 Old Camera Angle Degrees;<br />
#P comment 299 390 100 9109513 New Distance;<br />
#P comment 459 231 100 9109513 Degress to radians;<br />
#P comment 396 268 100 9109513 Radians;<br />
#P flonum 335 203 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 311 184 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P newex 301 229 76 9109513 * 0.017453;<br />
#P newex 379 228 76 9109513 * 0.017453;<br />
#P newex 267 309 76 9109513 unpack 0. 0. 0.;<br />
#P newex 267 289 61 9109513 pak 0. 0. 0.;<br />
#P flonum 339 265 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 303 265 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 277 163 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P flonum 249 391 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;<br />
#P newex 233 350 140 9109513 expr $f1* sin($f2)/sin($f3);<br />
#P comment 371 203 136 9109513 New Camera Angle Degrees;<br />
#P connect 11 0 8 0;<br />
#P connect 10 0 9 0;<br />
#P connect 8 0 5 0;<br />
#P connect 9 0 4 0;<br />
#P connect 3 0 6 0;<br />
#P connect 6 0 7 0;<br />
#P fasten 4 0 6 1 308 284 297 284;<br />
#P fasten 5 0 6 2 344 284 322 284;<br />
#P connect 1 0 2 0;<br />
#P connect 7 0 1 0;<br />
#P fasten 7 1 1 1 305 328 303 328;<br />
#P fasten 7 2 1 2 338 328 368 328;<br />
#P window clipboard copycount 17;</p>
						]]>
					</description>

					
					
				</item>

					
		
	</channel>
	</rss>

