|
|
|
|
|
|
| |
| |
|
|
From: Micha Riser
Subject: Overlaping objects with different ior values
Date: 21 Jul 2002 04:19:23
Message: <3d3a6e8b@news.povray.org>
|
|
|
| |
| |
|
|
Considering two objects with ovelaping area. Like:
sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
How does POV-Ray handle this? In the intersection of the spheres there are
two ior values defined. Which one does POV use?
- Micha
Post a reply to this message
|
|
| |
| |
|
|
From: Tom Melly
Subject: Re: Overlaping objects with different ior values
Date: 21 Jul 2002 05:57:31
Message: <3d3a858b@news.povray.org>
|
|
|
| |
| |
|
|
"Micha Riser" <mri### [at] gmxnet> wrote in message
news:3d3a6e8b@news.povray.org...
> two ior values defined. Which one does POV use?
My 2c.
Since ior is defined in the finish a surface property), the overlap is
irrelavent?
The only place that this would be an issue is on co-incident surfaces, which
are a no-no anyway (for presumably exactly this kind of reason).
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Micha Riser <mri### [at] gmxnet> wrote in news:3d3a6e8b@news.povray.org
> sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
> sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
> How does POV-Ray handle this? In the intersection of the spheres there
> are two ior values defined. Which one does POV use?
If You have i.e. big box (A) and small (B) placed like :
aaaaa
abbba
abbba
abbba
aaaaa
Then in 'a' area (that is inside of object A) - ior will be as in A object
In 'b' are - with is both inside A and B - AFAIK ior will be like in 'B' -
because this object is closest to tested points - in other words - ray
intersect surface of B at last.
in area 'A' ray traveled trought A surface so ior is A
in 'B' tray traveled trought A, and later trought B - and the last value is
important
If You talk about two _ideal_ same objects in same space like
sphere { 0 1 } and sphere {0 1 } - this will always result errors, not only
in interior
--
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M
Post a reply to this message
|
|
| |
| |
|
|
From: Warp
Subject: Re: Overlaping objects with different ior values
Date: 21 Jul 2002 08:49:50
Message: <3d3aade9@news.povray.org>
|
|
|
| |
| |
|
|
Tom Melly <tom### [at] tomandlucouk> wrote:
> Since ior is defined in the finish a surface property), the overlap is
> irrelavent?
IOR should not be defined in the finish block,
but in the interior block.
--
#macro M(A,N,D,L)plane{-z,-9pigment{mandel L*9translate N color_map{[0rgb x]
[1rgb 9]}scale<D,D*3D>*1e3}rotate y*A*8}#end M(-3<1.206434.28623>70,7)M(
-1<.7438.1795>1,20)M(1<.77595.13699>30,20)M(3<.75923.07145>80,99)// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
From: Micha Riser
Subject: Re: Overlaping objects with different ior values
Date: 21 Jul 2002 12:51:19
Message: <3d3ae686@news.povray.org>
|
|
|
| |
| |
|
|
Rafal 'Raf256' Maj wrote:
> Micha Riser <mri### [at] gmxnet> wrote in news:3d3a6e8b@news.povray.org
>
>> sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
>> sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
>> How does POV-Ray handle this? In the intersection of the spheres there
>> are two ior values defined. Which one does POV use?
>
> If You have i.e. big box (A) and small (B) placed like :
>
> aaaaa
> abbba
> abbba
> abbba
> aaaaa
This case is clear as B is compleatly inside A. But what happens if A and B
only partly overlap?
>
> If You talk about two _ideal_ same objects in same space like
> sphere { 0 1 } and sphere {0 1 } - this will always result errors, not
> only in interior
>
No, that's not was I meant. Look closer at my example scene above.
- Micha
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Micha Riser <mri### [at] gmxnet> wrote in news:3d3ae686@news.povray.org
> Rafal 'Raf256' Maj wrote:
>
>> Micha Riser <mri### [at] gmxnet> wrote in news:3d3a6e8b@news.povray.org
>>
>>> sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
>>> sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
>>> How does POV-Ray handle this? In the intersection of the spheres
>>> there are two ior values defined. Which one does POV use?
>>
>> If You have i.e. big box (A) and small (B) placed like :
>>
>> aaaaa
>> abbba
>> abbba
>> abbba
>> aaaaa
>
> This case is clear as B is compleatly inside A. But what happens if A
> and B only partly overlap?
They should not overlap. At least - they can overlap in some not-connected
points, like sphere { y*0 1 } sphere { y*2 1 }. Point <0,1,0> is inside A
_OR_ inside B, the result is quite random - it deppends on implementation,
but if this is 1 separate pint - this artfact probably will not be visible.
If the overlap area is bigger, like
cone { y*0 1 y*1 1 }
cone { y*1 1 y*2 1 }
then area with shape of cone { y*1 1 y*1 1 }will have random artefacts (it
can be i.e. black pixels)
--
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Rafal 'Raf256' Maj" <raf### [at] raf256com> wrote in
news:Xns### [at] 204213191226
[...]
in other words - any objects in POV intersect, but intersection of objects
_surfaces_ can lead to errors it some cases (if objects, or it's parts are
too similar to each other)
--
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M
Post a reply to this message
|
|
| |
| |
|
|
From: Micha Riser
Subject: Re: Overlaping objects with different ior values
Date: 21 Jul 2002 13:09:03
Message: <3d3aeaae@news.povray.org>
|
|
|
| |
| |
|
|
Tom Melly wrote:
> "Micha Riser" <mri### [at] gmxnet> wrote in message
> news:3d3a6e8b@news.povray.org...
>
>> two ior values defined. Which one does POV use?
>
> Since ior is defined in the finish a surface property), the overlap is
> irrelavent?
As Warp said ior is a interior property. It is allowed to be specified in
finish only for backwards compatibility. See chapter 6.6.1 of the
documentation.
I made some further test with CSG and ior. Obviously there is also a
problem when objects with different ior ar merged together/intersected.
Consider:
merge{ // or intersection{
sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
}
Note that here ior is specified in finish where it does no longer belong to.
What ior does the resulting object have? Testing showed that POV-Ray uses
the ior value from the first object that has a finish{ior xy} defined for
the whole object.
However if I specify ior in interior as
merge{ // or intersection{
sphere{<-1,0,0>,2 pigment{rgbt 0.8} interior{ior 1}}
sphere{<1,0,0>,2 pigment{rgbt 0.8} interior{ior 1.2}}
}
I get a different result. I cannot exactly say how POV treats this case
though... anybody?
- Micha
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Micha Riser" <mri### [at] gmxnet> wrote in message
news:3d3a6e8b@news.povray.org...
> Considering two objects with ovelaping area. Like:
>
> sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
> sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
>
> How does POV-Ray handle this? In the intersection of the spheres there are
> two ior values defined. Which one does POV use?
From what I understand, the ior value comes into play whaent he ray passes
through a surface, so any time the ray passed through a surface of either
sphere, that sphere's ior value would be applied even if the surface is
inside or intersects another surface. On the other hand, if you apply a
'merge' to these two spheres, the surfaces inside the intersection are
removed so the image would come out quiet different looking.
-tgq
Post a reply to this message
|
|
| |
| |
|
|
From: Micha Riser
Subject: Re: Overlaping objects with different ior values
Date: 21 Jul 2002 13:14:54
Message: <3d3aec0d@news.povray.org>
|
|
|
| |
| |
|
|
Rafal 'Raf256' Maj wrote:
> Micha Riser <mri### [at] gmxnet> wrote in news:3d3ae686@news.povray.org
>
>> Rafal 'Raf256' Maj wrote:
>>
>>> Micha Riser <mri### [at] gmxnet> wrote in news:3d3a6e8b@news.povray.org
>>>
>>>> sphere{<-1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.5}}
>>>> sphere{<1,0,0>,2 pigment{rgbt 0.8} finish{ior 1.2}}
>>>> How does POV-Ray handle this? In the intersection of the spheres
>>>> there are two ior values defined. Which one does POV use?
>>>
>>> If You have i.e. big box (A) and small (B) placed like :
>>>
>>> aaaaa
>>> abbba
>>> abbba
>>> abbba
>>> aaaaa
>>
>> This case is clear as B is compleatly inside A. But what happens if A
>> and B only partly overlap?
>
> They should not overlap. At least - they can overlap in some not-connected
> points, like sphere { y*0 1 } sphere { y*2 1 }. Point <0,1,0> is inside A
> _OR_ inside B, the result is quite random - it deppends on implementation,
> but if this is 1 separate pint - this artfact probably will not be
> visible.
>
> If the overlap area is bigger, like
> cone { y*0 1 y*1 1 }
> cone { y*1 1 y*2 1 }
>
> then area with shape of cone { y*1 1 y*1 1 }will have random artefacts (it
> can be i.e. black pixels)
>
I think we are talking of different things. With 'overlap' I do not mean
that big parts of the *surface* overlap. Obviously this has undefined
result. What happens if the objects have a partly common interior. Maybe
csg intersection is better to make you clear what I mean:
intersection{
box{0,5 interior{ior 1.1}}
box{2,6 interior{ior 1.2}}
}
This results in a box{2,5} but what ior is used?
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|