| Description |
A right-handed Spring |
|---|---|
| Source |
Own work |
| Date | |
| Author | |
| Permission (Reusing this file) |
See below. |
| Additional information | Pov-ray source code:
#include "colors.inc"
#include "shapes.inc"
global_settings {
assumed_gamma 1.0
max_trace_level 3
ambient_light 1
}
#declare simple = texture {
pigment { color<0, 0, 1, 0, 0.5> }
finish { specular .5 phong .5 phong_size 250}
}
#declare p_radius = 0.25;
#declare w_radius = 0.01;
#declare p_torus = 0.5;
#declare p_spiral = 1;
camera {
perspective
location <-15, 0, 7>
right x/0.75 up z sky z
look_at <0, 0, 2>
angle 22
}
light_source {
<2,2,2>
color White
parallel
point_at <0,0,0>
}
light_source {
<-2,2,2>
color White
parallel
point_at <0,0,0>
}
plane {
z, -p_radius
texture { pigment { checker White, <.8,.8,.8> } }
}
isosurface {
function { pow(p_torus-sqrt(x*x+y*y), 2) + pow((z + atan2(x,y)/3.14159*p_spiral), 2) }
contained_by { box { <-p_torus-p_radius, -p_torus-p_radius, -p_spiral-p_radius>, <p_torus+p_radius, p_torus+p_radius, p_spiral+p_radius> } }
threshold p_radius*p_radius
accuracy 0.01
max_gradient 770
open
translate <0, 0, 1>
texture { simple }
}
isosurface {
function { pow(p_torus-sqrt(x*x+y*y), 2) + pow((z + atan2(x,y)/3.14159*p_spiral), 2) }
contained_by { box { <-p_torus-p_radius, -p_torus-p_radius, -p_spiral-p_radius>, <p_torus+p_radius, p_torus+p_radius, p_spiral+p_radius> } }
threshold p_radius*p_radius
accuracy 0.01
max_gradient 770
open
translate <0, 0, 3>
texture { simple }
}
isosurface {
function { pow(p_torus-sqrt(x*x+y*y), 2) + pow((z + atan2(x,y)/3.14159*p_spiral), 2) }
contained_by { box { <-p_torus-w_radius, -p_torus-w_radius, -p_spiral-w_radius>, <p_torus+w_radius, p_torus+w_radius, p_spiral+w_radius> } }
threshold w_radius*w_radius
accuracy 0.01
max_gradient 770
open
translate <0, 0, 1>
texture { pigment { Black } }
}
isosurface {
function { pow(p_torus-sqrt(x*x+y*y), 2) + pow((z + atan2(x,y)/3.14159*p_spiral), 2) }
contained_by { box { <-p_torus-w_radius, -p_torus-w_radius, -p_spiral-w_radius>, <p_torus+w_radius, p_torus+w_radius, p_spiral+w_radius> } }
threshold w_radius*w_radius
accuracy 0.01
max_gradient 770
open
translate <0, 0, 3>
texture { pigment { Black } }
}
#declare py=0;
#while (py <= 4)
#declare ph=py*3.141593;
#declare ph2=py*180+90;
torus {
p_torus/2, w_radius
rotate z*ph2
translate <p_torus*sin(ph), -p_torus*cos(ph), py*p_spiral>
texture { pigment { Black } }
}
#declare py = py + 1/10;
#end |
Licensing
This file is a candidate to be copied to Wikimedia Commons.
Any user may perform this transfer; refer to Wikipedia:Moving files to Commons for details.
If this file has problems with attribution, copyright, or is otherwise ineligible for Commons, then remove this tag and DO NOT transfer it; repeat violators may be blocked from editing.
Other Instructions
- Endorse this file for transfer by adding
|human=<your username>to this Template. - If this file is freely licensed, but otherwise unsuitable for Commons (e.g. out of Commons' scope, still copyrighted in the US), then replace this Template with
{{Do not move to Commons|reason=<Why it can't be moved>}} - If you think that a local copy of this file should be retained, then replace this Template with
{{Keep local|reason=<Why a local copy is needed>}} - Please ensure that the file has a properly descriptive and unambiguous name before transferring; see Wikipedia:File mover#What files should be renamed? for details.
This file was suggested for transfer by a bot (User:Svenbot). Please verify that this file is suitable for Commons before transferring it.