|
|
In trying to make yuqk's documentation a little more complete I was
playing with a matrix.pov example scene using a checker pigment pattern
on a -z plane where I was shearing in y by x. Then I started to play
with the scene a little.
In the attached image the upper left is a shear in y by x. Upper right a
shear in x by y. In the lower left the first shear matrix in y is
followed by the one in x. These three results expected.
Then I had the thought what happens if I roll both shears into one
matrix specification. Well, if the delta values are, say, both 1.0 the
inverse matrix calculation dies due forming a singular matrix and we get
a parsing error.
If, however, I reduce one of the shear magnitudes so they are not equal
I get the result in the lower right - which was a surprise to me. I
don't understand it - sort a harmonic rotation which fragments maybe?
I'll attach the entire 'play' scene which should run with v3.8 beta
versions should others wish to play. The core of the code-play involved is:
checker
#if (0)
matrix <
1.0, 1.0, 0.0, // Shear in y by x
0.0, 1.0, 0.0,
0.0, 0.0, 1.0,
0.0, 0.0, 0.0>
matrix <
1.0, 0.0, 0.0, // Shear in x by y
0.9, 1.0, 0.0,
0.0, 0.0, 1.0,
0.0, 0.0, 0.0>
#else
matrix < // Singular matrix parse error if shear 1 & 1
1.0, 1.0, 0.0, // Shear in y by x and try also
0.9, 1.0, 0.0, // Shear in x by y
0.0, 0.0, 1.0,
0.0, 0.0, 0.0>
#end
scale 1/6
Bill P.
Post a reply to this message
Attachments:
Download 'matrixhmm.pov.txt' (3 KB)
Download 'matrixodd.jpg' (714 KB)
Preview of image 'matrixodd.jpg'
|
|