%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/thread-self/root/proc/self/root/usr/share/doc/imath-devel/html/classes/
Upload File :
Create Path :
Current File : //proc/thread-self/root/proc/self/root/usr/share/doc/imath-devel/html/classes/Matrix33.html


<!doctype html>

<html>
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Matrix33 &#8212; Imath Documentation</title>
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    <link rel="stylesheet" href="../_static/bizstyle.css" type="text/css" />
    
    <script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
    <script src="../_static/jquery.js"></script>
    <script src="../_static/underscore.js"></script>
    <script src="../_static/doctools.js"></script>
    <script async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
    <script src="../_static/bizstyle.js"></script>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Matrix44" href="Matrix44.html" />
    <link rel="prev" title="Matrix22" href="Matrix22.html" />
    <meta name="viewport" content="width=device-width,initial-scale=1.0" />
    <!--[if lt IE 9]>
    <script src="_static/css3-mediaqueries.js"></script>
    <![endif]-->
  </head><body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="Matrix44.html" title="Matrix44"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="Matrix22.html" title="Matrix22"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../index.html">Imath</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">Matrix33</a></li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="matrix33">
<h1>Matrix33<a class="headerlink" href="#matrix33" title="Permalink to this headline">¶</a></h1>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1">#include &lt;Imath/ImathMatrix.h&gt;</span>
</pre></div>
</div>
<p>The <code class="docutils literal notranslate"><span class="pre">Matrix33</span></code> class template represents a 3x3 matrix, with
predefined typedefs for <code class="docutils literal notranslate"><span class="pre">float</span></code> and <code class="docutils literal notranslate"><span class="pre">double</span></code>.</p>
<p>There are also various utility functions that operate on matrices
defined in <code class="docutils literal notranslate"><span class="pre">ImathMatrixAlgo.h</span></code> and described in <a class="reference internal" href="../functions/matrix.html#matrix-functions"><span class="std std-ref">Matrix
Functions</span></a>.</p>
<p>Example:</p>
<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf">&lt;Imath/ImathMatrix.h&gt;</span><span class="cp"></span>
<span class="cp">#include</span> <span class="cpf">&lt;Imath/ImathMatrixAlgo.h&gt;</span><span class="cp"></span>

<span class="kt">void</span>
<span class="nf">matrix33_example</span><span class="p">()</span>
<span class="p">{</span>
    <span class="n">Imath</span><span class="o">::</span><span class="n">M33f</span> <span class="n">M</span> <span class="p">(</span><span class="n">Imath</span><span class="o">::</span><span class="n">UNINITIALIZED</span><span class="p">);</span> <span class="c1">// uninitialized</span>

    <span class="n">M</span><span class="p">.</span><span class="n">makeIdentity</span><span class="p">();</span>
    <span class="n">assert</span> <span class="p">(</span><span class="n">M</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span> <span class="o">==</span> <span class="mf">1.0f</span><span class="p">);</span>
    <span class="n">assert</span> <span class="p">(</span><span class="n">M</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="mf">0.0f</span><span class="p">);</span>

    <span class="n">Imath</span><span class="o">::</span><span class="n">M33f</span> <span class="n">Minv</span> <span class="o">=</span> <span class="n">M</span><span class="p">.</span><span class="n">inverse</span><span class="p">();</span>

    <span class="n">Imath</span><span class="o">::</span><span class="n">M33f</span> <span class="n">R</span><span class="p">;</span>
    <span class="n">assert</span> <span class="p">(</span><span class="n">R</span> <span class="o">==</span> <span class="n">Imath</span><span class="o">::</span><span class="n">identity33f</span><span class="p">);</span>

    <span class="n">R</span><span class="p">.</span><span class="n">rotate</span> <span class="p">(</span><span class="n">M_PI</span><span class="o">/</span><span class="mi">4</span><span class="p">);</span>
    
    <span class="n">M</span> <span class="o">=</span> <span class="n">R</span> <span class="o">*</span> <span class="n">M</span><span class="p">;</span>

    <span class="n">Imath</span><span class="o">::</span><span class="n">V3f</span> <span class="n">v3</span> <span class="p">(</span><span class="mf">1.0f</span><span class="p">,</span> <span class="mf">0.0f</span><span class="p">,</span> <span class="mf">0.0f</span><span class="p">);</span>
    <span class="n">Imath</span><span class="o">::</span><span class="n">V3f</span> <span class="n">r3</span> <span class="o">=</span> <span class="n">v3</span> <span class="o">*</span> <span class="n">M</span><span class="p">;</span>

    <span class="n">assert</span> <span class="p">(</span><span class="n">r3</span><span class="p">.</span><span class="n">equalWithAbsError</span> <span class="p">(</span><span class="n">Imath</span><span class="o">::</span><span class="n">V3f</span> <span class="p">(</span><span class="mf">0.707107f</span><span class="p">,</span> <span class="mf">0.7071070f</span><span class="p">,</span> <span class="mf">0.0f</span><span class="p">),</span> <span class="mf">1e-6f</span><span class="p">));</span>
<span class="p">}</span>
</pre></div>
</div>
<dl class="cpp type">
<dt id="_CPPv4N5Imath4M33fE">
<span id="_CPPv3N5Imath4M33fE"></span><span id="_CPPv2N5Imath4M33fE"></span><span id="Imath::M33f"></span><span class="target" id="_imath_matrix_8h_1af3fbbf1d16aea3d00b872d4fd857a34d"></span><em class="property">typedef </em><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;float&gt; <code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">M33f</code><a class="headerlink" href="#_CPPv4N5Imath4M33fE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>3x3 matrix of float </p>
</dd></dl>

<dl class="cpp type">
<dt id="_CPPv4N5Imath4M33dE">
<span id="_CPPv3N5Imath4M33dE"></span><span id="_CPPv2N5Imath4M33dE"></span><span id="Imath::M33d"></span><span class="target" id="_imath_matrix_8h_1aa8d4d68d4050c99010f1e28138773d55"></span><em class="property">typedef </em><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;double&gt; <code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">M33d</code><a class="headerlink" href="#_CPPv4N5Imath4M33dE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>3x3 matrix of double </p>
</dd></dl>

