|
|
On 1/21/25 06:39, Bald Eagle wrote:
>
> "Easiest" and fastest thing to do is stop speculating and crank out some
> numbers.
>
> Have one shear matrix and another and apply them individually to a VECTOR, and
> spit out the result to #debug with vstr.
>
> Then have POV-Ray sequentially apply the matrices and spit out the result.
>
> Apply your matrix transforms to a "matrix" by matrix transforming your basic
> vectors x-hat, y-hat, and z-hat and stack the transform output in the #debug
> stream to see what matrix you're actually applying in both individual cases and
> your compound matrix transform case.
>
> You can use the result vectors to plot spheres in a scene.
> Match them up with the corners of the checkerboard pattern.
>
> If anything is mis-matched, it's probably not POV-Ray, but some matrix
> construction error.
>
> Run all of the calculations with POV-Ray matrix transforms and vectors to check
> and verify your calculations in the above post.
>
> - BW
>
Hi Bill,
Your suggestions are reasonable ways we might better see what's
happening. I suspect I've mislead you into thinking I believe something
is amiss with how matrix transforms are working or with what I expect
for a result.
My original surprise at the result in the lower right image over in pbi
came from setting up a matrix I knew was out of bounds for typical use.
I didn't expect things to work like two separate shear matrices; I
didn't know what would happen, but the result surprised me due how
dramatically it whacked the checker pattern.
I started to wonder what other useful direct matrix transformations
there might be. The 'matrix form' posted about in this thread looks
useful too, but I fully admit I'm just poking the matrix with a stick to
see what happens. To some extent, I wonder about why it does what it
does, but I care more about whether what it does might be useful.
The isosurface animation was itself another way to verify behavior.
There is the usual pattern space to function space inversion. I
un-inverted the rotation so it looked like the checker rotation. I left
the scaling as is because scaling up of the function's coordinate space
shrinks the isosurface result here - keeping the results in a fixed
view/frame, so to speak.
I ran the animation out only to frame 50, but I did spot checks at
frame_numbers 100 through 900 stepping by 100. An image of those renders
is attached.
Bill P.
Post a reply to this message
Attachments:
Download 'matrixplayasiso_frm100__900.png' (33 KB)
Preview of image 'matrixplayasiso_frm100__900.png'
|
|