Ficheru:Mug and Torus morph.gif

Contenido de la página no disponible en otros idiomas.
De Wikipedia

Mug_and_Torus_morph.gif(240 × 240 píxels, tamañu de ficheru: 497 kB, triba MIME: image/gif, animáu, 58 cuadros, 12s)

Esti ficheru ye de Wikimedia Commons y puen usalu otros proyeutos. La descripción de la páxina de descripción del ficheru s'amuesa darréu.

Resume

Descripción
English: A coffee mug morphing into a torus, a popular example in topology.
Türkçe: Bir kahve bardağının simide sürekli deformasyonunu gösteren bir homeomorfizma animasyonu.
 
Esta imagen fue creada con POV-Ray.
Fonte Trabayu propiu
Autor Lucas Vieira
Otres versiones
File:Mug and Torus morph frame.png
single frame suitable for thumbnail purposes

Wikipedia

 Esta imagen es considerada una de las mejores de la Wikipedia en idioma inglés (Featured pictures).
 Esta imagen es considerada una de las mejores de la Wikipedia en idioma turco (Seçkin resimler).

Si crees que también debería destacarse en Wikimedia Commons, no dudes en nominarla.
Si tienes una imagen de calidad similar que pueda ser publicada con licencia libre, súbela aquí, etiquétala y nomínala.

POV-Ray source code

/* 
Torus to mug morphing animation, by Lucas Vieira - January 17, 2007 - 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: [[:File:Mug_and_Torus_morph.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.8
	look_at <0,0,0>
	//rotate -45*y
}

#declare dist = 0.2;
light_source {
	<0,0,0>, 1
	//translate <-3,5,-5>*1
	translate 5*y
	translate -5*z
	translate 2*x
}


#declare a = 1;

// Cylinders for the mug shape
#declare C_a = function { pow(x / a,2) + pow(z / a,2)-1.5 }
#declare C_b = function { pow(x / a,2) + pow(z / a,2)-1.2 }
#declare B_b = function { (y+1.3) }


// Torus (handle and the morphing target)
#declare R = 1; #declare r = 0.22;
#declare T_a = function { pow(R - sqrt(pow(x,2) + pow(y,2)),2) + pow(z,2) - pow(r,2) }
#declare R2 = 1; #declare r2 = 0.5;
#declare T_b = function { pow(R2 - sqrt(pow(x,2) + pow(y,2)),2) + pow(z,2) - pow(r2,2) }

// Hollow mug (concave)
#declare Mug = function { min(min(max(C_a(x,y,z),B_b(x,y,z)),max(C_a(x,y,z),-C_b(x,y,z))),max(T_a(x-1,y,z),-C_a(x,y,z))) }

// Solid mug (cylinder with handle, convex)
#declare Mug2 = function { min(C_a(x,y,z),max(T_a(x-1,y,z),-C_a(x,y,z))) }


#declare c = 0.5;

// Linear to smooth interpolation
#declare Int = pow(sin(clock*pi/2),2);


// Functions for the mug parts, left as backups.
// max(C_a(x,y,z),B_b(x,y,z)) bottom
// max(C_a(x,y,z),-C_b(x,y,z)) sides
// min(max(C_a(x,y,z),B_b(x,y,z)),max(C_a(x,y,z),-C_b(x,y,z))) bottom+sides
// max(T_a(x-1,y,z),-C_a(x,y,z)) handle
// min(min(max(C_a(x,y,z),B_b(x,y,z)),max(C_a(x,y,z),-C_b(x,y,z))),max(T_a(x-1,y,z),-C_a(x,y,z))) full mug
  	

// Render as isosurface or CSG.
// Isosurface is used in the transitional states.
#declare RenderIsosurface = 0;
#if (RenderIsosurface)
union {
	isosurface {
		function {
			// Add previously defined object functions using Int and (1-Int) as to generate the smooth transition
	    	//Mug2(x,y,z)*(1-Int) +
			Mug(x,y,z)
			//T_b(x-1,y,z)*Int
		}
	  	contained_by { box { -<3,1.5,3>, <3,1.5,3> } }
		accuracy 0.001
		max_gradient 5 // 10
		//rotate -90*x
	}
	cylinder {
		<0,-1.3+Int*2.8,0>, <0,-1.5,0>, sqrt(1.5)
	}
	pigment {
  		color rgb <0.6,0.8,1> transmit 0.1
	}
	finish {
		specular 0.5
		roughness 0.01
		ambient 0.2
	}
}
#else
union {
	difference {
		cylinder {
			-1.5*y, 1.5*y, sqrt(1.5)
		}
		cylinder {
			-2*y, 2*y, sqrt(1.2)
		}
	}
	difference {
		torus {
			R, r
			rotate 90*x
			translate x
		}
		cylinder {
			-1.5*y, 1.5*y, sqrt(1.5)
		}
	}
	cylinder {
		<0,0-0.25+Int*(1.5+0.25),0>, <0,-1.5,0>, sqrt(1.5)
	}
	pigment {
  		color rgb <0.6,0.8,1> transmit 0.1
	}
	finish {
		specular 0.5
		roughness 0.01
		ambient 0.2
	}
}
#end

/* END OF FILE */

Updated January 12, 2007

  1. New colors: blue hue, brighter, softer shadows
  2. Changed light angle
  3. Non-linear interpolation: looks smoother and less boring
  4. Faster frame rate
  5. Cropped to relevant area
  6. Overall, smaller size for a better-looking image.

Updated January 20, 2007

  1. Removed dithering. Image now has visible color bands, but at least thumbnails won't look excessively grainy.

Updated March 1, 2007

  1. More saturation of colors

Llicencia

Public domain Yo, el titular de los drechos d'autor d'esta obra, la llibero como dominiu públicu. Esto s'aplica nel mundu ensembre.
En dellos países seique esto nun seya posible llegalmente; nesti casu:
Doi a cualesquier persona permisu pa usar esta obra pa cualesquier propósitu, ensin denguna condición, menos si eses condiciones requierense pola llei.

Pies

Añade una explicación corta acerca de lo que representa este archivo
A coffee mug turning into a torus, a popular example in topology.

Elementos representados en este archivo

representa a

Historial del ficheru

Calca nuna fecha/hora pa ver el ficheru como taba daquella.

Data/HoraMiniaturaDimensionesUsuariuComentariu
actual00:56 2 mar 2007Miniatura de la versión a fecha de 00:56 2 mar 2007240 × 240 (497 kB)LucasVBback to old cropping - looks a lot better
00:49 2 mar 2007Miniatura de la versión a fecha de 00:49 2 mar 2007189 × 240 (477 kB)LucasVBmore saturation of colors
08:30 20 xin 2007Miniatura de la versión a fecha de 08:30 20 xin 2007240 × 240 (465 kB)LucasVBRemoved dithering since it was causing excessive grainy-ness in thumbnails. Image now has color bands, but at least thumbnails won't look bad.
05:49 12 xin 2007Miniatura de la versión a fecha de 05:49 12 xin 2007240 × 240 (497 kB)LucasVBBetter version -- bright color+softer shadows+color=blue instead of an ugly yellowish-brown --- non-linear interpolation (looks a lot smoother) --- cropped to relevant area -- all in all, looks better and the file is a hundred kilobytes smaller :)
06:02 2 och 2006Miniatura de la versión a fecha de 06:02 2 och 2006320 × 240 (554 kB)LucasVBA coffee w:mug morphing into a w:torus.

La páxina siguiente usa esti ficheru:

Usu global del ficheru

Estes otres wikis usen esti ficheru:

Ver más usos globales d'esti ficheru.