![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
An iso-bottle...
--
#macro G(D,E,F)#local I=array[3]{D,E,F}#local B=0;triangle{#while(
B<3)#while(I[B])A[mod(I[B],10)]+#local I[B]=div(I[B],10);#end<-5,-
2,9>#local B=B+1;#end}#end #local A=array[7]{x,x*2,x*4,y,y*2,y*4,z
}light_source{-x*6-z*9,1}mesh{G(105,10,146)G(105,246,10)G(105,56,
146)G(105,1256,246)G(1256,126,220)G(22156,2216,201)pigment{rgb 1}}//TM
Post a reply to this message
Attachments:
Download 'bottle.jpg' (18 KB)
Preview of image 'bottle.jpg'
![bottle.jpg](/povray.binaries.images/attachment/%3C3ba71264%40news.povray.org%3E/bottle.jpg?ttop=443840&toff=10450&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Tue, 18 Sep 2001 10:22:43 +0100, Tom Melly wrote:
>An iso-bottle...
Beautiful image. On first impression the shadow is
so unreal but enchanting, also the way the to part
of the shadow is slightly redened.
--
Cheers
Steve email mailto:ste### [at] zeropps uklinux net
%HAV-A-NICEDAY Error not enough coffee 0 pps.
web http://www.zeropps.uklinux.net/
or http://start.at/zero-pps
9:20pm up 7 days, 23:34, 1 user, load average: 1.02, 1.16, 1.12
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Tom Melly wrote:
> An iso-bottle...
Damn that's nice. I just spent most of last evening trying to do the
exact same thing, a bottle using iso's, with nowhere near your sucess!
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Jim Charter" <jrc### [at] aol com> wrote in message
news:3BA7D682.CEE2D3FD@aol.com...
>
>
> Tom Melly wrote:
>
> > An iso-bottle...
>
> Damn that's nice. I just spent most of last evening trying to do the
> exact same thing, a bottle using iso's, with nowhere near your sucess!
>
Ta - I have a very unmathamatical approach to iso's - using loads of max and
mins. Also, there are a couple of torii (one at the base and one at the top).
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
- using loads of max and
> mins. Also, there are a couple of torii (one at the base and one at the top).
You mean using max and mins to 'and/or' shapes together?
I would be interested in what you have.
I got this far:
f1 = function { sqrt(x^2 + z^2) - (7 - (y^1.85)/50) } //convex taper to top
f2 = function { sqrt(x^2 + z^2) - (7 - 1/(y*y*10)) } //convex taper to bottom
f3 = function { sqrt(x^2 + z^2) - (1 + (y^1.5)/100) } //concave taper to
bottom
f4 = function { sqrt(x^2 + z^2) - (1 + (1/(y/25*y/25))/2) } //concave taper to
top
f1 and f2 'and' together nicely but how to get a smooth transition from concave
to convex still eludes me. Haven't tried splines as iso's yet. May be something
there will work. I have this idea of trying to randomly generate typical Morandi
paintings
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Jim Charter" <jrc### [at] aol com> wrote in message
news:3BA93EEA.4F00B6ED@aol.com...
>
Here's the code for the bottle...
#include "colors.inc"
#include "functions.inc"
#include "finish.inc"
#include "glass.inc"
#declare fn_Noise = function{f_noise3d(x,y,z) - 0.5}
#declare fn_X = function(x,y,z) {x*x + z*z - 1 - sin(max(1.55,min(3.85,y))) +
(fn_Noise(x*2,y*2,z*2)/20)}
#declare glass_iso =
isosurface {
function { fn_X(x, y, z) }
contained_by { box {<-2,-4,-2>,<2,6.5,2>} }
accuracy 0.001
max_gradient 5
evaluate 1, 1.2, 0.99
max_trace 4
translate y*4
}
#declare bottle =
merge{
difference{
object{glass_iso}
object{glass_iso scale <0.9,1,0.9>}
plane{y, 10.0 inverse}
plane{y, 0.50}
}
cylinder{y*0, y*0.5, 1.4} // Now, why did I put this here?
torus{1.25,0.25}
torus{0.55,0.15 scale y*4 translate y*9.75}
pigment{Col_Glass_Clear} interior{I_Glass_Dispersion1} finish{F_Glass5}
}
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Thanks, that gives me more to play with.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |