POV-Ray : Newsgroups : povray.unofficial.patches : contained_by qiery Server Time
6 Oct 2024 11:01:16 EDT (-0400)
  contained_by qiery (Message 6 to 15 of 15)  
<<< Previous 5 Messages Goto Initial 10 Messages
From: Warp
Subject: Re: contained_by qiery
Date: 21 Jul 2001 23:19:26
Message: <3b5a463d@news.povray.org>
Dennis Milller <dhm### [at] mediaonenet> wrote:
: Why you can't rotate or scale the
: contained-by object independent of the isosurface itself or for that matter,
: use other types of contained by shapes (cylinder, cone, etc.).
: Anyone know?

  I already explained the most probable reason.
  The contained_by object is not an object at all. It's just a set of limits
for the isosurface calculation function. Thus you can't transform it as if
it was a regular primitive (because it isn't).
  The syntax for the contained_by object is the same as for a sphere or a
box, but only for convenience.

-- 
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}//                     - Warp -


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: contained_by qiery
Date: 22 Jul 2001 07:24:33
Message: <3b5ab7f1@news.povray.org>
In article <3b5a415a@news.povray.org> , "Dennis Milller" 
<dhm### [at] mediaonenet> wrote:

> Well to clarify, the shape of the contained_by object is very clear (a box
> or a sphere) in some points of the animations that I am working on. I'm
> trying to find out if there are any ways to modify those shapes, which are
> like a frame for the isosurface. Why you can't rotate or scale the
> contained-by object independent of the isosurface itself or for that matter,
> use other types of contained by shapes (cylinder, cone, etc.).

Well, be aware that scaling or rotating an isosurface object does work on
its container only, not the isosurface function (because its easier to
implement).  So you just have to put the transformations in the isosurface
block, not the contained_by block.


    Thorsten


____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde

Visit POV-Ray on the web: http://mac.povray.org


Post a reply to this message

From: Warp
Subject: Re: contained_by qiery
Date: 22 Jul 2001 07:44:56
Message: <3b5abcb7@news.povray.org>
Thorsten Froehlich <tho### [at] trfde> wrote:
: Well, be aware that scaling or rotating an isosurface object does work on
: its container only, not the isosurface function (because its easier to
: implement).  So you just have to put the transformations in the isosurface
: block, not the contained_by block.

  This makes no sense, and it doesn't work that way, I just tested.
  If you scale (for example non-uniformly) an isosurface, the whole object
is scaled, not the container object only. That is, if you scale non-uniformly,
the isosurface gets squeezed as well, not the container only. As it should,
as it's logical.

-- 
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}//                     - Warp -


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: contained_by qiery
Date: 22 Jul 2001 10:29:33
Message: <3b5ae34d@news.povray.org>
In article <3b5abcb7@news.povray.org> , Warp <war### [at] tagpovrayorg>  wrote:

>   This makes no sense, and it doesn't work that way, I just tested.

It used to work this way in MegaPOV, didn't it?  I remember there was some
problem with containers...

> As it should, as it's logical.

I never disputed that the behavior is illogical.


    Thorsten


____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde

Visit POV-Ray on the web: http://mac.povray.org


Post a reply to this message

From: Andy Cocker
Subject: Re: contained_by qiery
Date: 22 Jul 2001 11:37:26
Message: <3b5af336@news.povray.org>
I may have misunderstood your problem, but couldn't you intersect the
isosurface with your desired primitive ie cone, cylinder etc? Then you could
apply all your rotates and scales to the intersected primitive.

Andy

"Dennis Milller" <dhm### [at] mediaonenet> wrote in message
news:3b5a415a@news.povray.org...
> Well to clarify, the shape of the contained_by object is very clear (a box
> or a sphere) in some points of the animations that I am working on. I'm
> trying to find out if there are any ways to modify those shapes, which are
> like a frame for the isosurface. Why you can't rotate or scale the
> contained-by object independent of the isosurface itself or for that
matter,
> use other types of contained by shapes (cylinder, cone, etc.).
> Anyone know?
> thanks,
> Dennis


Post a reply to this message

From: Chris Huff
Subject: Re: contained_by qiery
Date: 22 Jul 2001 14:51:02
Message: <chrishuff-4A1D91.13494422072001@netplex.aussie.org>
In article <3b5ae34d@news.povray.org>,
 "Thorsten Froehlich" <tho### [at] trfde> wrote:

> It used to work this way in MegaPOV, didn't it?  I remember there was some
> problem with containers...

As I recall, the problem was the other way around: the containers were 
not transformed along with the function.

-- 
Christopher James Huff - chr### [at] maccom, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tagpovrayorg, http://tag.povray.org/

<><


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: contained_by qiery
Date: 22 Jul 2001 15:04:01
Message: <3b5b23a1@news.povray.org>
In article <chr### [at] netplexaussieorg> , Chris Huff
<chr### [at] maccom>  wrote:

>> It used to work this way in MegaPOV, didn't it?  I remember there was some
>> problem with containers...
>
> As I recall, the problem was the other way around: the containers were
> not transformed along with the function.

Ah, thanks!  I knew there was something but apparently I remembered it the
wrong way.

     Thorsten

BTW, this is fixed in the most recent versions, isn't it?  If not, please
remind me in the other group.

____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde

Visit POV-Ray on the web: http://mac.povray.org


Post a reply to this message

From: Dennis Milller
Subject: Re: contained_by qiery
Date: 22 Jul 2001 21:43:03
Message: <3b5b8127$1@news.povray.org>
The real question is rather simple: you can define the "container" using a
shape:
 sphere <0,0,0>, 2

but you can't perform any type of modifications to that sphere, such as

sphere <0,0,0>, 2 scale * .2

so even if it is simply defining the limits of the isosurface, which I
understand, I wonder why you can't apply scale, rotate, or other
transformations to the container.

The second question is why other shapes besides the box and sphere can't be
used; does anyone know the history/reasoning behind that?
Rather than intersecting the isosurface itself with other shapes, I just
thought it might be useful to have means to transform the container or use
other shapes directly as the container; that would be the simplest solution
for my purposes.
Best,
D.


"Andy Cocker" <big### [at] mariner9fsnetcouk> wrote in message
news:3b5af336@news.povray.org...
> I may have misunderstood your problem, but couldn't you intersect the
> isosurface with your desired primitive ie cone, cylinder etc? Then you
could
> apply all your rotates and scales to the intersected primitive.
>
> Andy
>
> "Dennis Milller" <dhm### [at] mediaonenet> wrote in message
> news:3b5a415a@news.povray.org...
> > Well to clarify, the shape of the contained_by object is very clear (a
box
> > or a sphere) in some points of the animations that I am working on. I'm
> > trying to find out if there are any ways to modify those shapes, which
are
> > like a frame for the isosurface. Why you can't rotate or scale the
> > contained-by object independent of the isosurface itself or for that
> matter,
> > use other types of contained by shapes (cylinder, cone, etc.).
> > Anyone know?
> > thanks,
> > Dennis
>
>
>


Post a reply to this message

From: Bob H 
Subject: Re: contained_by qiery
Date: 22 Jul 2001 23:35:22
Message: <3b5b9b7a@news.povray.org>
"Dennis Milller" <dhm### [at] mediaonenet> wrote in message
news:3b5b8127$1@news.povray.org...
> The real question is rather simple: you can define the "container" using a
> shape:
>  sphere <0,0,0>, 2
>
> but you can't perform any type of modifications to that sphere, such as
>
> sphere <0,0,0>, 2 scale * .2
>
> so even if it is simply defining the limits of the isosurface, which I
> understand, I wonder why you can't apply scale, rotate, or other
> transformations to the container.
>
> The second question is why other shapes besides the box and sphere can't
be
> used; does anyone know the history/reasoning behind that?
> Rather than intersecting the isosurface itself with other shapes, I just
> thought it might be useful to have means to transform the container or use
> other shapes directly as the container; that would be the simplest
solution
> for my purposes.

Simplicity of the bounding shape is most likely the reason it is box or
sphere only and not just anything else like CSG shapes, etcetera.  The
bounds must contain an equation of sorts so your suggestion is pretty much
to use an equation to contain an equation.  At least that's my uneducated
guess.
Could be much more to it than that.

Bob H.


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: contained_by qiery
Date: 23 Jul 2001 04:50:20
Message: <3b5be54c@news.povray.org>
In article <3b5b8127$1@news.povray.org> , "Dennis Milller" 
<dhm### [at] mediaonenet> wrote:

> so even if it is simply defining the limits of the isosurface, which I
> understand, I wonder why you can't apply scale, rotate, or other
> transformations to the container.

It is just a limitation as people have pointed out before.  Historically
there were bugs when transforming isosurfaces (as I pointed out before).  As
Warp pointed out, those have been fixed and now this limitation is still
there.  MegaPOV simply contains a lot of code that is still in development.
It is the way it is until it is changed.

> The second question is why other shapes besides the box and sphere can't be
> used; does anyone know the history/reasoning behind that?

Simplicity of the language and isosurface implementation.  Internally an
isosurface is only calculated if a ray intersects its simple container.  For
everything else use CSG because complex intersections are the domain of CSG,
not isosurfaces.


    Thorsten


____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde

Visit POV-Ray on the web: http://mac.povray.org


Post a reply to this message

<<< Previous 5 Messages Goto Initial 10 Messages

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.