<dl class="cpp class">
<dt id="_CPPv4I0EN5Imath8Matrix33E">
<span id="_CPPv3I0EN5Imath8Matrix33E"></span><span id="_CPPv2I0EN5Imath8Matrix33E"></span>template&lt;class <code class="sig-name descname">T</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33"></span><em class="property">class </em><code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">Matrix33</code><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix33E" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>3x3 transformation matrix </p>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Direct access to elements</p>
<dl class="cpp var">
<dt id="_CPPv4N5Imath8Matrix331xE">
<span id="_CPPv3N5Imath8Matrix331xE"></span><span id="_CPPv2N5Imath8Matrix331xE"></span><span id="Imath::Matrix33::x__TAA"></span><span class="target" id="class_imath_1_1_matrix33_1a3d442ef887d60504fbb37474d1484e63"></span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <code class="sig-name descname">x</code>[3][3]<a class="headerlink" href="#_CPPv4N5Imath8Matrix331xE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Matrix elements. </p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Constructors and Assignment</p>
<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338Matrix33E13Uninitialized">
<span id="_CPPv3N5Imath8Matrix338Matrix33E13Uninitialized"></span><span id="_CPPv2N5Imath8Matrix338Matrix33E13Uninitialized"></span><span id="Imath::Matrix33::Matrix33__Uninitialized"></span><span class="target" id="class_imath_1_1_matrix33_1a158db0a5b7a6409eea1a9b49bd54d75b"></span><em class="property">inline</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span>Uninitialized<span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338Matrix33E13Uninitialized" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Uninitialized. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338Matrix33Ev">
<span id="_CPPv3N5Imath8Matrix338Matrix33Ev"></span><span id="_CPPv2N5Imath8Matrix338Matrix33Ev"></span><span id="Imath::Matrix33::Matrix33CE"></span><span class="target" id="class_imath_1_1_matrix33_1ad718efa6b544ac23a313de4c577cfe9e"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338Matrix33Ev" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Default constructor: initialize to identity 1 0 0 0 1 0 0 0 1. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338Matrix33E1T">
<span id="_CPPv3N5Imath8Matrix338Matrix33E1T"></span><span id="_CPPv2N5Imath8Matrix338Matrix33E1T"></span><span id="Imath::Matrix33::Matrix33__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1ae35265c7afbbf232219e359cf8d8b777"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338Matrix33E1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Initialize to scalar constant a a a a a a a a a. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338Matrix33EAL3E_AL3E_K1T">
<span id="_CPPv3N5Imath8Matrix338Matrix33EAL3E_AL3E_K1T"></span><span id="_CPPv2N5Imath8Matrix338Matrix33EA3_A3_K1T"></span><span id="Imath::Matrix33::Matrix33__TCAACE"></span><span class="target" id="class_imath_1_1_matrix33_1a4247dd0cb9b367d403e8d28baf6054aa"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em>[3][3]<span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338Matrix33EAL3E_AL3E_K1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Construct from 3x3 array a[0][0] a[0][1] a[0][2] a[1][0] a[1][1] a[1][2] a[2][0] a[2][1] a[2][2]. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338Matrix33E1T1T1T1T1T1T1T1T1T">
<span id="_CPPv3N5Imath8Matrix338Matrix33E1T1T1T1T1T1T1T1T1T"></span><span id="_CPPv2N5Imath8Matrix338Matrix33E1T1T1T1T1T1T1T1T1T"></span><span id="Imath::Matrix33::Matrix33__T.T.T.T.T.T.T.T.TCE"></span><span class="target" id="class_imath_1_1_matrix33_1a8aff87a53608f4fe6df3dedc4d8d13a3"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>b</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>c</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>d</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>e</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>f</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>g</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>h</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>i</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338Matrix33E1T1T1T1T1T1T1T1T1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Construct from given scalar values a b c d e f g h i. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338Matrix33ERK8Matrix33">
<span id="_CPPv3N5Imath8Matrix338Matrix33ERK8Matrix33"></span><span id="_CPPv2N5Imath8Matrix338Matrix33ERK8Matrix33"></span><span id="Imath::Matrix33::Matrix33__Matrix33CRCE"></span><span class="target" id="class_imath_1_1_matrix33_1aa9b70d593208041a7185d3bbcfd9f204"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4N5Imath8Matrix338Matrix33ERK8Matrix33" title="Imath::Matrix33::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338Matrix33ERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Copy constructor. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338Matrix33ERK8Matrix33I1SE">
<span id="_CPPv3I0EN5Imath8Matrix338Matrix33ERK8Matrix33I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix338Matrix33ERK8Matrix33I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ab94389681d3d9bf6b24396009447c9d0"></span><em class="property">inline</em> <em class="property">explicit</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix33</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338Matrix33ERK8Matrix33I1SE" title="Imath::Matrix33::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338Matrix33ERK8Matrix33I1SE" title="Imath::Matrix33::Matrix33::S">S</a>&gt; &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338Matrix33ERK8Matrix33I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Construct from <a class="reference internal" href="#class_imath_1_1_matrix33"><span class="std std-ref">Matrix33</span></a> of another base type. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33aSERK8Matrix33">
<span id="_CPPv3N5Imath8Matrix33aSERK8Matrix33"></span><span id="_CPPv2N5Imath8Matrix33aSERK8Matrix33"></span><span id="Imath::Matrix33::assign-operator__Matrix33CRCE"></span><span class="target" id="class_imath_1_1_matrix33_1ae7e12e6fa6da1d52d8b63f717633a6a7"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33aSERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Assignment operator. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33aSE1T">
<span id="_CPPv3N5Imath8Matrix33aSE1T"></span><span id="_CPPv2N5Imath8Matrix33aSE1T"></span><span id="Imath::Matrix33::assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1a5e2d46f0be98793a2f92e56b748a0244"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33aSE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Assignment from scalar. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33D0Ev">
<span id="_CPPv3N5Imath8Matrix33D0Ev"></span><span id="_CPPv2N5Imath8Matrix33D0Ev"></span><span id="Imath::Matrix33::~Matrix33"></span><span class="target" id="class_imath_1_1_matrix33_1ad4a56c899baccbb1e6e53ed9e53f392b"></span><code class="sig-name descname">~Matrix33</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em> = default<a class="headerlink" href="#_CPPv4N5Imath8Matrix33D0Ev" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Destructor. </p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Compatibility with Sb</p>
<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338getValueEv">
<span id="_CPPv3N5Imath8Matrix338getValueEv"></span><span id="_CPPv2N5Imath8Matrix338getValueEv"></span><span id="Imath::Matrix33::getValue"></span><span class="target" id="class_imath_1_1_matrix33_1ab99bc3868323355e681b6642d0d22298"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> *<code class="sig-name descname">getValue</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338getValueEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return a raw pointer to the array of values. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix338getValueEv">
<span id="_CPPv3NK5Imath8Matrix338getValueEv"></span><span id="_CPPv2NK5Imath8Matrix338getValueEv"></span><span id="Imath::Matrix33::getValueC"></span><span class="target" id="class_imath_1_1_matrix33_1a95199602e3bee2194eef4511996b472e"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> *<code class="sig-name descname">getValue</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix338getValueEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return a raw pointer to the array of values. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0ENK5Imath8Matrix338getValueEvR8Matrix33I1SE">
<span id="_CPPv3I0ENK5Imath8Matrix338getValueER8Matrix33I1SE"></span><span id="_CPPv2I0ENK5Imath8Matrix338getValueER8Matrix33I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1abc65295833a85696d4fff9899366da4c"></span><em class="property">inline</em> void <code class="sig-name descname">getValue</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix338getValueEvR8Matrix33I1SE" title="Imath::Matrix33::getValue::S">S</a>&gt; &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0ENK5Imath8Matrix338getValueEvR8Matrix33I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the value in <code class="docutils literal notranslate"><span class="pre">v</span></code> </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setValueER8Matrix33RK8Matrix33I1SE">
<span id="_CPPv3I0EN5Imath8Matrix338setValueERK8Matrix33I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix338setValueERK8Matrix33I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1aee8b811e6069dc8a1964f76270c5c139"></span><em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setValue</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setValueER8Matrix33RK8Matrix33I1SE" title="Imath::Matrix33::setValue::S">S</a>&gt; &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setValueER8Matrix33RK8Matrix33I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set the value. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix3312setTheMatrixER8Matrix33RK8Matrix33I1SE">
<span id="_CPPv3I0EN5Imath8Matrix3312setTheMatrixERK8Matrix33I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix3312setTheMatrixERK8Matrix33I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a20a8fc0a58e1fbc8509173eeeccaec40"></span><em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setTheMatrix</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix3312setTheMatrixER8Matrix33RK8Matrix33I1SE" title="Imath::Matrix33::setTheMatrix::S">S</a>&gt; &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix3312setTheMatrixER8Matrix33RK8Matrix33I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set the value. </p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Arithmetic and Comparison</p>
<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33eqERK8Matrix33">
<span id="_CPPv3NK5Imath8Matrix33eqERK8Matrix33"></span><span id="_CPPv2NK5Imath8Matrix33eqERK8Matrix33"></span><span id="Imath::Matrix33::eq-operator__Matrix33CRCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a85837da9103cb550ef1a30277b6427a8"></span><em class="property">inline</em> <em class="property">constexpr</em> bool <code class="sig-name descname">operator==</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33eqERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Equality. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33neERK8Matrix33">
<span id="_CPPv3NK5Imath8Matrix33neERK8Matrix33"></span><span id="_CPPv2NK5Imath8Matrix33neERK8Matrix33"></span><span id="Imath::Matrix33::neq-operator__Matrix33CRCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a5d8e342f71e844aa99bc626dedddcbfb"></span><em class="property">inline</em> <em class="property">constexpr</em> bool <code class="sig-name descname">operator!=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33neERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Inequality. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix3317equalWithAbsErrorERK8Matrix33I1TE1T">
<span id="_CPPv3NK5Imath8Matrix3317equalWithAbsErrorERK8Matrix33I1TE1T"></span><span id="_CPPv2NK5Imath8Matrix3317equalWithAbsErrorERK8Matrix33I1TE1T"></span><span id="Imath::Matrix33::equalWithAbsError__Matrix33:T:CR.TCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a94424962b0fc4500991e39060a4a59ff"></span><em class="property">inline</em> <em class="property">constexpr</em> bool <code class="sig-name descname">equalWithAbsError</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<em>v</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>e</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix3317equalWithAbsErrorERK8Matrix33I1TE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Compare two matrices and test if they are “approximately equal”: </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>True if the coefficients of this and <code class="docutils literal notranslate"><span class="pre">m</span></code> are the same with an absolute error of no more than e, i.e., for all i, j: <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nb">abs</span> <span class="p">(</span><span class="n">this</span><span class="p">[</span><span class="n">i</span><span class="p">][</span><span class="n">j</span><span class="p">]</span> <span class="o">-</span> <span class="n">m</span><span class="p">[</span><span class="n">i</span><span class="p">][</span><span class="n">j</span><span class="p">])</span> <span class="o">&lt;=</span> <span class="n">e</span>
</pre></div>
</div>
 </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix3317equalWithRelErrorERK8Matrix33I1TE1T">
