POV-Ray : Newsgroups : povray.binaries.images : Normal documentation images. Quilted. Server Time
28 Nov 2025 08:46:22 EST (-0500)
  Normal documentation images. Quilted. (Message 4 to 13 of 33)  
<<< Previous 3 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Ash Holsenback
Subject: Re: Normal documentation images. Quilted.
Date: 12 Oct 2020 07:11:01
Message: <5f8439c5$1@news.povray.org>
On 10/11/20 9:22 AM, William F Pokorny wrote:
> This led me to allnormals.pov which, IIRC, is used for the normal{} 
> pattern images in the documentation. The set up is shown below and it's 
> 'wrong' as indicated for normal{ <true normal-pattern> } images(1)):

well i don't know / recall... perhaps t / d stamp can provide some 
guidance. the 1st link shows what is likely the initial load when wiki 
was being setup, the 2nd shows Jerome made a change... maybe his memory 
is better than mine!


http://wiki.povray.org/content/File:RefImgQuiltpt4.gif

http://wiki.povray.org/content/File:RefImgQuiltedNormal.png


Post a reply to this message

From: Ash Holsenback
Subject: Re: Normal documentation images. Quilted.
Date: 12 Oct 2020 07:18:23
Message: <5f843b7f$1@news.povray.org>
On 10/12/20 7:11 AM, Ash Holsenback wrote:
> On 10/11/20 9:22 AM, William F Pokorny wrote:
>> This led me to allnormals.pov which, IIRC, is used for the normal{} 
>> pattern images in the documentation. The set up is shown below and 
>> it's 'wrong' as indicated for normal{ <true normal-pattern> } images(1)):
> 
> well i don't know / recall... perhaps t / d stamp can provide some 
> guidance. the 1st link shows what is likely the initial load when wiki 
> was being setup, the 2nd shows Jerome made a change... maybe his memory 
> is better than mine!

lol... 11 and 6 years ago!!! holy crap... lately last week is ancient 
history. senility must be setting in


Post a reply to this message

From: Bald Eagle
Subject: Re: Normal documentation images. Quilted.
Date: 12 Oct 2020 14:40:01
Message: <web.5f84a1e0cc1d58b61f9dae300@news.povray.org>
William F Pokorny <ano### [at] anonymousorg> wrote:

> No doubt you found some of quilted's complications. I "think" I
> understand most of what's happening and why. We'll see.
>
> I believe any updated code should 'perturb' with the original surface
> normal in mind. I see a path to do this with flat surface stuff like
> cubes, but I don't know how to do it for curved surfaces in normal.cpp.

Maybe you could write a scene trying to express the quilted pattern in SDL as a
function?
Sometimes it's a bit difficult to translate the somewhat cryptic C++ syntax into
something intelligible.
Then at least you could have a few people play with the function and have more
eyes and minds analyzing how it all works, and where it goes wrong.

Including a note or two about how to translate the C++ to SDL (if possible)
would help future efforts, and people could begin to play with more of the
source code and patterns.   I have found this approach to be personally
educational, developmentally useful  (how many "bugs" have we found?), and it
inspires me to invent new derivative functions and patterns.


Post a reply to this message

From: Bald Eagle
Subject: Re: Normal documentation images. Quilted.
Date: 12 Oct 2020 19:45:01
Message: <web.5f84ea71cc1d58b61f9dae300@news.povray.org>
William F Pokorny <ano### [at] anonymousorg> wrote:

> I created quilted test cases and reviewed the shipped demo scenes. A
> number of other issues popped out. One of which is the 'true normal'
> results do not match what our documentation shows for quilted normals.

Perhaps I'm wrong or misreading something, but it doesn't appear that the
documentation properly describes the pattern.

http://wiki.povray.org/content/Reference:Quilted_Pattern

Just looking at the last image,
"A control value of 1 at both ends will give an "s" shaped curve, resulting in a
softer, more rounded edge."
yet the solid line is the s-shaped curve, and it says for that c1 = 0.

After skimming through the source code in patterns and normals, the basic
formula used to generate the curve seems an awful lot like a specialized form of
bicubic spline with c0 and c1 influencing the internal two control points...

but it's ... bizarrely different.
And I can't reproduce the curves and s-shape reliably.
And I don't know why they don't use a function based on 2*x, or use mod(), ...


Post a reply to this message

From: Bald Eagle
Subject: Re: Normal documentation images. Quilted.
Date: 12 Oct 2020 22:50:00
Message: <web.5f851559cc1d58b61f9dae300@news.povray.org>
Pfft.
I rolled my own and came up with more or less the same curves, but the way the
parameters influence them is different (of course...).

Maybe I can adapt this into a pigment pattern and a normal.

Do we know who made, how, and where the files are for the illustrations at:
http://wiki.povray.org/content/Reference:Quilted_Pattern ?

That would be a huge help.


Post a reply to this message


Attachments:
Download 'newquiltedpattern.png' (205 KB)

Preview of image 'newquiltedpattern.png'
newquiltedpattern.png


 

From: William F Pokorny
Subject: Re: Normal documentation images. Quilted.
Date: 13 Oct 2020 03:57:11
Message: <5f855dd7@news.povray.org>
On 10/12/20 2:35 PM, Bald Eagle wrote:
> William F Pokorny <ano### [at] anonymousorg> wrote:
...
> 
> Maybe you could write a scene trying to express the quilted pattern in SDL as a
> function?
> 
> Including a note or two about how to translate the C++ to SDL (if possible)
> would help future efforts, and people could begin to play with more of the
> source code and patterns.   
> 

