Файл:Mug and Torus morph.gif

Башҡа телдәрҙә был бит юҡ
Викиһаҡлағыстағы файл битенә күсеү
Википедия — ирекле энциклопедия мәғлүмәте

Mug_and_Torus_morph.gif((240 × 240 пиксель, файл күләме: 497 Кб, MIME-төр: image/gif), цикллы, 58 кадр, 12 с)

Ҡыҫҡа аңлатма

Тасуирлау
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.
 
Это изображение было создано с помощью Persistence of Vision.
Сығанаҡ Шәхси эш
Автор Lucas Vieira
Башҡа өлгөләр
File:Mug and Torus morph frame.png
single frame suitable for thumbnail purposes

Википедия

 Этот файл имеет статус избранного изображения (Featured pictures) в Википедии (английский раздел) и в настоящее время признан там одним из лучших изображений.
 Этот файл имеет статус избранного изображения (Seçkin resimler) в Википедии (турецкий раздел) и в настоящее время признан там одним из лучших изображений.

Если вы считаете, что этот файл заслуживает статуса «избранного» на Викискладе, не стесняйтесь номинировать его.
Если у вас есть изображение аналогичного качества, которое может быть опубликовано под свободной лицензией, пожалуйста, загрузите его, выберите лицензию и номинируйте его.

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

Лицензиялау

Public domain Мин, был хеҙмәткә авторлыҡ хоҡуҡтары эйәһе, уны йәмәғәт милкенә ҡулланыуға тапшырам. Был рөхсәт бөтә донъяла ғәмәлдә.
Ҡайһы бер илдәрҙә был хоҡуҡи йәһәттән мөмкин булмауы ихтимал; был осраҡта:
Әгәр улар ҡанун буйынса талап ителмәһә, мин һәр кемгә был хеҙмәтте төрлө маҡсаттарҙа бер ниндә шарттарһыҙ ҡулланырға рөхсәт итәм.

Краткие подписи

Добавьте однострочное описание того, что собой представляет этот файл
A coffee mug turning into a torus, a popular example in topology.

Элементы, изображённые на этом файле

һүрәтләнгән объект

У этого свойства есть некоторое значение без элемента в

Файл тарихы

Файлдың күрһәтелгән ваҡытта ниндәй өлгөлә булғанын ҡарар өсөн баҫығыҙ: Дата/ваҡыт

Дата/ваҡытМиниатюраҮлсәмдәреҠатнашыусыИҫкәрмә
ағымдағы00:56, 2 март 200700:56, 2 март 2007 өлгөһө өсөн миниатюра240 × 240 (497 Кб)LucasVBback to old cropping - looks a lot better
00:49, 2 март 200700:49, 2 март 2007 өлгөһө өсөн миниатюра189 × 240 (477 Кб)LucasVBmore saturation of colors
08:30, 20 ғинуар 200708:30, 20 ғинуар 2007 өлгөһө өсөн миниатюра240 × 240 (465 Кб)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 ғинуар 200705:49, 12 ғинуар 2007 өлгөһө өсөн миниатюра240 × 240 (497 Кб)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 октябрь 200606:02, 2 октябрь 2006 өлгөһө өсөн миниатюра320 × 240 (554 Кб)LucasVBA coffee w:mug morphing into a w:torus.

Был файлды киләһе бит ҡуллана:

Файлды глобаль ҡулланыу

Был файл түбәндәге википроекттарҙа ҡулланыла:

Был файлды глобаль ҡулланыуҙы ҡарарға.