Lêer:Mug and Torus morph.gif

Page contents not supported in other languages.
in Wikipedia, die vrye ensiklopedie

Mug_and_Torus_morph.gif(240 × 240 piksels, lêergrootte: 497 KG, MIME-tipe: image/gif, herhalend, 58 rame, 12 s)

Hierdie lêer kom vanaf Wikimedia Commons en kan ook in ander projekte gebruik word. Die beskrywing op die lêer se inligtingsblad word hieronder weergegee.

Opsomming

Beskrywing
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.
 
This image was created with POV-Ray.
Bron Eie werk
Outeur Lucas Vieira
Ander weergawes
File:Mug and Torus morph frame.png
single frame suitable for thumbnail purposes

Wikipedia

 This is a featured picture on the English language Wikipedia (Featured pictures) and is considered one of the finest images. See its nomination here.
 This is a featured picture on the Turkish language Wikipedia (Seçkin resimler) and is considered one of the finest images. See its nomination here.

If you think this file should be featured on Wikimedia Commons as well, feel free to nominate it.
If you have an image of similar quality that can be published under a suitable copyright license, be sure to upload it, tag it, and nominate it.

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

Lisensiëring

Public domain Ek, die outeursreghouer van hierdie werk, stel dit hiermee in die publieke domein vry. Dit geld wêreldwyd.
In sommige lande is dit dalk nie wettiglik moontlik nie. Indien so:
Ek verleen aan enigiemand die reg om hierdie werk te gebruik vir enige doel, sonder voorwaardes, tensy sulke voorwaardes deur die wet vereis word.

Captions

Add a one-line explanation of what this file represents
A coffee mug turning into a torus, a popular example in topology.

Items portrayed in this file

uitbeelding

Lêergeskiedenis

Klik op die datum/tyd om te sien hoe die lêer destyds gelyk het.

Datum/TydDuimnaelDimensiesGebruikerOpmerking
huidig00:56, 2 Maart 2007Duimnaelskets vir weergawe vanaf 00:56, 2 Maart 2007240 × 240 (497 KG)LucasVBback to old cropping - looks a lot better
00:49, 2 Maart 2007Duimnaelskets vir weergawe vanaf 00:49, 2 Maart 2007189 × 240 (477 KG)LucasVBmore saturation of colors
08:30, 20 Januarie 2007Duimnaelskets vir weergawe vanaf 08:30, 20 Januarie 2007240 × 240 (465 KG)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 Januarie 2007Duimnaelskets vir weergawe vanaf 05:49, 12 Januarie 2007240 × 240 (497 KG)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 Oktober 2006Duimnaelskets vir weergawe vanaf 06:02, 2 Oktober 2006320 × 240 (554 KG)LucasVBA coffee w:mug morphing into a w:torus.

Die volgende 3 bladsye gebruik dié lêer:

Globale lêergebruik

Die volgende ander wiki's gebruik hierdie lêer:

Wys meer globale gebruik van die lêer.