POV-Ray : Newsgroups : povray.advanced-users : How to trace() and evaluate colour of CSG object? : Re: How to trace() and evaluate colour of CSG object? Server Time
27 Jun 2024 14:02:09 EDT (-0400)
  Re: How to trace() and evaluate colour of CSG object?  
From: none
Date: 2 Nov 2010 06:15:29
Message: <4ccfe4c1$1@news.povray.org>
2010-11-02 10:15, Le_Forgeron skrev:
> Le 02/11/2010 09:05, none a écrit :
>> I tried to declare the scene as an array of objects instead of a union,
>> and then call trace() and eval_pigment() on each object separately.
>> However, then the trace function "sees through" objects since they are
>> tested separately. For example, I get points both on a foreground object
>> and the background behind it, which should be occluded.
>>
>> Is there another way?
> 
> What about simply render your scene with the camera at the scanner spot
> (and using the right camera type according to your scanner).

I suppose I could do it that way, although it seems to require a bit of
work. If I correctly understand your idea, it would be like this.

I would first run my POV macro to generate a text file with all the
"traced" points. Then I would render the the scene (with +Q0) to get the
pigment at each pixel. I would first have to change the camera
parameters so that each pixel in the image corresponds to one of the
rays that I trace to get the 3D position of a point (not sure how to do
that, but it's probably possible). And then I would make some other
program that would match the traced points with the colour pixels.


> But notice that the "colour" that a laser-scanner would get would in
> fact be the level of reflected laser-beam in the ray direction.

Yes, that's true. But in this case I actually do want the pigment of the
object that is hit by the ray, and not a simulation of the remission of
the laser beam, so you can actually disregard the application I
described. Sorry for the confusion.


Post a reply to this message

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