Hmm. More automatic c++ -> sdl idea interesting. Some things wouldn't be 
doable at all, but certain stuff would be more or less - I guess. Busy 
with real life today and tomorrow won't leave me a lot of time, but I'll 
stick the idea in my head and start to let it bang around in there.

Bill P.


Post a reply to this message

From: William F Pokorny
Subject: Re: Normal documentation images. Quilted.
Date: 13 Oct 2020 04:06:50
Message: <5f85601a$1@news.povray.org>
On 10/12/20 7:44 PM, Bald Eagle wrote:
> William F Pokorny <ano### [at] anonymousorg> wrote:
> 
>> I created quilted test cases and reviewed the shipped demo scenes. A
>> number of other issues popped out. One of which is the 'true normal'
>> results do not match what our documentation shows for quilted normals.
> 
> Perhaps I'm wrong or misreading something, but it doesn't appear that the
> documentation properly describes the pattern.
> 
> http://wiki.povray.org/content/Reference:Quilted_Pattern
> 
> Just looking at the last image,
> "A control value of 1 at both ends will give an "s" shaped curve, resulting in a
> softer, more rounded edge."
> yet the solid line is the s-shaped curve, and it says for that c1 = 0.
> 
> After skimming through the source code in patterns and normals, the basic
> formula used to generate the curve seems an awful lot like a specialized form of
> bicubic spline with c0 and c1 influencing the internal two control points...
> 
> but it's ... bizarrely different.
> And I can't reproduce the curves and s-shape reliably.
> And I don't know why they don't use a function based on 2*x, or use mod(), ...
> 

Yes, I'm not quite sure what's going on there either.

Though I specified defaults of 1 and 1 it looked to me more like 1 and 0 
or 0 and 1 depending on how the normals flip on the half unit 
intervals... I didn't dive into it. ;-)

One of the complications is the curves as shown have one value inputs. 
The result we 'see' is a combination of three applications to three 
input values. Ahhh, as I expect you know! :-)

Bill P.


Post a reply to this message

From: Ash Holsenback
Subject: Re: Normal documentation images. Quilted.
Date: 13 Oct 2020 06:35:25
Message: <5f8582ed$1@news.povray.org>
On 10/12/20 10:47 PM, Bald Eagle wrote:
> Pfft.
> I rolled my own and came up with more or less the same curves, but the way the
> parameters influence them is different (of course...).
> 
> Maybe I can adapt this into a pigment pattern and a normal.
> 
> Do we know who made, how, and where the files are for the illustrations at:
> http://wiki.povray.org/content/Reference:Quilted_Pattern ?

well as far as who and how... don't know. the where is on the wiki... 
just click on the image to bring up revision info. given my confusion 
about your question i'm guessing my response is a swing and a miss


Post a reply to this message

From: Bald Eagle
Subject: Re: Normal documentation images. Quilted.
Date: 13 Oct 2020 14:00:01
Message: <web.5f85ea24cc1d58b61f9dae300@news.povray.org>
Ash Holsenback <no### [at] spamcom> wrote:
> On 10/12/20 10:47 PM, Bald Eagle wrote:
> > Pfft.
> > I rolled my own and came up with more or less the same curves, but the way the
> > parameters influence them is different (of course...).
> >
> > Maybe I can adapt this into a pigment pattern and a normal.
> >
> > Do we know who made, how, and where the files are for the illustrations at:
> > http://wiki.povray.org/content/Reference:Quilted_Pattern ?
>
> well as far as who and how... don't know. the where is on the wiki...
> just click on the image to bring up revision info. given my confusion
> about your question i'm guessing my response is a swing and a miss

Jim,


From the source code,
Who:

* FUNCTION
*
*   quilted_pattern

* AUTHOR
*
*   Dan Farmer & Chris Young

As for how - those function graphs didn't make themselves, so I'm wondering what
source information was used and how those graphs were generated for the
documentation.
Their existence implies some (non-POV-Ray?) file(s) that were used to graph the
function, and those might shed some additional light the issue.



-BW


Post a reply to this message

From: Bald Eagle
Subject: Re: Normal documentation images. Quilted.
Date: 13 Oct 2020 15:15:00
Message: <web.5f85fcafcc1d58b61f9dae300@news.povray.org>
"Bald Eagle" <cre### [at] netscapenet> wrote:
> Pfft.
> I rolled my own and came up with more or less the same curves, but the way the
> parameters influence them is different (of course...).
>
> Maybe I can adapt this into a pigment pattern and a normal.

Played around a bit more.
It seems that the quilted pattern uses a radial/spherical distance as the
driving parameter for the function, whereas I thought using a min max formula
for a box would give a "distance formula" that tracked the square/cubic shape.

It also seems that the quilted normal is an inverted function from the pigment
pattern, as I need to use 1-Fn(x,y,z) to get the same effect (convex face, with
concave edges)

Stock quilted in foreground (control0 0 control1 0), my function in the back
(c0=1 c1=0)

SO many things here have touched on what I learned and developed in past
projects.
rounded box isosurface
bilinear interpolation pattern
Bezier bicubic spline
space-tesselating patterns and isosurfaces
crackle/Delaunay/Voronoi wips

No ideas at this point about performance or numerical stability with regard to
the offsets, etc.


Post a reply to this message


Attachments:
Download 'newquiltedpatternandnormal.png' (93 KB)

Preview of image 'newquiltedpatternandnormal.png'
newquiltedpatternandnormal.png


 

<<< Previous 3 Messages Goto Latest 10 Messages Next 10 Messages >>>

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