Villarceau_circles.gif(480 × 360 пікселів, розмір файлу: 582 КБ, MIME-тип: image/gif, кільцеве, 39 кадрів, 17с)

Wikimedia Commons logo Відомості про цей файл містяться на Вікісховищі — централізованому сховищі вільних файлів мультимедіа для використання у проектах Фонду Вікімедіа.

Опис файлу

Опис
English: Villarceau circles in a Torus. Rendered using POV-Ray.
 
Це uk:зображення було створено з допомогою Persistence of Vision.
Джерело Власна робота
Автор Lucas Vieira

Вікіпедія

 Це вибране зображення у Вікіпедії мовою: англійська (Featured pictures) і є визнаним одним з найкращих зображень.

Якщо ви вважаєте, що цей файл повинен бути вибраним у Вікісховищі, не соромтеся висувати його.
Якщо у вас є зображення подібної якості, яке може бути опубліковане під відповідною ліцензією авторського права, неодмінно завантажте його, виберіть ліцензію, і висуньте його.

Ліцензування

Public domain Я, власник авторських прав на цю роботу, передаю роботу в суспільне надбання. Застосовується по всьому світу.
У деяких країнах це не може бути юридично можливо, в такому випадку:
Я даю кожному право на використання цієї роботи для будь-яких цілей, без будь-яких умов, якщо такі умови не вимагаються за законом.

POV-Ray source code

/* 
Villarceau circles 2.0, by Lucas Vieira - October 2, 2006 - Coded in: POV-Ray 3.6
License: Public Domain


Info
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Author user page: http://en.wikipedia.org/wiki/User:LucasVB
The final animation at Wikimedia Commons: http://commons.wikimedia.org/wiki/Image:Villarceau_circles.gif


Notes
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Several modifications were done for each part of the animation and I didn't keep them all here.
So if you wish to reproduce the animation, you'll have to play with this code quite a bit. :)


*/

background { color rgb 1 }

global_settings {
	assumed_gamma 1.5
}

camera {
	orthographic
	location <0,4,-5>*0.75
	look_at <0,0,0>
	rotate 5*y // slight camera angle so the cutting plane doesn't look too boring
	//rotate 90*y // debug rotation
}

light_source {
	<0,0,0>, 1
	translate <-5,5,0>*1
	shadowless // makes everything softer, because shading comes entirely from the surface normal
	           // this removes specular reflections, but I thought it looked a lot better
}


//Several rotation codes used for various parts of the animation.

//#declare rotation = (-95*sin(clock*pi/2))*y; // 360*clock*y;
#declare rotation = -90*y;
//#declare rotation = (-85 * sin(clock*pi/2))*y;


//Bottom half-torus
#if (1)
difference {
	difference {
		torus {
			1, 0.5
		}
		torus {
			1, 0.499
			pigment {
				image_map {
					//surface inside the torus
					png "checker2.png" // 1024x512 checkered image, with 64x64 cells.
					interpolate 4
					map_type 5
					//transmit all 1-sin(clock*pi/2)
					//transmit all 0.85
				}
			}
		}
	}
	box {
   -3*<1,0,1>, <1,1,1>*3
		rotate degrees(asin(0.5-0.001))*z
	}
	pigment {
		image_map {
			png "checker.png" // 1024x512 checkered image, with 64x64 cells.
			interpolate 4
			map_type 5
			//transmit all 1-sin(clock*pi/2)
			//transmit all 0.85
		}
	}
	finish {
		specular 0.5
		roughness 0.01
		ambient 0.5
	}
	rotate rotation
}
#end


//Top half-torus (the one discarded during the animation)
//Notice it doesn't have an inner surface like the other half

#if (0)
intersection {
	difference {
		torus {
			1, 0.5
		}
		torus {
			1, 0.499
		}
	}
	box {
   -3*<1,0,1>, <1,1,1>*3
		rotate degrees(asin(0.5-0.001))*z
	}
	pigment {
		image_map {
			png "checker.png" // 1024x512 checkered image, with 64x64 cells.
			interpolate 4
			map_type 5
			//transmit all 1-sin(clock*pi/2) // Fades it away while moving to the left (see below)
			//transmit all 0.85
		}
	}
	finish {
		specular 0.5
		roughness 0.01
		ambient 0.5
	}
	//translate -x*0.5*sin(clock*pi/2) // Moves this part to the left. Should be enabled along with the fade code above
	rotate rotation
}
#end

//Cutting plane
#if (0)
box {
	<1.8,0.001,1.8>, -<1.8,0.001,1.8>
	pigment {
		color rgb <1,0.8,0.5>
		//transmit 1-sin(clock*pi/2)*0.4
		//transmit 0.6+0.4*sin(clock*pi/2)
		transmit 0.6
	}
	finish {
		specular 0.5
		roughness 0.01
		ambient 0.3
	}
	//translate 3.5*x - sin(clock*pi/2)*3.5*x
	rotate degrees(asin(0.5-0.001))*z
}
#end

//The Villarceau circles
#if (0)
union {
	torus {
		1, 0.01
		translate 0.5*z
	}
	torus {
		1, 0.01
		translate -0.5*z
	}
	pigment {
		color rgb <1,0,0>
		//transmit clock
	}
	finish {
		ambient 1
	}
	no_shadow
	rotate degrees(asin(0.5-0.001))*z
	rotate -85*y
}
#end

/* END OF FILE */

Підписи

Додайте однорядкове пояснення, що саме репрезентує цей файл

Об'єкти, показані на цьому файлі

зображує

Історія файлу

Клацніть на дату/час, щоб переглянути, як тоді виглядав файл.

Дата/часМініатюраРозмір об'єктаКористувачКоментар
поточний22:43, 2 жовтня 2006Мініатюра для версії від 22:43, 2 жовтня 2006480 × 360 (582 КБ)LucasVBLarger version (480x360)
21:31, 2 жовтня 2006Мініатюра для версії від 21:31, 2 жовтня 2006320 × 240 (336 КБ)LucasVBImproved version. :)
06:18, 1 жовтня 2006Мініатюра для версії від 06:18, 1 жовтня 2006480 × 360 (689 КБ)LucasVBadded an extra frame highlighting the circles
05:52, 1 жовтня 2006Мініатюра для версії від 05:52, 1 жовтня 2006480 × 360 (671 КБ)LucasVBw:Villarceau circles in a w:Torus

Така сторінка використовує цей файл:

Глобальне використання файлу

Цей файл використовують такі інші вікі:

Переглянути сторінку глобального використання цього файлу.