|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
How do I create a flat floor which is a translucent sheet. I want to put the
light source at the top (0, 100, 0). A flat sheet at (x, 0, z) and the camera at
0, -100, 0 looking at 0,0,0.
This is quite easy to do using ORTEP to write most of the POVray file, but how
should I make the floor a translucent screen which will scatter light and allow
me to view the shadows which are formed by the objects which I want to place
between the floor and the light source.
Sorry if it is a super basic question, I just can not see how to do it.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Iodine wrote:
> This is quite easy to do using ORTEP to write most of the POVray file, but how
> should I make the floor a translucent screen which will scatter light and allow
> me to view the shadows which are formed by the objects which I want to place
> between the floor and the light source.
Maybe an opaque plane as floor with double_illuminate could work?
But I'm not entirely sure if shadows are considered for both sides.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I am not sure if we are talking at cross purposes, if you take the file
#include "colors.inc"
#include "textures.inc"
#declare Floor_Texture = texture {
pigment {color White }
finish { Dull } }
camera {
location <-4, 3, -9>
look_at <0, 0, 0>
angle 48
}
light_source {
<0, 100, 0>
color White
}
plane {
y, -1
texture { Floor_Texture }
}
torus {
1.5, 0.5
texture { Brown_Agate }
rotate <0, 150, 0>
translate <-2, 1, 0>
}
cone {
<0,1,0>, 0, <0,0,0>, 1
texture { PinkAlabaster }
scale <1, 3, 1>
translate <1, 1, 2>
}
sphere {
<0,1,0>,1
texture { Sapphire_Agate }
translate <1.5, 0, -2>
}
then you should see three objects which are viewed from above the floor as
normally viewed.
If the camera is moved to the otherside of the floor then nothing can be seen, I
do not see how the double_illuminate will work based on the description I have
seen of it
(http://wiki.povray.org/content/Reference:Double_Illuminate_Object_Modifier).
#include "colors.inc"
#include "textures.inc"
#declare Floor_Texture = texture {
pigment {color White }
finish { Dull } }
camera {
location <0, -50, 0>
look_at <0, 0, 0>
angle 48
}
light_source {
<0, 100, 0>
color White
}
plane {
y, -1
texture { Floor_Texture }
}
torus {
1.5, 0.5
texture { Brown_Agate }
rotate <0, 150, 0>
translate <-2, 1, 0>
}
cone {
<0,1,0>, 0, <0,0,0>, 1
texture { PinkAlabaster }
scale <1, 3, 1>
translate <1, 1, 2>
}
sphere {
<0,1,0>,1
texture { Sapphire_Agate }
translate <1.5, 0, -2>
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Iodine" <nomail@nomail> wrote:
> If the camera is moved to the otherside of the floor then nothing can be seen, I
> do not see how the double_illuminate will work based on the description I have
> seen of it
Hello, you have to modify the plane object like this:
plane {
y, -1
texture { Floor_Texture }
double_illuminate
}
If you want to see your others objects you should add transparence in color of
the plane (ex: color rgbf <0.5,0.5,0.5,1> rather than color White)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Am 16.08.2013 00:02, schrieb Iodine:
> How do I create a flat floor which is a translucent sheet. I want to put the
> light source at the top (0, 100, 0). A flat sheet at (x, 0, z) and the camera at
> 0, -100, 0 looking at 0,0,0.
>
> This is quite easy to do using ORTEP to write most of the POVray file, but how
> should I make the floor a translucent screen which will scatter light and allow
> me to view the shadows which are formed by the objects which I want to place
> between the floor and the light source.
>
> Sorry if it is a super basic question, I just can not see how to do it.
As already mentioned, adding the "double_illuminate" keyword to the
floor should do the trick.
As a more flexible alternative, that will allow you to trim the effect
of front- vs. backside illumination, you can use a second parameter to
the "diffuse" finish keyword, e.g.:
texture {
pigment { color rgb <1,1,1> }
finish { diffuse 0.6,0.3 }
}
In this example, 60% of all incoming light is just reflected diffusely
in the usual way, while 30% of all incoming light is emitted diffusely
on the other side.
If you use this feature, you don't need the "double_illuminate" keyword.
Note that this feature requires POV-Ray 3.7.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Thanks very much I have now got a much better picture.
I would like to ask about another issue which does apply to imaging, to a first
approxiation for a single photon energy the transmission through an object is
given by
Transmission = exp -(constant * thickness)
Is there a way to set the texture of the objects (cone, sphere, torus) so that
they attenuate light in this way. Also is it possible to set them up so for red
light the constant is different to green and blue light.
While for X-rays the spectrum of a typical tube is very wide (close to white)
for a gamma source such as Ir-192 it emitts two different wavelengths of
photons. So for this alternative light source it would be great to be able to
have two constants operating at once.
here is my current source code
#include "colors.inc"
#include "textures.inc"
#declare Floor_Texture = texture {
pigment {color rgb <1,1,1> }
finish { diffuse 0.6,0.3 } }
camera {
location <0, -20, 0>
look_at <0, 0, 0>
angle 48
}
light_source {
<0, 100, 0>
color White
}
plane {
y, -1
texture { Floor_Texture }
}
torus {
1.5, 0.5
texture { Brown_Agate }
rotate <0, 150, 0>
translate <-2, 1, 0>
}
cone {
<0,1,0>, 0, <0,0,0>, 1
texture { PinkAlabaster }
scale <1, 3, 1>
translate <1, 1, 2>
}
sphere {
<0,1,0>,1
texture { Sapphire_Agate }
translate <1.5, 0, -2>
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> I would like to ask about another issue which does apply to imaging, to a first
> approxiation for a single photon energy the transmission through an object is
> given by
>
> Transmission = exp -(constant * thickness)
>
> Is there a way to set the texture of the objects (cone, sphere, torus) so that
> they attenuate light in this way. Also is it possible to set them up so for red
> light the constant is different to green and blue light.
Yes and yes.
You can use fade_power, fade_distance and fade_color inside an interior
block for each object.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> Thanks very much I have now got a much better picture.
>
> I would like to ask about another issue which does apply to imaging, to a first
> approxiation for a single photon energy the transmission through an object is
> given by
>
> Transmission = exp -(constant * thickness)
>
> Is there a way to set the texture of the objects (cone, sphere, torus) so that
> they attenuate light in this way. Also is it possible to set them up so for red
> light the constant is different to green and blue light.
>
> While for X-rays the spectrum of a typical tube is very wide (close to white)
> for a gamma source such as Ir-192 it emitts two different wavelengths of
> photons. So for this alternative light source it would be great to be able to
> have two constants operating at once.
>
If your object have some thickness, then adding an interior block that
define a fade_color, fade_distance and fade_power will do the trick.
This will model a substance that ONLY atenuate the transmited light
without any scattering.
Normaly, you should use colour values in the 0..1 range. Small value
increase the absorbtion, large reduce it.
If your desired colour is "out of gamut", then you may have some
negative value.
It's possible to use values larger than 1. It could be concidered as
something similar to fluoressance.
If you want some single scattering, then adding the "hollow" attribure
and adding some scatering media could be closer to what you want.
Depending on the dencity of the media and the thickness of the object,
it can go from barely noticeable to opaque.
Here, a value of zero mean that the media don't affect that colour.
Large values increase the opacity of the media. There is no upper limit.
If your material is supposed to cause multiple scattering, then you need
to use version 3.7 and use the SSLT feature. Then, in the finish, you
set the translucency of your material. If the translucency is high
ehough compared to the thickness, you'll start to see through the object.
The translucency value can be related to the mean free travel of photons
through the material.
There is no upper limit. Very large values makes the material transparent.
For all 3 cenarios, you provide an RGB colour vector.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Am 17.08.2013 02:13, schrieb Alain:
> If your material is supposed to cause multiple scattering, then you need
> to use version 3.7 and use the SSLT feature. Then, in the finish, you
> set the translucency of your material. If the translucency is high
> ehough compared to the thickness, you'll start to see through the object.
> The translucency value can be related to the mean free travel of photons
> through the material.
> There is no upper limit. Very large values makes the material transparent.
It should be noted that SSLT is still far from fully integrated; for
instance, when translucency is high enough for the material to become
transparent, refraction isn't properly accounted for yet.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> Am 17.08.2013 02:13, schrieb Alain:
>
>> If your material is supposed to cause multiple scattering, then you need
>> to use version 3.7 and use the SSLT feature. Then, in the finish, you
>> set the translucency of your material. If the translucency is high
>> ehough compared to the thickness, you'll start to see through the object.
>> The translucency value can be related to the mean free travel of photons
>> through the material.
>> There is no upper limit. Very large values makes the material
>> transparent.
>
> It should be noted that SSLT is still far from fully integrated; for
> instance, when translucency is high enough for the material to become
> transparent, refraction isn't properly accounted for yet.
>
Good to know that limitation.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|