POV-Ray : Newsgroups : povray.binaries.images : Lathe. Bezier_spline. Problem : Re: Lathe. Bezier_spline. Problem Server Time
18 May 2024 09:57:31 EDT (-0400)
  Re: Lathe. Bezier_spline. Problem  
From: William F Pokorny
Date: 3 May 2016 12:32:46
Message: <5728d2ae$1@news.povray.org>
On 05/03/2016 08:44 AM, clipka wrote:
> Am 03.05.2016 um 14:22 schrieb William F Pokorny:
>
>> I have captured the code you posted to github as another test. It
>> renders OK in the copy of code where I turned off the current checking.
>
> Does it also compute the surface orientation properly?
>

Well got hung up for the morning when LanuHum's shape rendered initially 
inside out.

Finally ran it down to the fact the ordering of the points in Y flips 
the surface normal of lathes - behavior which is news to me. This is an 
issue apart from any others we have running in this thread.

I created a version of LanuHum's point set where I shifted all X 
coordinates positive. In the attached image the top row is this point 
list, which starts at the top and moves downward, used in a 
linear_spline. The green result is the inside texture. The columns are 
various rotations of the base lathe.

The row at the bottom is the same point set, but with the points 
re-ordered in the linear_spline specification so the Y coordinate's 
start at the bottom and move upward. We now get shapes which have the 
correct normals.

The lathe of course can have folds - a class of tangled curves we've 
ignored in this discussion thus far - so we cannot just sort by y 
coordinate to normalize the normals so to speak. I am unsure at the 
moment what happens with the normals in Y folds as I've not tried it.

And down the rabbit hole we go. :-)

Will probably be tomorrow before I get back to looking at the original 
questions.

Bill P.


Post a reply to this message


Attachments:
Download 'y_orderingflipslathenormal.jpg' (61 KB)

Preview of image 'y_orderingflipslathenormal.jpg'
y_orderingflipslathenormal.jpg


 

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