![](/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) |
Could you tell me if there is a simple way to build this shape. It's inside
a torus when major radius < minor radius. I realise one macro ( the blu
shape ) but it's empty, i would like to have this shape filled.
thank you
i hpe that my english is understable
Post a reply to this message
Attachments:
Download 'noyau.jpg' (11 KB)
Preview of image 'noyau.jpg'
![noyau.jpg](/povray.binaries.images/attachment/%3C43203f72%40news.povray.org%3E/noyau.jpg?ttop=441697&toff=4950&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) |
m.o.p.s wrote:
> Could you tell me if there is a simple way to build this shape. It's inside
> a torus when major radius < minor radius. I realise one macro ( the blu
> shape ) but it's empty, i would like to have this shape filled.
> thank you
#include "functions.inc"
isosurface {
function {
f_sphere(x+0.5*sin(f_th(x,z,y)),y+0.5*cos(f_th(x,z,y)),z, 1.0)
}
contained_by { box{-1, 1} }
}
The 1.0 is the minor radius, the two 0.5 the major radius.
Christoph
--
POV-Ray tutorials, include files, Landscape of the week:
http://www.tu-bs.de/~y0013390/ (Last updated 24 Jul. 2005)
MegaPOV with mechanics simulation: http://megapov.inetart.net/
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) |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
m.o.p.s wrote:
> Could you tell me if there is a simple way to build this shape. It's inside
> a torus when major radius < minor radius. I realise one macro ( the blu
> shape ) but it's empty, i would like to have this shape filled.
> thank you
>
This shape is called "lemon".
You can either:
- find the isosurface equation for it.
- ? use CSG of the torus with a cylinder (intersection)
the hardest (not too hard) part being to compute the actuel height of
the pointy part... I'm not sure it work directly, you might need some
inverse somewhere.
Have fun at http://mathworld.wolfram.com/Lemon.html
- --
Eifersucht ist die Leidenschaft, die mit Eifer sucht, was Leiden schafft.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFDIEc2s/YJ43cSjHIRAnogAJ40D4+kty7oOj3/prKXdyv+KqpdCwCgqi4z
gDlCRavdmcy4y+CnTumB68c=
=xlkV
-----END PGP SIGNATURE-----
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) |
Christoph Hormann wrote:
>
Yeah, should try the simple idea first before doing the complicated:
> isosurface {
> function {
> f_sphere(x+0.5*sin(f_th(x,z,y)),y+0.5*cos(f_th(x,z,y)),z, 1.0)
f_torus(x,z,y, -0.5, 1.0)
> }
> contained_by { box{-1, 1} }
> }
:-)
Christoph
--
POV-Ray tutorials, include files, Landscape of the week:
http://www.tu-bs.de/~y0013390/ (Last updated 24 Jul. 2005)
MegaPOV with mechanics simulation: http://megapov.inetart.net/
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) |
m.o.p.s wrote:
> Could you tell me if there is a simple way to build this shape. It's inside
> a torus when major radius < minor radius. I realise one macro ( the blu
> shape ) but it's empty, i would like to have this shape filled.
> thank you
>
> i hpe that my english is understable
>
>
>
I think you'r looking for this:
//abs(Major) < abs(Minor)
#local Major2 = Major*Major;
#local Minor2 = Minor*Minor;
intersection {
quartic {
<1, 0, 0, 0, 2, 0, 0, 2, 0,-2*(Major2+Minor2),
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 2, 0,+2*(Major2-Minor2), 0, 0, 0, 0,
1, 0,-2*(Major2+Minor2), 0, (Major2-Minor2)*(Major2-Minor2)>
inverse
}
sphere {0, sqrt(Minor2-Major2)}
bounded_by {sphere {0, sqrt(Minor2-Major2)}}
}
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 a lot, exactly what i'm looking for.
I try to finish quickly my little work and the update of my pages.
bye
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) |