![](/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) |
What I really like about POV is if the PHB walks by, it looks like you're
working....
#macro MakeFlake(FlakeSeed)
#declare Rand1 = seed(FlakeSeed);
#declare S1Len = rand(Rand1)*2 + 0.5;
#declare S2Len = rand(Rand1)/2 + 0.1;
#declare S1Wid = rand(Rand1)/10 + 0.005;
#declare S2Wid = rand(Rand1)/50 + 0.005;
#declare S2Count = (rand(Rand1)+1)*10;
#declare S2Rot = (rand(Rand1)-0.5)*180;
#declare CountB = 0;
#declare Flake =
union{
#while(CountB < 6)
union{
cylinder{0,y*S1Len, S1Wid}
#declare CountA = 0;
#while(CountA < S2Count)
cylinder{0,x*S2Len, S2Wid rotate z*S2Rot translate
y*(CountA*S1Len/S2Count)}
cylinder{0,x*-S2Len, S2Wid rotate z*-S2Rot translate
y*(CountA*S1Len/S2Count)}
#declare CountA = CountA + 1;
#end
rotate z*CountB*(360/6)
}
#declare CountB = CountB + 1;
#end
}
#end
#declare CountC = 0;
#declare Rand2 = seed(6545);
#declare Rand3 = seed(8435);
#while(CountC < 150)
MakeFlake(int(rand(Rand2)*1000))
object{
Flake
scale (rand(Rand3)*2)+0.5
rotate z*rand(Rand3)*180
rotate y*rand(Rand3)*180
rotate x*rand(Rand3)*180
#declare YTrans = (rand(Rand3)*50)+10;
translate<(rand(Rand3)-0.5)*(YTrans+10),YTrans,(rand(Rand3)-0.5)*YTrans>
pigment{White}
finish{ambient 1}
}
#declare CountC = CountC + 1;
#end
--
#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 'sflake1.gif' (24 KB)
Preview of image 'sflake1.gif'
![sflake1.gif](/povray.binaries.images/attachment/%3C3c0fa1b8%40news.povray.org%3E/sflake1.gif?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 Thu, 6 Dec 2001 16:49:57 -0000, Tom Melly wrote:
>What I really like about POV is if the PHB walks by, it looks like you're
>working....
Flakes are simetrical so just make half a flake, then put two halves
together. That way you may get better results quicker, these look
nothing like the enlarged photos of snow flakes that I remember seeing
on Play School, but you seem to be going in the right direction.
--
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
1:59am up 59 days, 17:44, 2 users, load average: 1.00, 1.02, 1.00
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) |
> Flakes are simetrical so just make half a flake, then put two halves
> together. That way you may get better results quicker, these look
> nothing like the enlarged photos of snow flakes that I remember seeing
> on Play School, but you seem to be going in the right direction.
Rotationally symmetric too, I shouldn't doubt. That would mean you
create a slice and then rotate it e.g. 6 times around.
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) |
"Andrew" <ast### [at] hotmail com> wrote in message
news:3c11eb02@news.povray.org...
> > Flakes are simetrical so just make half a flake, then put two halves
> > together. That way you may get better results quicker, these look
> > nothing like the enlarged photos of snow flakes that I remember seeing
> > on Play School, but you seem to be going in the right direction.
>
> Rotationally symmetric too, I shouldn't doubt. That would mean you
> create a slice and then rotate it e.g. 6 times around.
http://www.jericho-underhill.com/bentley.htm
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) |
"Steve" <ste### [at] zeropps uklinux net> wrote in message
news:slr### [at] zero-pps localdomain...
>
> Flakes are simetrical so just make half a flake, then put two halves
> together. That way you may get better results quicker, these look
> nothing like the enlarged photos of snow flakes that I remember seeing
> on Play School, but you seem to be going in the right direction.
>
Well, the parse time is fairly minimal. Not realistic, it's true - Lu just
wanted some snowflakes for the xmas card background. Still, in consequece, I've
taken a closer look at snowflakes and am wondering how to write a macro to
generate more complex, realistic flakes. Anyone got any basic advice?
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) |
On Mon, 10 Dec 2001 09:44:22 -0000, Tom Melly wrote:
>Well, the parse time is fairly minimal. Not realistic, it's true - Lu just
>wanted some snowflakes for the xmas card background. Still, in consequece, I've
>taken a closer look at snowflakes and am wondering how to write a macro to
>generate more complex, realistic flakes. Anyone got any basic advice?
>
Ok if they're rotationally symetrical too then you make a polygon section
which is a sixth of the complete circle, then use one of those random
texture macros but using only colours clear and white. Next stage rotate
in a loop (5 times), then resize and place.
--
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
1:00pm up 65 days, 4:46, 1 user, load average: 1.00, 1.02, 1.00
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) |
On Thu, 6 Dec 2001 16:49:57 -0000, Tom Melly wrote:
>What I really like about POV is if the PHB walks by, it looks like you're
>working....
I've thought since that each of your six sections will also be symetrical
within itself, so you make half of one sixth, your triangle should look
like this:
-----
\ |
\ |
\ |
\|
So you apply your randon texture of white and clear to that section,
then double it up / flip it in a union so that you've now got a
symetrical sixth of the flake:
----------
\ | /
\ | /
\ | /
\|/
V
Now rotate it in a union to get your full circle.
OK that's a copuple of hours of my day gone now, this works:
#include "colors.inc"
#version 3.1;
global_settings{
ambient_light 7
assumed_gamma 2.2
}
// ****** Basic objects, camera, plane, lights etc. ************************
camera{
location <0,5,-25>
look_at <0,3,0>
}
// ********************* Snowflake Macro ****************************
#macro Snow_Flake(Pig_Turb, Pig_Scale, Pig_Rotate)
#local Flake_Pig =
pigment{
agate
color_map{
[0.0 Clear ]
[0.5 Clear ]
[0.5 White ]
[1 White ]
}
turbulence Pig_Turb
rotate z*Pig_Rotate
scale Pig_Scale
}
#local Flake_Half_Section =
polygon{
4,
<-3.5,6>, <0,5>, <0,0>, <-3.5,6>
pigment{Flake_Pig}
}
#local Flake_Section =
union{
object{Flake_Half_Section}
object{Flake_Half_Section rotate y*180}
}
union{
object{Flake_Section}
object{Flake_Section rotate z*60}
object{Flake_Section rotate z*120}
object{Flake_Section rotate z*180}
object{Flake_Section rotate z*240}
object{Flake_Section rotate z*300}
}
#end
// ****************** Lay objects out for display **************
object{Snow_Flake(0.75, 0.75, 0) translate <-8,5,0>}
object{Snow_Flake(0.75, 0.75, 0) rotate z*30 scale 0.85 translate <-8,5,0>}
object{Snow_Flake(0.5, 0.5, 30) scale 0.75 translate <4,-2,0>}
object{Snow_Flake(0.14, 1, 30) scale 0.5 translate <5,7,0>}
Post a reply to this message
Attachments:
Download 'snowflake.jpg' (15 KB)
Preview of image 'snowflake.jpg'
![snowflake.jpg](/povray.binaries.images/attachment/%3Cslrna1es0u.vbg.steve%40zero-pps.localdomain%3E/snowflake.jpg?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) |
That looks really nice, and the concept you thought of was already pretty
good. Still it's only a 2D-Planar thingy.
Anybody up to do something 3D?
Tim
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) |
On Wed, 12 Dec 2001 16:21:42 +0100, Tim Nikias wrote:
>That looks really nice, and the concept you thought of was already pretty
>good. Still it's only a 2D-Planar thingy.
>
>Anybody up to do something 3D?
I don't know if it's possible to declare an object as an iso surface function,
in which case you could make the 2d version and apply it to an iso sphere.
--
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
4:14pm up 65 days, 8:00, 1 user, load average: 1.00, 1.13, 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) |
I've got a little program that makes 3d snowflakes in dfx format.
I've been useing 3dwin to convert it to moray then pov, see atached image.
I think I got the program at http://avalon.viewpoint.com/ under the
utilities section
in the software area.
Gary
Tim Nikias <Tim### [at] gmx de> wrote in message
news:3C177605.95917280@gmx.de...
> That looks really nice, and the concept you thought of was already pretty
> good. Still it's only a 2D-Planar thingy.
>
> Anybody up to do something 3D?
>
> Tim
>
>
Post a reply to this message
Attachments:
Download 'snowflake.jpg' (22 KB)
Preview of image 'snowflake.jpg'
![snowflake.jpg](/povray.binaries.images/attachment/%3C3c182f00%40news.povray.org%3E/snowflake.jpg?preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |