summaryrefslogtreecommitdiff
path: root/manuals/chickadee/Matrices.html
diff options
context:
space:
mode:
authorDavid Thompson <dthompson2@worcester.edu>2022-10-25 07:25:01 -0400
committerDavid Thompson <dthompson2@worcester.edu>2022-10-25 07:26:05 -0400
commitd54995cad9ddf652cd2f7abb128d5d251f9454f1 (patch)
tree34c7b4676b4e3615a2a66980868b4d767c6867b6 /manuals/chickadee/Matrices.html
parentbb44696ee1d8263b58976fec1bcd8e030f97f8e4 (diff)
projects: Update chickadee for 0.9.0 release.
Diffstat (limited to 'manuals/chickadee/Matrices.html')
-rw-r--r--manuals/chickadee/Matrices.html51
1 files changed, 49 insertions, 2 deletions
diff --git a/manuals/chickadee/Matrices.html b/manuals/chickadee/Matrices.html
index 551664d..354a9ef 100644
--- a/manuals/chickadee/Matrices.html
+++ b/manuals/chickadee/Matrices.html
@@ -132,6 +132,16 @@ equivalent to the following code:
</p></dd></dl>
<dl>
+<dt id="index-matrix3_003d">Procedure: <strong>matrix3=</strong> <em>m1 m2</em></dt>
+<dd><p>Return <code>#t</code> if <var>m1</var> is the same matrix as <var>m2</var>.
+</p></dd></dl>
+
+<dl>
+<dt id="index-matrix3_002dcopy">Procedure: <strong>matrix3-copy</strong> <em>matrix</em></dt>
+<dd><p>Return a new 3x3 matrix that is a copy of <var>matrix</var>.
+</p></dd></dl>
+
+<dl>
<dt id="index-matrix3_002a">Procedure: <strong>matrix3*</strong> <em>. matrices</em></dt>
<dd><p>Return a new 3x3 matrix containing the product of multiplying all of
the given <var>matrices</var>.
@@ -172,6 +182,11 @@ matrix <var>matrix</var>.
matrix objects:
</p>
<dl>
+<dt id="index-matrix3_002dcopy_0021">Procedure: <strong>matrix3-copy!</strong> <em>src dest</em></dt>
+<dd><p>Copy the contents of matrix <var>src</var> to <var>dest</var>.
+</p></dd></dl>
+
+<dl>
<dt id="index-matrix3_002didentity_0021">Procedure: <strong>matrix3-identity!</strong> <em>matrix</em></dt>
<dd><p>Modify <var>matrix</var> in-place to contain the identity matrix.
</p></dd></dl>
@@ -247,6 +262,16 @@ equivalent to the following code:
</p></dd></dl>
<dl>
+<dt id="index-matrix4_003d">Procedure: <strong>matrix4=</strong> <em>m1 m2</em></dt>
+<dd><p>Return <code>#t</code> if <var>m1</var> is the same matrix as <var>m2</var>.
+</p></dd></dl>
+
+<dl>
+<dt id="index-matrix4_002dcopy">Procedure: <strong>matrix4-copy</strong> <em>matrix</em></dt>
+<dd><p>Return a new 4x4 matrix that is a copy of <var>matrix</var>.
+</p></dd></dl>
+
+<dl>
<dt id="index-matrix4_002a">Procedure: <strong>matrix4*</strong> <em>. matrices</em></dt>
<dd><p>Return a new 4x4 matrix containing the product of multiplying all of
the given <var>matrices</var>.
@@ -255,6 +280,14 @@ the given <var>matrices</var>.
</p></dd></dl>
<dl>
+<dt id="index-matrix4_002dinverse">Procedure: <strong>matrix4-inverse</strong> <em>matrix</em></dt>
+<dd><p>Return the inverse of <var>matrix</var>.
+</p>
+<p>A matrix multiplied by its inverse is the identity matrix, thought not
+always exactly due to the nature of floating point numbers.
+</p></dd></dl>
+
+<dl>
<dt id="index-orthographic_002dprojection">Procedure: <strong>orthographic-projection</strong> <em>left right top bottom near far</em></dt>
<dd>
<p>Return a new 4x4 matrix that represents an orthographic (2D)
@@ -297,6 +330,14 @@ axis defined by the quaternion <var>q</var>.
<var>theta</var> radians.
</p></dd></dl>
+<p>The following procedures perform in-place, destructive updates to 4x4
+matrix objects:
+</p>
+<dl>
+<dt id="index-matrix4_002dcopy_0021">Procedure: <strong>matrix4-copy!</strong> <em>src dest</em></dt>
+<dd><p>Copy the contents of matrix <var>src</var> to <var>dest</var>.
+</p></dd></dl>
+
<dl>
<dt id="index-matrix4_002didentity_0021">Procedure: <strong>matrix4-identity!</strong> <em>matrix</em></dt>
<dd><p>Modify <var>matrix</var> in-place to contain the identity matrix.
@@ -309,6 +350,12 @@ the result in the 4x4 matrix <var>dest</var>.
</p></dd></dl>
<dl>
+<dt id="index-matrix4_002dinverse_0021">Procedure: <strong>matrix4-inverse!</strong> <em>matrix target</em></dt>
+<dd><p>Compute the inverse of <var>matrix</var> and store the result in
+<var>target</var>.
+</p></dd></dl>
+
+<dl>
<dt id="index-matrix4_002dtranslate_0021">Procedure: <strong>matrix4-translate!</strong> <em>matrix x</em></dt>
<dd><p>Modify <var>matrix</var> in-place to contain a translation by <var>x</var>, a 2D
vector, a 3D vector, or a rectangle (in which case the bottom-left
@@ -334,12 +381,12 @@ axis defined by the quaternion <var>q</var>.
</p></dd></dl>
<dl>
-<dt id="index-matrix4_002d2d_002dtransform_0021">Procedure: <strong>matrix4-2d-transform!</strong> <em>matrix [#:origin] [#:position] [#:rotation] [#:scale] [#:skew]</em></dt>
+<dt id="index-matrix4_002d2d_002dtransform_0021">Procedure: <strong>matrix4-2d-transform!</strong> <em>matrix [#:origin] [#:position] [#:rotation] [#:scale] [#:shear]</em></dt>
<dd>
<p>Modify <var>matrix</var> in-place to contain the transformation described
by <var>position</var>, a 2D vector or rectangle, <var>rotation</var>, a scalar
representing a rotation about the Z axis, <var>scale</var>, a 2D vector,
-and <var>skew</var>, a 2D vector. The transformation happens with respect
+and <var>shear</var>, a 2D vector. The transformation happens with respect
to <var>origin</var>, a 2D vector. If an argument is not provided, that
particular transformation will not be included in the result.
</p></dd></dl>