POV-Ray : Newsgroups : povray.newusers : Transparency with touching bodies : Re: Transparency with touching bodies Server Time
2 Jul 2024 12:25:17 EDT (-0400)
  Re: Transparency with touching bodies  
From: Alain
Date: 19 Feb 2011 21:55:50
Message: <4d6082b6$1@news.povray.org>

> Alain<aze### [at] qwertyorg>  wrote:
>> You need to avoid coincident surfaces, so, you need to fudge your
>> objects dimentions a little so that ther surfaces are very close without
>> actualy touching.
>>
>> A side note:
>> You don't need to use such small values, even working in mm. A POV-unit
>> can be any "real world" unit you want, from Parsects (or more) down to
>> Armstrong and smaller... All you need to do is to make your model
>> assuming that 1 unit = 1 mm.
>> All you need to di is to remove those E-3 from your dimentions, or add
>> +3 to the expoment.
>
> Thanks for your response. My plan is to import objects from another software
> into POV-Ray. From this software I only get a huge amount of points, which have
> to meshed in POV-Ray. To change the value of one coordinate (such as the
> z-value) before meshing those points is no problem. To change the whole
> dimension of the objects is sadly not possible, the objects are not symmetric.
> Or is there any way to shrink an object which is made out of meshed points?
If you multiply all the coordinates of an object by a constant value, 
you effectively scale that object. If the object is not at the origin, 
the object will also move radialy.
Once the mesh have been created, you can scale it like any other object.
A scale like: scale<1, 1, 0.999999> will cause almost no distortion, 
shrink by 1 millionth along the Z axis, and is enough to prevent a 
coincident surfaces.
>
> I have to use these small values because I get them from the other software
> where I have to use SI-units. To test my approach I used small values too. It
> would be possible to multiply all coordinates with 1000 to get "normal" values.
> But I don't see any advantages if I would do that. Or do I overlook something?
>
>
>
>

Working in mm with units of 1 m, not realy problematic unless you also 
have some rather small values. By small, I think under 0.001mm or less.

If you use to small values, you can begin to have floating point 
precision and rounding errors.
It can manifest by areas that are suposed to be lighted been dark or 
areas that are suposed to be shadowed been lighted. It also can manifest 
itself by having light "leaking" from some corners.

If that appens, then, yes, you may need to scale everything up. Place 
all your objects into one big union and scale that union up as needed.

BUT. If all your values are within some reasonable range, there should 
be no real problem. Reasonable usualy been a range of about 4 order of 
magnitude.

Just try to not put your light to far away, like over 1000m away when 
working in mm. If you need a very distant light, use the parallel 
attribute and place it closer. "parallel" simulate a light situated at 
an "infinite" distance.



Alain


Post a reply to this message

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