|
|
|
|
|
|
| |
| |
|
|
From: Piotr 'utak3r' Borys
Subject: isosurface extrude and rounded edges
Date: 24 Mar 2006 08:05:39
Message: <4423eea3@news.povray.org>
|
|
|
| |
| |
|
|
Hi all,
First, welcome all here, as it's my first post :)
Now my problem: I've made a isosurface from sin(x) and then with abs
function made it a box:
#declare Thickness = 0.15;
#declare WaveHeight = 0.15;
#declare fn = function(x,y,z) { y - sin(x*pi)*WaveHeight }
#declare wave_box =
isosurface {
function { abs(fn(x,y+Thickness,z))-Thickness }
contained_by { box { <-1,-0.5,-1>, < 1, 0.5, 1> } }
max_gradient 0.8
}
all is great, it works :)
BUT - it would be _much_ better if it had rounded edges... but how the
hell do it? I wonder if there's a way to distort for example
f_rounded_box with sin(x)?...
Any advice would be appreciated :)
cheers
--
Piotr "utak3r" Borys
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Wasn't it Piotr 'utak3r' Borys who wrote:
>Hi all,
>
>First, welcome all here, as it's my first post :)
>Now my problem: I've made a isosurface from sin(x) and then with abs
>function made it a box:
>
>#declare Thickness = 0.15;
>#declare WaveHeight = 0.15;
>#declare fn = function(x,y,z) { y - sin(x*pi)*WaveHeight }
>
>#declare wave_box =
>isosurface {
> function { abs(fn(x,y+Thickness,z))-Thickness }
> contained_by { box { <-1,-0.5,-1>, < 1, 0.5, 1> } }
> max_gradient 0.8
>}
>
>all is great, it works :)
>BUT - it would be _much_ better if it had rounded edges... but how the
>hell do it? I wonder if there's a way to distort for example
>f_rounded_box with sin(x)?...
Here's a f_rounded_box distorted by sin(x*pi)*WaveHeight:
#declare Thickness = 0.15;
#declare WaveHeight = 0.15;
#declare Roundness = 0.1;
#include "functions.inc"
#declare wave_box =
isosurface {
function { f_rounded_box(x,(y - sin(x*pi)*WaveHeight),z,Roundness,1,
Thickness,1)}
contained_by { box { <-1,-0.5,-1>, < 1, 0.5, 1> } }
max_gradient 1.1
}
--
Mike Williams
Gentleman of Leisure
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Mike Williams <nos### [at] econymdemoncouk> wrote:
> >BUT - it would be _much_ better if it had rounded edges... but how the
> >hell do it? I wonder if there's a way to distort for example
> >f_rounded_box with sin(x)?...
>
> Here's a f_rounded_box distorted by sin(x*pi)*WaveHeight:
>
> isosurface {
> function { f_rounded_box(x,(y - sin(x*pi)*WaveHeight),z,Roundness,1,
> Thickness,1)}
> contained_by { box { <-1,-0.5,-1>, < 1, 0.5, 1> } }
> max_gradient 1.1
> }
Och.... I can see now I have to learn a lot more about those functions and
operating their parameters, substitutions and so on... ;)
Thanks a lot!
--
Piotr Borys
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|