<span id="_CPPv3NK5Imath8Matrix3317equalWithRelErrorERK8Matrix33I1TE1T"></span><span id="_CPPv2NK5Imath8Matrix3317equalWithRelErrorERK8Matrix33I1TE1T"></span><span id="Imath::Matrix33::equalWithRelError__Matrix33:T:CR.TCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a0cd968856c30f04ee2d8d1bda1aafc90"></span><em class="property">inline</em> <em class="property">constexpr</em> bool <code class="sig-name descname">equalWithRelError</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<em>v</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>e</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix3317equalWithRelErrorERK8Matrix33I1TE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Compare two matrices and test if they are “approximately equal”: </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>True if the coefficients of this and m are the same with a relative error of no more than e, i.e., for all i, j: <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nb">abs</span> <span class="p">(</span><span class="n">this</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">v</span><span class="p">[</span><span class="n">i</span><span class="p">][</span><span class="n">j</span><span class="p">])</span> <span class="o">&lt;=</span> <span class="n">e</span> <span class="o">*</span> <span class="nb">abs</span> <span class="p">(</span><span class="n">this</span><span class="p">[</span><span class="n">i</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
</pre></div>
</div>
 </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33pLERK8Matrix33">
<span id="_CPPv3N5Imath8Matrix33pLERK8Matrix33"></span><span id="_CPPv2N5Imath8Matrix33pLERK8Matrix33"></span><span id="Imath::Matrix33::add-assign-operator__Matrix33CRCE"></span><span class="target" id="class_imath_1_1_matrix33_1ae857641567e326527f8130b23e86a1c6"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator+=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33pLERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise addition. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33pLE1T">
<span id="_CPPv3N5Imath8Matrix33pLE1T"></span><span id="_CPPv2N5Imath8Matrix33pLE1T"></span><span id="Imath::Matrix33::add-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1a12e8963afb8c64d52c47bfa84dea0a26"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator+=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33pLE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise addition. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33plERK8Matrix33">
<span id="_CPPv3NK5Imath8Matrix33plERK8Matrix33"></span><span id="_CPPv2NK5Imath8Matrix33plERK8Matrix33"></span><span id="Imath::Matrix33::add-operator__Matrix33CRCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a28cd421e3ad5f7dcc29b6a06ace6109a"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">operator+</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33plERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise addition. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33mIERK8Matrix33">
<span id="_CPPv3N5Imath8Matrix33mIERK8Matrix33"></span><span id="_CPPv2N5Imath8Matrix33mIERK8Matrix33"></span><span id="Imath::Matrix33::sub-assign-operator__Matrix33CRCE"></span><span class="target" id="class_imath_1_1_matrix33_1a12cd6c7544abfbc7b0c5c1617d791235"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator-=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33mIERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise subtraction. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33mIE1T">
<span id="_CPPv3N5Imath8Matrix33mIE1T"></span><span id="_CPPv2N5Imath8Matrix33mIE1T"></span><span id="Imath::Matrix33::sub-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1af99dd07a52ff1efe5832eef213c603cc"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator-=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33mIE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise subtraction. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33miERK8Matrix33">
<span id="_CPPv3NK5Imath8Matrix33miERK8Matrix33"></span><span id="_CPPv2NK5Imath8Matrix33miERK8Matrix33"></span><span id="Imath::Matrix33::sub-operator__Matrix33CRCCE"></span><span class="target" id="class_imath_1_1_matrix33_1aa989a246310b5a7005a55a8360c38d9f"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">operator-</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33miERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise subtraction. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33miEv">
<span id="_CPPv3NK5Imath8Matrix33miEv"></span><span id="_CPPv2NK5Imath8Matrix33miEv"></span><span id="Imath::Matrix33::sub-operatorCCE"></span><span class="target" id="class_imath_1_1_matrix33_1afba47913ad4236ce64039b895cf6e960"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">operator-</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33miEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise multiplication by -1. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix336negateEv">
<span id="_CPPv3N5Imath8Matrix336negateEv"></span><span id="_CPPv2N5Imath8Matrix336negateEv"></span><span id="Imath::Matrix33::negateCE"></span><span class="target" id="class_imath_1_1_matrix33_1aa83679b969db209e2c0085e10718f95d"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">negate</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix336negateEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise multiplication by -1. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33mLE1T">
<span id="_CPPv3N5Imath8Matrix33mLE1T"></span><span id="_CPPv2N5Imath8Matrix33mLE1T"></span><span id="Imath::Matrix33::mul-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1a0d5e4008fa4298219b1f518a0f4a8b12"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator*=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33mLE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise multiplication. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33mlE1T">
<span id="_CPPv3NK5Imath8Matrix33mlE1T"></span><span id="_CPPv2NK5Imath8Matrix33mlE1T"></span><span id="Imath::Matrix33::mul-operator__TCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a78071235eba4f9b02f6534a426fde28d"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">operator*</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33mlE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise multiplication. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33dVE1T">
<span id="_CPPv3N5Imath8Matrix33dVE1T"></span><span id="_CPPv2N5Imath8Matrix33dVE1T"></span><span id="Imath::Matrix33::div-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1af24d9b56881cf0f14a47a417d783d63c"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator/=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33dVE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise division. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33dvE1T">
<span id="_CPPv3NK5Imath8Matrix33dvE1T"></span><span id="_CPPv2NK5Imath8Matrix33dvE1T"></span><span id="Imath::Matrix33::div-operator__TCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a41de7f9454984ea241b761172442801d"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">operator/</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33dvE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Component-wise division. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33mLERK8Matrix33">
<span id="_CPPv3N5Imath8Matrix33mLERK8Matrix33"></span><span id="_CPPv2N5Imath8Matrix33mLERK8Matrix33"></span><span id="Imath::Matrix33::mul-assign-operator__Matrix33CRCE"></span><span class="target" id="class_imath_1_1_matrix33_1a72c327bf0fa994304976c98e40328f2c"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">operator*=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33mLERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Matrix-matrix multiplication. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33mlERK8Matrix33">
<span id="_CPPv3NK5Imath8Matrix33mlERK8Matrix33"></span><span id="_CPPv2NK5Imath8Matrix33mlERK8Matrix33"></span><span id="Imath::Matrix33::mul-operator__Matrix33CRCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a02a2d51f47e0aaf381dce7dd7298ebef"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">operator*</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33mlERK8Matrix33" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Matrix-matrix multiplication. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0ENK5Imath8Matrix3313multVecMatrixEvRK4Vec2I1SER4Vec2I1SE">
<span id="_CPPv3I0ENK5Imath8Matrix3313multVecMatrixERK4Vec2I1SER4Vec2I1SE"></span><span id="_CPPv2I0ENK5Imath8Matrix3313multVecMatrixERK4Vec2I1SER4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ad95153b09d7180178a14a5a4b7a019ed"></span><em class="property">inline</em> void <code class="sig-name descname">multVecMatrix</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix3313multVecMatrixEvRK4Vec2I1SER4Vec2I1SE" title="Imath::Matrix33::multVecMatrix::S">S</a>&gt; &amp;<em>src</em>, <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix3313multVecMatrixEvRK4Vec2I1SER4Vec2I1SE" title="Imath::Matrix33::multVecMatrix::S">S</a>&gt; &amp;<em>dst</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0ENK5Imath8Matrix3313multVecMatrixEvRK4Vec2I1SER4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Vector-matrix multiplication: a homogeneous transformation by computing <a class="reference internal" href="Vec3.html#class_imath_1_1_vec3"><span class="std std-ref">Vec3</span></a> (src.x, src.y, 1) * m and dividing by the result’s third element. </p>
<p><dl class="simple">
<dt><strong>Parameters</strong></dt><dd><ul class="breatheparameterlist simple">
<li><p><code class="docutils literal notranslate"><span class="pre">[in]</span> <span class="pre">src</span></code>: The input vector </p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">[out]</span> <span class="pre">dst</span></code>: The output vector </p></li>
</ul>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0ENK5Imath8Matrix3313multDirMatrixEvRK4Vec2I1SER4Vec2I1SE">
<span id="_CPPv3I0ENK5Imath8Matrix3313multDirMatrixERK4Vec2I1SER4Vec2I1SE"></span><span id="_CPPv2I0ENK5Imath8Matrix3313multDirMatrixERK4Vec2I1SER4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a437897a92d58bb8e75592d0c81593ce9"></span><em class="property">inline</em> void <code class="sig-name descname">multDirMatrix</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix3313multDirMatrixEvRK4Vec2I1SER4Vec2I1SE" title="Imath::Matrix33::multDirMatrix::S">S</a>&gt; &amp;<em>src</em>, <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix3313multDirMatrixEvRK4Vec2I1SER4Vec2I1SE" title="Imath::Matrix33::multDirMatrix::S">S</a>&gt; &amp;<em>dst</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0ENK5Imath8Matrix3313multDirMatrixEvRK4Vec2I1SER4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Vector-matrix multiplication: multiply <code class="docutils literal notranslate"><span class="pre">src</span></code> by the upper left 2x2 submatrix, ignoring the rest of matrix. </p>
<p><dl class="simple">
<dt><strong>Parameters</strong></dt><dd><ul class="breatheparameterlist simple">
<li><p><code class="docutils literal notranslate"><span class="pre">[in]</span> <span class="pre">src</span></code>: The input vector </p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">[out]</span> <span class="pre">dst</span></code>: The output vector </p></li>
</ul>
</dd>
</dl>
</p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Maniplation</p>
<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix3312makeIdentityEv">
<span id="_CPPv3N5Imath8Matrix3312makeIdentityEv"></span><span id="_CPPv2N5Imath8Matrix3312makeIdentityEv"></span><span id="Imath::Matrix33::makeIdentity"></span><span class="target" id="class_imath_1_1_matrix33_1a7d1639718713b5cc9c8a2d3cc0219a9d"></span><em class="property">inline</em> void <code class="sig-name descname">makeIdentity</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix3312makeIdentityEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set to the identity matrix. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix339transposeEv">
<span id="_CPPv3N5Imath8Matrix339transposeEv"></span><span id="_CPPv2N5Imath8Matrix339transposeEv"></span><span id="Imath::Matrix33::transposeCE"></span><span class="target" id="class_imath_1_1_matrix33_1a8f4c9e64bb1922b8942726c27b8ff52e"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">transpose</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix339transposeEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Transpose. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix3310transposedEv">
<span id="_CPPv3NK5Imath8Matrix3310transposedEv"></span><span id="_CPPv2NK5Imath8Matrix3310transposedEv"></span><span id="Imath::Matrix33::transposedCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a65060853dec3c117beb311a94b40c3b6"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> <code class="sig-name descname">transposed</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix3310transposedEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the transpose. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix336invertEb">
<span id="_CPPv3N5Imath8Matrix336invertEb"></span><span id="_CPPv2N5Imath8Matrix336invertEb"></span><span id="Imath::Matrix33::invert__bCE"></span><span class="target" id="class_imath_1_1_matrix33_1afe09b5f747ce29d09c645a6d5e74eb02"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">invert</code><span class="sig-paren">(</span>bool <em>singExc</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Imath8Matrix336invertEb" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Invert in place using the determinant. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const reference to this </p>
</dd>
<dt><strong>Parameters</strong></dt><dd><ul class="breatheparameterlist simple">
<li><p><code class="docutils literal notranslate"><span class="pre">singExc</span></code>: If true, throw an exception if the matrix cannot be inverted. </p></li>
</ul>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix336invertEv">
<span id="_CPPv3N5Imath8Matrix336invertEv"></span><span id="_CPPv2N5Imath8Matrix336invertEv"></span><span id="Imath::Matrix33::invertCE"></span><span class="target" id="class_imath_1_1_matrix33_1adaf3b649d3654561eb153d0d9332a7d2"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">invert</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix336invertEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Invert in place using the determinant. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const reference to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix337inverseEb">
<span id="_CPPv3NK5Imath8Matrix337inverseEb"></span><span id="_CPPv2NK5Imath8Matrix337inverseEb"></span><span id="Imath::Matrix33::inverse__bCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a89ea4efd56e95987a9470a46b121eee2"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; <code class="sig-name descname">inverse</code><span class="sig-paren">(</span>bool <em>singExc</em><span class="sig-paren">)</span> <em class="property">const</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix337inverseEb" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the inverse using the determinant, leaving this unmodified. </p>
<p><dl class="simple">
<dt><strong>Parameters</strong></dt><dd><ul class="breatheparameterlist simple">
<li><p><code class="docutils literal notranslate"><span class="pre">singExc</span></code>: If true, throw an exception if the matrix cannot be inverted. </p></li>
</ul>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix337inverseEv">
<span id="_CPPv3NK5Imath8Matrix337inverseEv"></span><span id="_CPPv2NK5Imath8Matrix337inverseEv"></span><span id="Imath::Matrix33::inverseCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a4e09124911973b0dc022ac2d72c333ba"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; <code class="sig-name descname">inverse</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix337inverseEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the inverse using the determinant, leaving this unmodified. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338gjInvertEb">
<span id="_CPPv3N5Imath8Matrix338gjInvertEb"></span><span id="_CPPv2N5Imath8Matrix338gjInvertEb"></span><span id="Imath::Matrix33::gjInvert__b"></span><span class="target" id="class_imath_1_1_matrix33_1a37e32515cea117c25f5d29ea1938b23f"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">gjInvert</code><span class="sig-paren">(</span>bool <em>singExc</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Imath8Matrix338gjInvertEb" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Invert in place using the Gauss-Jordan method. </p>
<p>Significantly slower but more accurate than <a class="reference internal" href="#class_imath_1_1_matrix33_1adaf3b649d3654561eb153d0d9332a7d2"><span class="std std-ref">invert()</span></a>. <dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const reference to this </p>
</dd>
<dt><strong>Parameters</strong></dt><dd><ul class="breatheparameterlist simple">
<li><p><code class="docutils literal notranslate"><span class="pre">singExc</span></code>: If true, throw an exception if the matrix cannot be inverted. </p></li>
</ul>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338gjInvertEv">
<span id="_CPPv3N5Imath8Matrix338gjInvertEv"></span><span id="_CPPv2N5Imath8Matrix338gjInvertEv"></span><span id="Imath::Matrix33::gjInvert"></span><span class="target" id="class_imath_1_1_matrix33_1a856093458250addb1ca4436fc837ae5a"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">gjInvert</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338gjInvertEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Invert in place using the Gauss-Jordan method. </p>
<p>Significantly slower but more accurate than <a class="reference internal" href="#class_imath_1_1_matrix33_1adaf3b649d3654561eb153d0d9332a7d2"><span class="std std-ref">invert()</span></a>. <dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const reference to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix339gjInverseEb">
<span id="_CPPv3NK5Imath8Matrix339gjInverseEb"></span><span id="_CPPv2NK5Imath8Matrix339gjInverseEb"></span><span id="Imath::Matrix33::gjInverse__bC"></span><span class="target" id="class_imath_1_1_matrix33_1add89bfe485f42877d152944d47746a95"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; <code class="sig-name descname">gjInverse</code><span class="sig-paren">(</span>bool <em>singExc</em><span class="sig-paren">)</span> <em class="property">const</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix339gjInverseEb" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the inverse using the Gauss-Jordan method, leaving this unmodified. </p>
<p>Significantly slower but more accurate than <a class="reference internal" href="#class_imath_1_1_matrix33_1a89ea4efd56e95987a9470a46b121eee2"><span class="std std-ref">inverse()</span></a>. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix339gjInverseEv">
<span id="_CPPv3NK5Imath8Matrix339gjInverseEv"></span><span id="_CPPv2NK5Imath8Matrix339gjInverseEv"></span><span id="Imath::Matrix33::gjInverseC"></span><span class="target" id="class_imath_1_1_matrix33_1a6b4ed9956a0274cf595fad6ae48d4bc6"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; <code class="sig-name descname">gjInverse</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix339gjInverseEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the inverse using the Gauss-Jordan method. </p>
<p>Significantly slower, leaving this unmodified. Slower but more accurate than <a class="reference internal" href="#class_imath_1_1_matrix33_1a89ea4efd56e95987a9470a46b121eee2"><span class="std std-ref">inverse()</span></a>. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix337minorOfEKiKi">
<span id="_CPPv3NK5Imath8Matrix337minorOfEKiKi"></span><span id="_CPPv2NK5Imath8Matrix337minorOfEKiKi"></span><span id="Imath::Matrix33::minorOf__iC.iCCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a2ceb16ea8f4221b73d5cefceea09a69e"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <code class="sig-name descname">minorOf</code><span class="sig-paren">(</span><em class="property">const</em> int <em>r</em>, <em class="property">const</em> int <em>c</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix337minorOfEKiKi" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Calculate the matrix minor of the (r,c) element. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix339fastMinorEKiKiKiKi">
<span id="_CPPv3NK5Imath8Matrix339fastMinorEKiKiKiKi"></span><span id="_CPPv2NK5Imath8Matrix339fastMinorEKiKiKiKi"></span><span id="Imath::Matrix33::fastMinor__iC.iC.iC.iCCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a6a555a4702acb122c6d6121549d0e114"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <code class="sig-name descname">fastMinor</code><span class="sig-paren">(</span><em class="property">const</em> int <em>r0</em>, <em class="property">const</em> int <em>r1</em>, <em class="property">const</em> int <em>c0</em>, <em class="property">const</em> int <em>c1</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix339fastMinorEKiKiKiKi" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Build a minor using the specified rows and columns. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix3311determinantEv">
<span id="_CPPv3NK5Imath8Matrix3311determinantEv"></span><span id="_CPPv2NK5Imath8Matrix3311determinantEv"></span><span id="Imath::Matrix33::determinantCCE"></span><span class="target" id="class_imath_1_1_matrix33_1ac9fca5456608c323eb8b092c22b01026"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <code class="sig-name descname">determinant</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix3311determinantEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Determinant. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix3311setRotationERK8Matrix331S">
<span id="_CPPv3I0EN5Imath8Matrix3311setRotationE1S"></span><span id="_CPPv2I0EN5Imath8Matrix3311setRotationE1S"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ab41d61f1f5463c63edd64fe07c421846"></span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setRotation</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix3311setRotationERK8Matrix331S" title="Imath::Matrix33::setRotation::S">S</a> <em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix3311setRotationERK8Matrix331S" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set matrix to rotation by r (in radians) </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix336rotateERK8Matrix331S">
<span id="_CPPv3I0EN5Imath8Matrix336rotateE1S"></span><span id="_CPPv2I0EN5Imath8Matrix336rotateE1S"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ad3719796f5963a6b78b4456e39e62fe3"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">rotate</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix336rotateERK8Matrix331S" title="Imath::Matrix33::rotate::S">S</a> <em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix336rotateERK8Matrix331S" title="Permalink to this definition">¶</a><br /></dt>
<dd><p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix338setScaleE1T">
<span id="_CPPv3N5Imath8Matrix338setScaleE1T"></span><span id="_CPPv2N5Imath8Matrix338setScaleE1T"></span><span id="Imath::Matrix33::setScale__TCE"></span><span class="target" id="class_imath_1_1_matrix33_1aa05e5d47db1719f6941b80fb843542a7"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setScale</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix338setScaleE1T" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set matrix to scale by given uniform factor. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setScaleERK8Matrix33RK4Vec2I1SE">
<span id="_CPPv3I0EN5Imath8Matrix338setScaleERK4Vec2I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix338setScaleERK4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1aaebfec80c0eac2dc3fcb2d49ce6e3ff9"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setScale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setScaleERK8Matrix33RK4Vec2I1SE" title="Imath::Matrix33::setScale::S">S</a>&gt; &amp;<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setScaleERK8Matrix33RK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set matrix to scale by given vector. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix335scaleERK8Matrix33RK4Vec2I1SE">
<span id="_CPPv3I0EN5Imath8Matrix335scaleERK4Vec2I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix335scaleERK4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ae71a150c2b46f4f130f3e6533610f47f"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">scale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix335scaleERK8Matrix33RK4Vec2I1SE" title="Imath::Matrix33::scale::S">S</a>&gt; &amp;<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix335scaleERK8Matrix33RK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Scale the matrix by s. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix3314setTranslationERK8Matrix33RK4Vec2I1SE">
<span id="_CPPv3I0EN5Imath8Matrix3314setTranslationERK4Vec2I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix3314setTranslationERK4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a0903f6105c38677ab4ce4fb2322c6349"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setTranslation</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix3314setTranslationERK8Matrix33RK4Vec2I1SE" title="Imath::Matrix33::setTranslation::S">S</a>&gt; &amp;<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix3314setTranslationERK8Matrix33RK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set matrix to translation by given vector. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix3311translationEv">
<span id="_CPPv3NK5Imath8Matrix3311translationEv"></span><span id="_CPPv2NK5Imath8Matrix3311translationEv"></span><span id="Imath::Matrix33::translationCCE"></span><span class="target" id="class_imath_1_1_matrix33_1a2a3e5d3b34b88e12a8374de3a8f1b3f9"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; <code class="sig-name descname">translation</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix3311translationEv" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Return the translation component. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix339translateERK8Matrix33RK4Vec2I1SE">
<span id="_CPPv3I0EN5Imath8Matrix339translateERK4Vec2I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix339translateERK4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a9ef242a1b9e587c45cb70a15741a33dd"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">translate</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix339translateERK8Matrix33RK4Vec2I1SE" title="Imath::Matrix33::translate::S">S</a>&gt; &amp;<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix339translateERK8Matrix33RK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Translate the matrix by t. </p>
<p><dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33RK1S">
<span id="_CPPv3I0EN5Imath8Matrix338setShearERK1S"></span><span id="_CPPv2I0EN5Imath8Matrix338setShearERK1S"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a38f51d3606bfd23ba21d969fbe1b7d6e"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33RK1S" title="Imath::Matrix33::setShear::S">S</a> &amp;<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33RK1S" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set matrix to shear x for each y coord. </p>
<p>by given factor xy <dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33RK4Vec2I1SE">
<span id="_CPPv3I0EN5Imath8Matrix338setShearERK4Vec2I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix338setShearERK4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a343669049af7089fc892c6d3e6d6f260"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33RK4Vec2I1SE" title="Imath::Matrix33::setShear::S">S</a>&gt; &amp;<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33RK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Set matrix to shear x for each y coord. </p>
<p>by given factor h[0] and to shear y for each x coord. by given factor h[1] <dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33RK1S">
<span id="_CPPv3I0EN5Imath8Matrix335shearERK1S"></span><span id="_CPPv2I0EN5Imath8Matrix335shearERK1S"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a8da5d7adf129f2bd7a2ef6b800d2f003"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33RK1S" title="Imath::Matrix33::shear::S">S</a> &amp;<em>xy</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33RK1S" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Shear the matrix in x for each y coord. </p>
<p>by given factor xy <dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33RK4Vec2I1SE">
<span id="_CPPv3I0EN5Imath8Matrix335shearERK4Vec2I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix335shearERK4Vec2I1SE"></span>template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1aa9a6400c51f7a294b06c93f641a77035"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a> &amp;<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33RK4Vec2I1SE" title="Imath::Matrix33::shear::S">S</a>&gt; &amp;<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33RK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Shear the matrix in x for each y coord. </p>
<p>by given factor xy and shear y for each x coord. by given factor yx <dl class="simple">
<dt><strong>Return</strong></dt><dd><p>const referenced to this </p>
</dd>
</dl>
</p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Numeric Limits</p>
<dl class="cpp function">
<dt>
<span class="target" id="class_imath_1_1_matrix33_1a60da8e05b5855bed8fae31b0666d1921"></span><code class="sig-name descname">static inline constexpr static T baseTypeLowest () noexcept</code></dt>
<dd><p>Largest possible negative value. </p>
</dd></dl>

<dl class="cpp function">
<dt>
<span class="target" id="class_imath_1_1_matrix33_1ad27e2510ee90c4c977e630758212a90a"></span><code class="sig-name descname">static inline constexpr static T baseTypeMax () noexcept</code></dt>
<dd><p>Largest possible positive value. </p>
</dd></dl>

<dl class="cpp function">
<dt>
<span class="target" id="class_imath_1_1_matrix33_1ae585ea58cbc3560607b3d927d095ea49"></span><code class="sig-name descname">static inline constexpr static T baseTypeSmallest () noexcept</code></dt>
<dd><p>Smallest possible positive value. </p>
</dd></dl>

<dl class="cpp function">
<dt>
<span class="target" id="class_imath_1_1_matrix33_1a780d62a3987ad234556602a958119136"></span><code class="sig-name descname">static inline constexpr static T baseTypeEpsilon () noexcept</code></dt>
<dd><p>Smallest possible e for which 1+e != 1. </p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Public Types</p>
<dl class="cpp type">
<dt id="_CPPv4N5Imath8Matrix338BaseTypeE">
<span id="_CPPv3N5Imath8Matrix338BaseTypeE"></span><span id="_CPPv2N5Imath8Matrix338BaseTypeE"></span><span id="Imath::Matrix33::BaseType"></span><span class="target" id="class_imath_1_1_matrix33_1a925afe7d0734522f1a36452ea00ea0a8"></span><em class="property">typedef </em><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> <code class="sig-name descname">BaseType</code><a class="headerlink" href="#_CPPv4N5Imath8Matrix338BaseTypeE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>The base type: In templates that accept a parameter <code class="docutils literal notranslate"><span class="pre">V</span></code> (could be a <a class="reference internal" href="Color4.html#class_imath_1_1_color4"><span class="std std-ref">Color4</span></a>), you can refer to <code class="docutils literal notranslate"><span class="pre">T</span></code> as <code class="docutils literal notranslate"><span class="pre">V::BaseType</span></code> </p>
</dd></dl>

<dl class="cpp type">
<dt id="_CPPv4N5Imath8Matrix3311BaseVecTypeE">
<span id="_CPPv3N5Imath8Matrix3311BaseVecTypeE"></span><span id="_CPPv2N5Imath8Matrix3311BaseVecTypeE"></span><span id="Imath::Matrix33::BaseVecType"></span><span class="target" id="class_imath_1_1_matrix33_1accd7610ffd4391d3947cde0ff244080d"></span><em class="property">typedef </em><a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; <code class="sig-name descname">BaseVecType</code><a class="headerlink" href="#_CPPv4N5Imath8Matrix3311BaseVecTypeE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>The base vector type. </p>
</dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Public Functions</p>
<dl class="cpp function">
<dt id="_CPPv4N5Imath8Matrix33ixEi">
<span id="_CPPv3N5Imath8Matrix33ixEi"></span><span id="_CPPv2N5Imath8Matrix33ixEi"></span><span id="Imath::Matrix33::subscript-operator__i"></span><span class="target" id="class_imath_1_1_matrix33_1a649620ba7896602e963aa4829c0d7d29"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> *<code class="sig-name descname">operator[]</code><span class="sig-paren">(</span>int <em>i</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix33ixEi" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Row access. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4NK5Imath8Matrix33ixEi">
<span id="_CPPv3NK5Imath8Matrix33ixEi"></span><span id="_CPPv2NK5Imath8Matrix33ixEi"></span><span id="Imath::Matrix33::subscript-operator__iC"></span><span class="target" id="class_imath_1_1_matrix33_1a4257fd240969c187b239121ae4724154"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a> *<code class="sig-name descname">operator[]</code><span class="sig-paren">(</span>int <em>i</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix33ixEi" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Row access. </p>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setValueER8Matrix33I1TERK8Matrix33I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1aae30b03eaa1e4f917a6bfceaafa1c3a6"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setValue</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setValueER8Matrix33I1TERK8Matrix33I1SE" title="Imath::Matrix33::setValue::S">S</a>&gt; &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setValueER8Matrix33I1TERK8Matrix33I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix3312setTheMatrixER8Matrix33I1TERK8Matrix33I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a7e1f8554c21f7266c6e0222153c7d113"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setTheMatrix</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix3312setTheMatrixER8Matrix33I1TERK8Matrix33I1SE" title="Imath::Matrix33::setTheMatrix::S">S</a>&gt; &amp;<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix3312setTheMatrixER8Matrix33I1TERK8Matrix33I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix3311setRotationERK8Matrix33I1TE1S">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a4f433a5ee54768443eb21dc4f07e7697"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setRotation</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix3311setRotationERK8Matrix33I1TE1S" title="Imath::Matrix33::setRotation::S">S</a> <em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix3311setRotationERK8Matrix33I1TE1S" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix336rotateERK8Matrix33I1TE1S">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a69582c27e0b93d4e150cc43986f41229"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">rotate</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix336rotateERK8Matrix33I1TE1S" title="Imath::Matrix33::rotate::S">S</a> <em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix336rotateERK8Matrix33I1TE1S" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setScaleERK8Matrix33I1TERK4Vec2I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1af72775edaecbea9332d6bec1ca0ac3ae"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setScale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setScaleERK8Matrix33I1TERK4Vec2I1SE" title="Imath::Matrix33::setScale::S">S</a>&gt; &amp;<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setScaleERK8Matrix33I1TERK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix335scaleERK8Matrix33I1TERK4Vec2I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ae9ad7301a61d7f3be9afb635df953d22"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">scale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix335scaleERK8Matrix33I1TERK4Vec2I1SE" title="Imath::Matrix33::scale::S">S</a>&gt; &amp;<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix335scaleERK8Matrix33I1TERK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix3314setTranslationERK8Matrix33I1TERK4Vec2I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1ac5f69672377208a48a5e2312d68ae4f9"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setTranslation</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix3314setTranslationERK8Matrix33I1TERK4Vec2I1SE" title="Imath::Matrix33::setTranslation::S">S</a>&gt; &amp;<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix3314setTranslationERK8Matrix33I1TERK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix339translateERK8Matrix33I1TERK4Vec2I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a0a30d3c6479510d19788bc8016700099"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">translate</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix339translateERK8Matrix33I1TERK4Vec2I1SE" title="Imath::Matrix33::translate::S">S</a>&gt; &amp;<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix339translateERK8Matrix33I1TERK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33I1TERK1S">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1af6ebed9bdb88535c2e94023e2291593d"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33I1TERK1S" title="Imath::Matrix33::setShear::S">S</a> &amp;<em>xy</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33I1TERK1S" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33I1TERK4Vec2I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1abd83e658ef6ec37014ef79d25848edad"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33I1TERK4Vec2I1SE" title="Imath::Matrix33::setShear::S">S</a>&gt; &amp;<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix338setShearERK8Matrix33I1TERK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33I1TERK1S">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a27dde466a7232db5f05e848bc7ea6127"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33I1TERK1S" title="Imath::Matrix33::shear::S">S</a> &amp;<em>xy</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33I1TERK1S" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33I1TERK4Vec2I1SE">
template&lt;class <code class="sig-name descname">S</code>&gt;<br /><span class="target" id="class_imath_1_1_matrix33_1a2c7eba31090a5b7ca4a9e152c80e9a02"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33::T">T</a>&gt; &amp;<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec2.html#_CPPv4I0EN5Imath4Vec2E" title="Imath::Vec2">Vec2</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33I1TERK4Vec2I1SE" title="Imath::Matrix33::shear::S">S</a>&gt; &amp;<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix335shearERK8Matrix33I1TERK4Vec2I1SE" title="Permalink to this definition">¶</a><br /></dt>
<dd></dd></dl>

</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric">Public Static Functions</p>
<dl class="cpp function">
<dt>
<span class="target" id="class_imath_1_1_matrix33_1a1ec0ef53304a20889c98ee5df8551b65"></span><code class="sig-name descname">static inline constexpr static unsigned int dimensions () noexcept</code></dt>
<dd><p>Return the number of the row and column dimensions, i.e. 3. </p>
</dd></dl>

</div>
</dd></dl>

<dl class="cpp function">
<dt id="_CPPv4I0EN5ImathlsERNSt7ostreamERNSt7ostreamERK8Matrix33I1TE">
<span id="_CPPv3I0EN5ImathlsERNSt7ostreamERK8Matrix33I1TE"></span><span id="_CPPv2I0EN5ImathlsERNSt7ostreamERK8Matrix33I1TE"></span>template&lt;class <code class="sig-name descname">T</code>&gt;<br /><span class="target" id="_imath_matrix_8h_1a484ddbc7bbdd6cf3ede3db2e09835cd0"></span>std::ostream &amp;<code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">operator&lt;&lt;</code><span class="sig-paren">(</span>std::ostream &amp;<em>s</em>, <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a>&lt;<a class="reference internal" href="#_CPPv4I0EN5ImathlsERNSt7ostreamERNSt7ostreamERK8Matrix33I1TE" title="Imath::operator&lt;&lt;::T">T</a>&gt; &amp;<em>m</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4I0EN5ImathlsERNSt7ostreamERNSt7ostreamERK8Matrix33I1TE" title="Permalink to this definition">¶</a><br /></dt>
<dd><p>Stream output, as: (m00 m01 m02 m10 m11 m12 m20 m21 m22) </p>
</dd></dl>

</div>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../index.html">
              <img class="logo" src="../_static/imath-logo-blue.png" alt="Logo"/>
            </a></p>
  <h4>Previous topic</h4>
  <p class="topless"><a href="Matrix22.html"
                        title="previous chapter">Matrix22</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="Matrix44.html"
                        title="next chapter">Matrix44</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/classes/Matrix33.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" />
      <input type="submit" value="Go" />
    </form>
    </div>
</div>
<script>$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="Matrix44.html" title="Matrix44"
             >next</a> |</li>
        <li class="right" >
          <a href="Matrix22.html" title="Matrix22"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../index.html">Imath</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">Matrix33</a></li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2021, Contributors to the OpenEXR Project.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.4.3.
    </div>
  </body>
</html>

Zerion Mini Shell 1.0