Файловый менеджер - Редактировать - /usr/share/doc/imath-devel/html/classes/Matrix44.html
�азад
<!doctype html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Matrix44 — 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="Plane3" href="Plane3.html" /> <link rel="prev" title="Matrix33" href="Matrix33.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="Plane3.html" title="Plane3" accesskey="N">next</a> |</li> <li class="right" > <a href="Matrix33.html" title="Matrix33" accesskey="P">previous</a> |</li> <li class="nav-item nav-item-0"><a href="../index.html">Imath</a> »</li> <li class="nav-item nav-item-this"><a href="">Matrix44</a></li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body" role="main"> <div class="section" id="matrix44"> <h1>Matrix44<a class="headerlink" href="#matrix44" title="Permalink to this headline">¶</a></h1> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1">#include <Imath/ImathMatrix.h></span> </pre></div> </div> <p>The <code class="docutils literal notranslate"><span class="pre">Matrix44</span></code> class template represents a 4x4 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"><Imath/ImathMatrix.h></span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf"><Imath/ImathMatrixAlgo.h></span><span class="cp"></span> <span class="kt">void</span> <span class="nf">matrix44_example</span><span class="p">()</span> <span class="p">{</span> <span class="n">Imath</span><span class="o">::</span><span class="n">M44f</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">M44f</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">M44f</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">identity44f</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">Imath</span><span class="o">::</span><span class="n">V3f</span> <span class="p">(</span><span class="mf">0.02f</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="mf">0.0f</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">V4f</span> <span class="n">v4</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="mf">1.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.0f</span><span class="p">,</span> <span class="mf">-0.7071070f</span><span class="p">),</span> <span class="mf">1e-6f</span><span class="p">));</span> <span class="n">Imath</span><span class="o">::</span><span class="n">V4f</span> <span class="n">r4</span> <span class="o">=</span> <span class="n">v4</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">r4</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">V4f</span> <span class="p">(</span><span class="mf">0.707107f</span><span class="p">,</span> <span class="mf">0.0f</span><span class="p">,</span> <span class="mf">-0.7071070f</span><span class="p">,</span> <span class="mf">1.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="_CPPv4N5Imath4M44fE"> <span id="_CPPv3N5Imath4M44fE"></span><span id="_CPPv2N5Imath4M44fE"></span><span id="Imath::M44f"></span><span class="target" id="_imath_matrix_8h_1aa8e036cdea33b5ea21be063cd7e40cd8"></span><em class="property">typedef </em><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><float> <code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">M44f</code><a class="headerlink" href="#_CPPv4N5Imath4M44fE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>4x4 matrix of float </p> </dd></dl> <dl class="cpp type"> <dt id="_CPPv4N5Imath4M44dE"> <span id="_CPPv3N5Imath4M44dE"></span><span id="_CPPv2N5Imath4M44dE"></span><span id="Imath::M44d"></span><span class="target" id="_imath_matrix_8h_1a6ded039a2a2cf4e4c3390f0fc98c94d6"></span><em class="property">typedef </em><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><double> <code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">M44d</code><a class="headerlink" href="#_CPPv4N5Imath4M44dE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>4x4 matrix of double </p> </dd></dl> <dl class="cpp class"> <dt id="_CPPv4I0EN5Imath8Matrix44E"> <span id="_CPPv3I0EN5Imath8Matrix44E"></span><span id="_CPPv2I0EN5Imath8Matrix44E"></span>template<class <code class="sig-name descname">T</code>><br /><span class="target" id="class_imath_1_1_matrix44"></span><em class="property">class </em><code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">Matrix44</code><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix44E" title="Permalink to this definition">¶</a><br /></dt> <dd><p>4x4 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="_CPPv4N5Imath8Matrix441xE"> <span id="_CPPv3N5Imath8Matrix441xE"></span><span id="_CPPv2N5Imath8Matrix441xE"></span><span id="Imath::Matrix44::x__TAA"></span><span class="target" id="class_imath_1_1_matrix44_1af1538fbd82eba3885516f084fa2b4aa8"></span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <code class="sig-name descname">x</code>[4][4]<a class="headerlink" href="#_CPPv4N5Imath8Matrix441xE" 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="_CPPv4N5Imath8Matrix448Matrix44E13Uninitialized"> <span id="_CPPv3N5Imath8Matrix448Matrix44E13Uninitialized"></span><span id="_CPPv2N5Imath8Matrix448Matrix44E13Uninitialized"></span><span id="Imath::Matrix44::Matrix44__UninitializedCE"></span><span class="target" id="class_imath_1_1_matrix44_1a72e4aaacda511797967b91512fc3907c"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span>Uninitialized<span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44E13Uninitialized" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Uninitialized. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448Matrix44Ev"> <span id="_CPPv3N5Imath8Matrix448Matrix44Ev"></span><span id="_CPPv2N5Imath8Matrix448Matrix44Ev"></span><span id="Imath::Matrix44::Matrix44CE"></span><span class="target" id="class_imath_1_1_matrix44_1a76caf84c043d270ff1500148774c5163"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44Ev" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Default constructor: initialize to identity 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448Matrix44E1T"> <span id="_CPPv3N5Imath8Matrix448Matrix44E1T"></span><span id="_CPPv2N5Imath8Matrix448Matrix44E1T"></span><span id="Imath::Matrix44::Matrix44__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1af990a7035b61132719819f643c443b05"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44E1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Initialize to scalar constant a a a a a a a a a a a a a a a a. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448Matrix44EAL4E_AL4E_K1T"> <span id="_CPPv3N5Imath8Matrix448Matrix44EAL4E_AL4E_K1T"></span><span id="_CPPv2N5Imath8Matrix448Matrix44EA4_A4_K1T"></span><span id="Imath::Matrix44::Matrix44__TCAACE"></span><span class="target" id="class_imath_1_1_matrix44_1acc4239de09d44ac43e2cb7877c5cb381"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em>[4][4]<span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44EAL4E_AL4E_K1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Construct from 4x4 array a[0][0] a[0][1] a[0][2] a[0][3] a[1][0] a[1][1] a[1][2] a[1][3] a[2][0] a[2][1] a[2][2] a[2][3] a[3][0] a[3][1] a[3][2] a[3][3]. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448Matrix44E1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T"> <span id="_CPPv3N5Imath8Matrix448Matrix44E1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T"></span><span id="_CPPv2N5Imath8Matrix448Matrix44E1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T"></span><span id="Imath::Matrix44::Matrix44__T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.TCE"></span><span class="target" id="class_imath_1_1_matrix44_1ac546fd1d6d8f15dabd60b9f3770505c4"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>b</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>c</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>d</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>e</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>f</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>g</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>h</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>i</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>j</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>k</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>l</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>m</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>n</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>o</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>p</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44E1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Construct from given scalar values a b c d e f g h i j k l m n o p. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448Matrix44E8Matrix33I1TE4Vec3I1TE"> <span id="_CPPv3N5Imath8Matrix448Matrix44E8Matrix33I1TE4Vec3I1TE"></span><span id="_CPPv2N5Imath8Matrix448Matrix44E8Matrix33I1TE4Vec3I1TE"></span><span id="Imath::Matrix44::Matrix44__Matrix33:T:.Vec3:T:CE"></span><span class="target" id="class_imath_1_1_matrix44_1a9d43c86feeff9ddf0af867fca5f9d4ae"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><a class="reference internal" href="Matrix33.html#_CPPv4I0EN5Imath8Matrix33E" title="Imath::Matrix33">Matrix33</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <em>r</em>, <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44E8Matrix33I1TE4Vec3I1TE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Construct from a 3x3 rotation matrix and a translation vector r r r 0 r r r 0 r r r 0 t t t 1. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448Matrix44ERK8Matrix44"> <span id="_CPPv3N5Imath8Matrix448Matrix44ERK8Matrix44"></span><span id="_CPPv2N5Imath8Matrix448Matrix44ERK8Matrix44"></span><span id="Imath::Matrix44::Matrix44__Matrix44CRCE"></span><span class="target" id="class_imath_1_1_matrix44_1ab48364f4ddbcc1c7a1cf5838e19ae8ad"></span><em class="property">inline</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4N5Imath8Matrix448Matrix44ERK8Matrix44" title="Imath::Matrix44::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448Matrix44ERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Copy constructor. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix448Matrix44ERK8Matrix44I1SE"> <span id="_CPPv3I0EN5Imath8Matrix448Matrix44ERK8Matrix44I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix448Matrix44ERK8Matrix44I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a78b2f9753e96ecc57aab0c753818474e"></span><em class="property">inline</em> <em class="property">explicit</em> <em class="property">constexpr</em> <code class="sig-name descname">Matrix44</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448Matrix44ERK8Matrix44I1SE" title="Imath::Matrix44::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448Matrix44ERK8Matrix44I1SE" title="Imath::Matrix44::Matrix44::S">S</a>> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448Matrix44ERK8Matrix44I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Construct from <a class="reference internal" href="#class_imath_1_1_matrix44"><span class="std std-ref">Matrix44</span></a> of another base type. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44aSERK8Matrix44"> <span id="_CPPv3N5Imath8Matrix44aSERK8Matrix44"></span><span id="_CPPv2N5Imath8Matrix44aSERK8Matrix44"></span><span id="Imath::Matrix44::assign-operator__Matrix44CRCE"></span><span class="target" id="class_imath_1_1_matrix44_1ae2973f105cb76dc0e32da02ffb3d2522"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44aSERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Assignment operator. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44aSE1T"> <span id="_CPPv3N5Imath8Matrix44aSE1T"></span><span id="_CPPv2N5Imath8Matrix44aSE1T"></span><span id="Imath::Matrix44::assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1a29d40f3e6774ab7e7098d545cc096fd9"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44aSE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Assignment from scalar. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44D0Ev"> <span id="_CPPv3N5Imath8Matrix44D0Ev"></span><span id="_CPPv2N5Imath8Matrix44D0Ev"></span><span id="Imath::Matrix44::~Matrix44"></span><span class="target" id="class_imath_1_1_matrix44_1a03da95b7bba4079237ee3b90d805473d"></span><code class="sig-name descname">~Matrix44</code><span class="sig-paren">(</span><span class="sig-paren">)</span> <em class="property">noexcept</em> = default<a class="headerlink" href="#_CPPv4N5Imath8Matrix44D0Ev" 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="_CPPv4N5Imath8Matrix448getValueEv"> <span id="_CPPv3N5Imath8Matrix448getValueEv"></span><span id="_CPPv2N5Imath8Matrix448getValueEv"></span><span id="Imath::Matrix44::getValue"></span><span class="target" id="class_imath_1_1_matrix44_1abd99592551b16a942ddad1a3e3fab372"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4N5Imath8Matrix448getValueEv" 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="_CPPv4NK5Imath8Matrix448getValueEv"> <span id="_CPPv3NK5Imath8Matrix448getValueEv"></span><span id="_CPPv2NK5Imath8Matrix448getValueEv"></span><span id="Imath::Matrix44::getValueC"></span><span class="target" id="class_imath_1_1_matrix44_1a4ee77a8bbf2f0db7f143803712edae11"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix448getValueEv" 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="_CPPv4I0ENK5Imath8Matrix448getValueEvR8Matrix44I1SE"> <span id="_CPPv3I0ENK5Imath8Matrix448getValueER8Matrix44I1SE"></span><span id="_CPPv2I0ENK5Imath8Matrix448getValueER8Matrix44I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a75a6502f2e9c6a1ad7acd8c85c65b888"></span><em class="property">inline</em> void <code class="sig-name descname">getValue</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix448getValueEvR8Matrix44I1SE" title="Imath::Matrix44::getValue::S">S</a>> &<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0ENK5Imath8Matrix448getValueEvR8Matrix44I1SE" 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="_CPPv4I0EN5Imath8Matrix448setValueER8Matrix44RK8Matrix44I1SE"> <span id="_CPPv3I0EN5Imath8Matrix448setValueERK8Matrix44I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix448setValueERK8Matrix44I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a41f5fc19abf0ee8a1a922e3e4ea46a51"></span><em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setValue</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setValueER8Matrix44RK8Matrix44I1SE" title="Imath::Matrix44::setValue::S">S</a>> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setValueER8Matrix44RK8Matrix44I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Set the value. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix4412setTheMatrixER8Matrix44RK8Matrix44I1SE"> <span id="_CPPv3I0EN5Imath8Matrix4412setTheMatrixERK8Matrix44I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix4412setTheMatrixERK8Matrix44I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ab00e71fe01c047ac9bdf6c878963ba41"></span><em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setTheMatrix</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4412setTheMatrixER8Matrix44RK8Matrix44I1SE" title="Imath::Matrix44::setTheMatrix::S">S</a>> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4412setTheMatrixER8Matrix44RK8Matrix44I1SE" 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="_CPPv4NK5Imath8Matrix44eqERK8Matrix44"> <span id="_CPPv3NK5Imath8Matrix44eqERK8Matrix44"></span><span id="_CPPv2NK5Imath8Matrix44eqERK8Matrix44"></span><span id="Imath::Matrix44::eq-operator__Matrix44CRCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a810977e9fc6074b82a3b65e5496779c9"></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="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix44eqERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Equality. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44neERK8Matrix44"> <span id="_CPPv3NK5Imath8Matrix44neERK8Matrix44"></span><span id="_CPPv2NK5Imath8Matrix44neERK8Matrix44"></span><span id="Imath::Matrix44::neq-operator__Matrix44CRCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a7193d301389ae0da6967b6b66c62429e"></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="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix44neERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Inequality. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix4417equalWithAbsErrorERK8Matrix44I1TE1T"> <span id="_CPPv3NK5Imath8Matrix4417equalWithAbsErrorERK8Matrix44I1TE1T"></span><span id="_CPPv2NK5Imath8Matrix4417equalWithAbsErrorERK8Matrix44I1TE1T"></span><span id="Imath::Matrix44::equalWithAbsError__Matrix44:T:CR.TCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a0896d431acec21b20fb6a805fc5abd9e"></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="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<em>v</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix4417equalWithAbsErrorERK8Matrix44I1TE1T" 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"><=</span> <span class="n">e</span> </pre></div> </div> </p> </dd> </dl> </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix4417equalWithRelErrorERK8Matrix44I1TE1T"> <span id="_CPPv3NK5Imath8Matrix4417equalWithRelErrorERK8Matrix44I1TE1T"></span><span id="_CPPv2NK5Imath8Matrix4417equalWithRelErrorERK8Matrix44I1TE1T"></span><span id="Imath::Matrix44::equalWithRelError__Matrix44:T:CR.TCCE"></span><span class="target" id="class_imath_1_1_matrix44_1af1ebb9348be29cfc7ae6df4f73b1fb3d"></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="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<em>v</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix4417equalWithRelErrorERK8Matrix44I1TE1T" 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"><=</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="_CPPv4N5Imath8Matrix44pLERK8Matrix44"> <span id="_CPPv3N5Imath8Matrix44pLERK8Matrix44"></span><span id="_CPPv2N5Imath8Matrix44pLERK8Matrix44"></span><span id="Imath::Matrix44::add-assign-operator__Matrix44CRCE"></span><span class="target" id="class_imath_1_1_matrix44_1a2bcbf466f0f1324ee5bba0c53e49f106"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator+=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44pLERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise addition. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44pLE1T"> <span id="_CPPv3N5Imath8Matrix44pLE1T"></span><span id="_CPPv2N5Imath8Matrix44pLE1T"></span><span id="Imath::Matrix44::add-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1a343829525246a7f76d9b8335fc0eec73"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator+=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44pLE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise addition. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44plERK8Matrix44"> <span id="_CPPv3NK5Imath8Matrix44plERK8Matrix44"></span><span id="_CPPv2NK5Imath8Matrix44plERK8Matrix44"></span><span id="Imath::Matrix44::add-operator__Matrix44CRCCE"></span><span class="target" id="class_imath_1_1_matrix44_1af11449ebe34796ad8171f7d305caffa8"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> <code class="sig-name descname">operator+</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix44plERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise addition. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44mIERK8Matrix44"> <span id="_CPPv3N5Imath8Matrix44mIERK8Matrix44"></span><span id="_CPPv2N5Imath8Matrix44mIERK8Matrix44"></span><span id="Imath::Matrix44::sub-assign-operator__Matrix44CRCE"></span><span class="target" id="class_imath_1_1_matrix44_1a8cb95937814c32561a84c22636c9900e"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator-=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44mIERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise subtraction. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44mIE1T"> <span id="_CPPv3N5Imath8Matrix44mIE1T"></span><span id="_CPPv2N5Imath8Matrix44mIE1T"></span><span id="Imath::Matrix44::sub-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1a81e30883637a84c264439cc1bc142528"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator-=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44mIE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise subtraction. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44miERK8Matrix44"> <span id="_CPPv3NK5Imath8Matrix44miERK8Matrix44"></span><span id="_CPPv2NK5Imath8Matrix44miERK8Matrix44"></span><span id="Imath::Matrix44::sub-operator__Matrix44CRCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a5938a9656762ff5aeb02968e74f331da"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> <code class="sig-name descname">operator-</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix44miERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise subtraction. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44miEv"> <span id="_CPPv3NK5Imath8Matrix44miEv"></span><span id="_CPPv2NK5Imath8Matrix44miEv"></span><span id="Imath::Matrix44::sub-operatorCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a2e70b8a1873a0c936b2e2107b906424a"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</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="#_CPPv4NK5Imath8Matrix44miEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise multiplication by -1. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix446negateEv"> <span id="_CPPv3N5Imath8Matrix446negateEv"></span><span id="_CPPv2N5Imath8Matrix446negateEv"></span><span id="Imath::Matrix44::negateCE"></span><span class="target" id="class_imath_1_1_matrix44_1a01f0c7aab36d60ca58375e54d22cc865"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<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="#_CPPv4N5Imath8Matrix446negateEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise multiplication by -1. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44mLE1T"> <span id="_CPPv3N5Imath8Matrix44mLE1T"></span><span id="_CPPv2N5Imath8Matrix44mLE1T"></span><span id="Imath::Matrix44::mul-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1acee44b1d0b59991fabc7f65f3328b73b"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator*=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44mLE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise multiplication. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44mlE1T"> <span id="_CPPv3NK5Imath8Matrix44mlE1T"></span><span id="_CPPv2NK5Imath8Matrix44mlE1T"></span><span id="Imath::Matrix44::mul-operator__TCCE"></span><span class="target" id="class_imath_1_1_matrix44_1ad51b462f68a7decaaca29d49b822e39f"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> <code class="sig-name descname">operator*</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix44mlE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise multiplication. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44dVE1T"> <span id="_CPPv3N5Imath8Matrix44dVE1T"></span><span id="_CPPv2N5Imath8Matrix44dVE1T"></span><span id="Imath::Matrix44::div-assign-operator__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1a3946b1bccd3ddbc632361bf6c854c94b"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator/=</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>a</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44dVE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise division. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44dvE1T"> <span id="_CPPv3NK5Imath8Matrix44dvE1T"></span><span id="_CPPv2NK5Imath8Matrix44dvE1T"></span><span id="Imath::Matrix44::div-operator__TCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a0eaf2a3aa4bbbe9a99520e73e9869327"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> <code class="sig-name descname">operator/</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix44dvE1T" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Component-wise division. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix44mLERK8Matrix44"> <span id="_CPPv3N5Imath8Matrix44mLERK8Matrix44"></span><span id="_CPPv2N5Imath8Matrix44mLERK8Matrix44"></span><span id="Imath::Matrix44::mul-assign-operator__Matrix44CRCE"></span><span class="target" id="class_imath_1_1_matrix44_1a58e7344b9d185222aebcb8769f4abce0"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">operator*=</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix44mLERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Matrix-matrix multiplication. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44mlERK8Matrix44"> <span id="_CPPv3NK5Imath8Matrix44mlERK8Matrix44"></span><span id="_CPPv2NK5Imath8Matrix44mlERK8Matrix44"></span><span id="Imath::Matrix44::mul-operator__Matrix44CRCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a7157984e0bf3e6e0aed56621ead9c8fe"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> <code class="sig-name descname">operator*</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>v</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix44mlERK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Matrix-matrix multiplication. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0ENK5Imath8Matrix4413multVecMatrixEvRK4Vec3I1SER4Vec3I1SE"> <span id="_CPPv3I0ENK5Imath8Matrix4413multVecMatrixERK4Vec3I1SER4Vec3I1SE"></span><span id="_CPPv2I0ENK5Imath8Matrix4413multVecMatrixERK4Vec3I1SER4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a9edbb21c6cb0ef9374e5925e2e74ce41"></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="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix4413multVecMatrixEvRK4Vec3I1SER4Vec3I1SE" title="Imath::Matrix44::multVecMatrix::S">S</a>> &<em>src</em>, <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix4413multVecMatrixEvRK4Vec3I1SER4Vec3I1SE" title="Imath::Matrix44::multVecMatrix::S">S</a>> &<em>dst</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0ENK5Imath8Matrix4413multVecMatrixEvRK4Vec3I1SER4Vec3I1SE" 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, src.z, 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="_CPPv4I0ENK5Imath8Matrix4413multDirMatrixEvRK4Vec3I1SER4Vec3I1SE"> <span id="_CPPv3I0ENK5Imath8Matrix4413multDirMatrixERK4Vec3I1SER4Vec3I1SE"></span><span id="_CPPv2I0ENK5Imath8Matrix4413multDirMatrixERK4Vec3I1SER4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a7f8a2030518bbf571657ce528d050b11"></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="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix4413multDirMatrixEvRK4Vec3I1SER4Vec3I1SE" title="Imath::Matrix44::multDirMatrix::S">S</a>> &<em>src</em>, <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0ENK5Imath8Matrix4413multDirMatrixEvRK4Vec3I1SER4Vec3I1SE" title="Imath::Matrix44::multDirMatrix::S">S</a>> &<em>dst</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0ENK5Imath8Matrix4413multDirMatrixEvRK4Vec3I1SER4Vec3I1SE" 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> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44R8Matrix44"> <span id="_CPPv3N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44R8Matrix44"></span><span id="_CPPv2N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44R8Matrix44"></span><span id="Imath::Matrix44::multiply__Matrix44CR.Matrix44CR.Matrix44R"></span><span class="target" id="class_imath_1_1_matrix44_1abc1b65e75125dffb3834e63f9d959832"></span><em class="property">static</em> <em class="property">inline</em> void <code class="sig-name descname">multiply</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>a</em>, <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>b</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>c</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44R8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Matrix-matrix multiplication: compute c = a * b. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44"> <span id="_CPPv3N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44"></span><span id="_CPPv2N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44"></span><span id="Imath::Matrix44::multiply__Matrix44CR.Matrix44CRCE"></span><span class="target" id="class_imath_1_1_matrix44_1ade243cd99caee3abdcadc81ec021ac64"></span><em class="property">static</em> <em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> <code class="sig-name descname">multiply</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>a</em>, <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<em>b</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448multiplyERK8Matrix44RK8Matrix44" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Matrix-matrix multiplication returning a result. </p> </dd></dl> </div> <div class="breathe-sectiondef docutils container"> <p class="breathe-sectiondef-title rubric">Maniplation</p> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix4412makeIdentityEv"> <span id="_CPPv3N5Imath8Matrix4412makeIdentityEv"></span><span id="_CPPv2N5Imath8Matrix4412makeIdentityEv"></span><span id="Imath::Matrix44::makeIdentity"></span><span class="target" id="class_imath_1_1_matrix44_1a8aeb7976f87cead570fa2ca99473e813"></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="#_CPPv4N5Imath8Matrix4412makeIdentityEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Set to the identity matrix. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix449transposeEv"> <span id="_CPPv3N5Imath8Matrix449transposeEv"></span><span id="_CPPv2N5Imath8Matrix449transposeEv"></span><span id="Imath::Matrix44::transposeCE"></span><span class="target" id="class_imath_1_1_matrix44_1a251d9a9eadd1004eb42a4bbcc79edb43"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<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="#_CPPv4N5Imath8Matrix449transposeEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Transpose. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix4410transposedEv"> <span id="_CPPv3NK5Imath8Matrix4410transposedEv"></span><span id="_CPPv2NK5Imath8Matrix4410transposedEv"></span><span id="Imath::Matrix44::transposedCCE"></span><span class="target" id="class_imath_1_1_matrix44_1aee5d862dd88068d4be83490429f8cace"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</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="#_CPPv4NK5Imath8Matrix4410transposedEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Return the transpose. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4N5Imath8Matrix446invertEb"> <span id="_CPPv3N5Imath8Matrix446invertEb"></span><span id="_CPPv2N5Imath8Matrix446invertEb"></span><span id="Imath::Matrix44::invert__bCE"></span><span class="target" id="class_imath_1_1_matrix44_1a35f4086b3c1b90c25fbcaf9459d365c5"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<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="#_CPPv4N5Imath8Matrix446invertEb" 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="_CPPv4N5Imath8Matrix446invertEv"> <span id="_CPPv3N5Imath8Matrix446invertEv"></span><span id="_CPPv2N5Imath8Matrix446invertEv"></span><span id="Imath::Matrix44::invertCE"></span><span class="target" id="class_imath_1_1_matrix44_1a1fde8cb7882e6cb9bab716dd0e4a0e45"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<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="#_CPPv4N5Imath8Matrix446invertEv" 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="_CPPv4NK5Imath8Matrix447inverseEb"> <span id="_CPPv3NK5Imath8Matrix447inverseEb"></span><span id="_CPPv2NK5Imath8Matrix447inverseEb"></span><span id="Imath::Matrix44::inverse__bCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a2a532415cdf93a38ee16dd895207a9b6"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <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="#_CPPv4NK5Imath8Matrix447inverseEb" 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="_CPPv4NK5Imath8Matrix447inverseEv"> <span id="_CPPv3NK5Imath8Matrix447inverseEv"></span><span id="_CPPv2NK5Imath8Matrix447inverseEv"></span><span id="Imath::Matrix44::inverseCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a19dde6652c551bc66d1ada48309cf846"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <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="#_CPPv4NK5Imath8Matrix447inverseEv" 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="_CPPv4N5Imath8Matrix448gjInvertEb"> <span id="_CPPv3N5Imath8Matrix448gjInvertEb"></span><span id="_CPPv2N5Imath8Matrix448gjInvertEb"></span><span id="Imath::Matrix44::gjInvert__bCE"></span><span class="target" id="class_imath_1_1_matrix44_1a31f43cae27ecaba431f4ba9d73d3af49"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<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="#_CPPv4N5Imath8Matrix448gjInvertEb" 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_matrix44_1a1fde8cb7882e6cb9bab716dd0e4a0e45"><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="_CPPv4N5Imath8Matrix448gjInvertEv"> <span id="_CPPv3N5Imath8Matrix448gjInvertEv"></span><span id="_CPPv2N5Imath8Matrix448gjInvertEv"></span><span id="Imath::Matrix44::gjInvertCE"></span><span class="target" id="class_imath_1_1_matrix44_1a8598ac858cb9f6d509b1e9da71b2fa4f"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<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="#_CPPv4N5Imath8Matrix448gjInvertEv" 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_matrix44_1a1fde8cb7882e6cb9bab716dd0e4a0e45"><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="_CPPv4NK5Imath8Matrix449gjInverseEb"> <span id="_CPPv3NK5Imath8Matrix449gjInverseEb"></span><span id="_CPPv2NK5Imath8Matrix449gjInverseEb"></span><span id="Imath::Matrix44::gjInverse__bC"></span><span class="target" id="class_imath_1_1_matrix44_1a6216c0b02c2371387f5763941b43d3f7"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <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="#_CPPv4NK5Imath8Matrix449gjInverseEb" 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_matrix44_1a2a532415cdf93a38ee16dd895207a9b6"><span class="std std-ref">inverse()</span></a>. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix449gjInverseEv"> <span id="_CPPv3NK5Imath8Matrix449gjInverseEv"></span><span id="_CPPv2NK5Imath8Matrix449gjInverseEv"></span><span id="Imath::Matrix44::gjInverseC"></span><span class="target" id="class_imath_1_1_matrix44_1a05fbf5018e6b4d2ceebd4770f5b291e4"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <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="#_CPPv4NK5Imath8Matrix449gjInverseEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Return the inverse using the Gauss-Jordan method, leaving this unmodified Significantly slower but more accurate than <a class="reference internal" href="#class_imath_1_1_matrix44_1a2a532415cdf93a38ee16dd895207a9b6"><span class="std std-ref">inverse()</span></a>. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix447minorOfEKiKi"> <span id="_CPPv3NK5Imath8Matrix447minorOfEKiKi"></span><span id="_CPPv2NK5Imath8Matrix447minorOfEKiKi"></span><span id="Imath::Matrix44::minorOf__iC.iCCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a562bf5181981dfd7881e9935119adc20"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix447minorOfEKiKi" 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="_CPPv4NK5Imath8Matrix449fastMinorEKiKiKiKiKiKi"> <span id="_CPPv3NK5Imath8Matrix449fastMinorEKiKiKiKiKiKi"></span><span id="_CPPv2NK5Imath8Matrix449fastMinorEKiKiKiKiKiKi"></span><span id="Imath::Matrix44::fastMinor__iC.iC.iC.iC.iC.iCCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a19a2df649acd6320b1960244cb7adc56"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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>r2</em>, <em class="property">const</em> int <em>c0</em>, <em class="property">const</em> int <em>c1</em>, <em class="property">const</em> int <em>c2</em><span class="sig-paren">)</span> <em class="property">const</em> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4NK5Imath8Matrix449fastMinorEKiKiKiKiKiKi" 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="_CPPv4NK5Imath8Matrix4411determinantEv"> <span id="_CPPv3NK5Imath8Matrix4411determinantEv"></span><span id="_CPPv2NK5Imath8Matrix4411determinantEv"></span><span id="Imath::Matrix44::determinantCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a72fb76c24c4b497ed9f599ad8ce5667d"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix4411determinantEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Determinant. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix4414setEulerAnglesERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix4414setEulerAnglesERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix4414setEulerAnglesERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1aaab9bad3262480e4ab7c7a3259f6accb"></span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setEulerAngles</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4414setEulerAnglesERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::setEulerAngles::S">S</a>> &<em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4414setEulerAnglesERK8Matrix44RK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Set matrix to rotation by XYZ euler angles (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="_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44RK4Vec3I1SE1S"> <span id="_CPPv3I0EN5Imath8Matrix4412setAxisAngleERK4Vec3I1SE1S"></span><span id="_CPPv2I0EN5Imath8Matrix4412setAxisAngleERK4Vec3I1SE1S"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1aaa2f760df3ebcf9b71f5a836e4241d1b"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setAxisAngle</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44RK4Vec3I1SE1S" title="Imath::Matrix44::setAxisAngle::S">S</a>> &<em>ax</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44RK4Vec3I1SE1S" title="Imath::Matrix44::setAxisAngle::S">S</a> <em>ang</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44RK4Vec3I1SE1S" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Set matrix to rotation around given axis by given angle (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="_CPPv4I0EN5Imath8Matrix446rotateERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix446rotateERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix446rotateERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1aae691c8004714b8d124428e6a51549d3"></span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">rotate</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix446rotateERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::rotate::S">S</a>> &<em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix446rotateERK8Matrix44RK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Rotate the matrix by XYZ euler angles in 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="_CPPv4N5Imath8Matrix448setScaleE1T"> <span id="_CPPv3N5Imath8Matrix448setScaleE1T"></span><span id="_CPPv2N5Imath8Matrix448setScaleE1T"></span><span id="Imath::Matrix44::setScale__TCE"></span><span class="target" id="class_imath_1_1_matrix44_1a8b56edd9a47cec6330d37de874c99f16"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setScale</code><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4N5Imath8Matrix448setScaleE1T" 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="_CPPv4I0EN5Imath8Matrix448setScaleERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix448setScaleERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix448setScaleERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a151a8d3323abff81e8d51edabe85c367"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setScale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setScaleERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::setScale::S">S</a>> &<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setScaleERK8Matrix44RK4Vec3I1SE" 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="_CPPv4I0EN5Imath8Matrix445scaleERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix445scaleERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix445scaleERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ac8220f66ea2d8198b6581a6d73ec4455"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">scale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix445scaleERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::scale::S">S</a>> &<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix445scaleERK8Matrix44RK4Vec3I1SE" 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="_CPPv4I0EN5Imath8Matrix4414setTranslationERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix4414setTranslationERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix4414setTranslationERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a522035d881661a7193619d5e1badbe76"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setTranslation</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4414setTranslationERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::setTranslation::S">S</a>> &<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4414setTranslationERK8Matrix44RK4Vec3I1SE" 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="_CPPv4NK5Imath8Matrix4411translationEv"> <span id="_CPPv3NK5Imath8Matrix4411translationEv"></span><span id="_CPPv2NK5Imath8Matrix4411translationEv"></span><span id="Imath::Matrix44::translationCCE"></span><span class="target" id="class_imath_1_1_matrix44_1a6dcc17b2dde090546a313d3f5d423bf4"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <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="#_CPPv4NK5Imath8Matrix4411translationEv" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Return translation component. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix449translateERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix449translateERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix449translateERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1abfb5b7c7fcb200cfd0eb61cb7be2e9d4"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">translate</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix449translateERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::translate::S">S</a>> &<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix449translateERK8Matrix44RK4Vec3I1SE" 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="_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix448setShearERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix448setShearERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a0892799025f87a2a1467ae88ea3ecc2f"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::setShear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44RK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Set matrix to shear by given vector h. </p> <p>The resulting matrix<ul class="simple"> <li><p>will shear x for each y coord. by a factor of h[0] ;</p></li> <li><p>will shear x for each z coord. by a factor of h[1] ;</p></li> <li><p>will shear y for each z coord. by a factor of h[2] . <dl class="simple"> <dt><strong>Return</strong></dt><dd><p>const referenced to this </p> </dd> </dl> </p></li> </ul> </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44RK6Shear6I1SE"> <span id="_CPPv3I0EN5Imath8Matrix448setShearERK6Shear6I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix448setShearERK6Shear6I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a8e5eb584905fde18ee69d1f84bbd77ab"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Shear6.html#_CPPv4I0EN5Imath6Shear6E" title="Imath::Shear6">Shear6</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44RK6Shear6I1SE" title="Imath::Matrix44::setShear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44RK6Shear6I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Set matrix to shear by given factors. </p> <p>The resulting matrix<ul class="simple"> <li><p>will shear x for each y coord. by a factor of h.xy ;</p></li> <li><p>will shear x for each z coord. by a factor of h.xz ;</p></li> <li><p>will shear y for each z coord. by a factor of h.yz ;</p></li> <li><p>will shear y for each x coord. by a factor of h.yx ;</p></li> <li><p>will shear z for each x coord. by a factor of h.zx ;</p></li> <li><p>will shear z for each y coord. by a factor of h.zy . <dl class="simple"> <dt><strong>Return</strong></dt><dd><p>const referenced to this </p> </dd> </dl> </p></li> </ul> </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44RK4Vec3I1SE"> <span id="_CPPv3I0EN5Imath8Matrix445shearERK4Vec3I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix445shearERK4Vec3I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a5e6562d837d68abd9dd644c0005abda4"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44RK4Vec3I1SE" title="Imath::Matrix44::shear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44RK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Shear the matrix by given vector. </p> <p>The composed matrix will be <code class="docutils literal notranslate"><span class="pre">shear</span></code> * <code class="docutils literal notranslate"><span class="pre">this</span></code>, where the shear matrix …<ul class="simple"> <li><p>will shear x for each y coord. by a factor of h[0] ;</p></li> <li><p>will shear x for each z coord. by a factor of h[1] ;</p></li> <li><p>will shear y for each z coord. by a factor of h[2] . <dl class="simple"> <dt><strong>Return</strong></dt><dd><p>const referenced to this </p> </dd> </dl> </p></li> </ul> </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44RK6Shear6I1SE"> <span id="_CPPv3I0EN5Imath8Matrix445shearERK6Shear6I1SE"></span><span id="_CPPv2I0EN5Imath8Matrix445shearERK6Shear6I1SE"></span>template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a85e9379df87f1db1926ea0171188998e"></span><em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a> &<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Shear6.html#_CPPv4I0EN5Imath6Shear6E" title="Imath::Shear6">Shear6</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44RK6Shear6I1SE" title="Imath::Matrix44::shear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44RK6Shear6I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Shear the matrix by the given factors. </p> <p>The composed matrix will be <code class="docutils literal notranslate"><span class="pre">shear</span></code> * <code class="docutils literal notranslate"><span class="pre">this</span></code>, where the shear matrix …<ul class="simple"> <li><p>will shear x for each y coord. by a factor of h.xy ;</p></li> <li><p>will shear x for each z coord. by a factor of h.xz ;</p></li> <li><p>will shear y for each z coord. by a factor of h.yz ;</p></li> <li><p>will shear y for each x coord. by a factor of h.yx ;</p></li> <li><p>will shear z for each x coord. by a factor of h.zx ;</p></li> <li><p>will shear z for each y coord. by a factor of h.zy . <dl class="simple"> <dt><strong>Return</strong></dt><dd><p>const referenced to this </p> </dd> </dl> </p></li> </ul> </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_matrix44_1ab3a8505f060ca3e6284895ee624575e2"></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_matrix44_1ae0d46cd1aa631a6d65709bbd34bdfaec"></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_matrix44_1af2d09a5c38d6bdfa16a982384343b2c7"></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_matrix44_1aad88a9d7f3645f65039fb3e530cf17ba"></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="_CPPv4N5Imath8Matrix448BaseTypeE"> <span id="_CPPv3N5Imath8Matrix448BaseTypeE"></span><span id="_CPPv2N5Imath8Matrix448BaseTypeE"></span><span id="Imath::Matrix44::BaseType"></span><span class="target" id="class_imath_1_1_matrix44_1ac4af88f1809a739afb9cd1981c8264ae"></span><em class="property">typedef </em><a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a> <code class="sig-name descname">BaseType</code><a class="headerlink" href="#_CPPv4N5Imath8Matrix448BaseTypeE" 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="_CPPv4N5Imath8Matrix4411BaseVecTypeE"> <span id="_CPPv3N5Imath8Matrix4411BaseVecTypeE"></span><span id="_CPPv2N5Imath8Matrix4411BaseVecTypeE"></span><span id="Imath::Matrix44::BaseVecType"></span><span class="target" id="class_imath_1_1_matrix44_1a0f649cacdb5b0896087d677adc712769"></span><em class="property">typedef </em><a class="reference internal" href="Vec4.html#_CPPv4I0EN5Imath4Vec4E" title="Imath::Vec4">Vec4</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> <code class="sig-name descname">BaseVecType</code><a class="headerlink" href="#_CPPv4N5Imath8Matrix4411BaseVecTypeE" 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="_CPPv4N5Imath8Matrix44ixEi"> <span id="_CPPv3N5Imath8Matrix44ixEi"></span><span id="_CPPv2N5Imath8Matrix44ixEi"></span><span id="Imath::Matrix44::subscript-operator__i"></span><span class="target" id="class_imath_1_1_matrix44_1afc41272da0c2e9c7eb1b997834df62dd"></span><em class="property">inline</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4N5Imath8Matrix44ixEi" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Row access. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4NK5Imath8Matrix44ixEi"> <span id="_CPPv3NK5Imath8Matrix44ixEi"></span><span id="_CPPv2NK5Imath8Matrix44ixEi"></span><span id="Imath::Matrix44::subscript-operator__iC"></span><span class="target" id="class_imath_1_1_matrix44_1ac544382212cb75d48650ee6a557b180c"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::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="#_CPPv4NK5Imath8Matrix44ixEi" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Row access. </p> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix448setValueER8Matrix44I1TERK8Matrix44I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a31d96383bc2a2523608b240bd3e9c3a0"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setValue</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setValueER8Matrix44I1TERK8Matrix44I1SE" title="Imath::Matrix44::setValue::S">S</a>> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setValueER8Matrix44I1TERK8Matrix44I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix4412setTheMatrixER8Matrix44I1TERK8Matrix44I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ae2e191fc1d4d24cb2ef33c8bb12570d3"></span><em class="property">inline</em> <em class="property">constexpr</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setTheMatrix</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4412setTheMatrixER8Matrix44I1TERK8Matrix44I1SE" title="Imath::Matrix44::setTheMatrix::S">S</a>> &<em>v</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4412setTheMatrixER8Matrix44I1TERK8Matrix44I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix4414setEulerAnglesERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a4610047db1dd2b0ac5ed96dbce3685eb"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setEulerAngles</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4414setEulerAnglesERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::setEulerAngles::S">S</a>> &<em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4414setEulerAnglesERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44I1TERK4Vec3I1SE1S"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a48fd5cb9271a6b058d577ef39317d9bb"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setAxisAngle</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44I1TERK4Vec3I1SE1S" title="Imath::Matrix44::setAxisAngle::S">S</a>> &<em>axis</em>, <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44I1TERK4Vec3I1SE1S" title="Imath::Matrix44::setAxisAngle::S">S</a> <em>angle</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4412setAxisAngleERK8Matrix44I1TERK4Vec3I1SE1S" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix446rotateERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a9c034eb853876e007ae613a033e0b29a"></span><em class="property">inline</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">rotate</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix446rotateERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::rotate::S">S</a>> &<em>r</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix446rotateERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix448setScaleERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1aef8c220a4c4a41cf530b306039daa87e"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setScale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setScaleERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::setScale::S">S</a>> &<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setScaleERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix445scaleERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ab8dcae6c5dc5d369e63ea355982d84dd"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">scale</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix445scaleERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::scale::S">S</a>> &<em>s</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix445scaleERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix4414setTranslationERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ae2cf81f9abe925473f12dc3ba0fad4e7"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setTranslation</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix4414setTranslationERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::setTranslation::S">S</a>> &<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix4414setTranslationERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix449translateERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1af704e1c868cc7da7bd6497cc7f7aa72a"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">translate</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix449translateERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::translate::S">S</a>> &<em>t</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix449translateERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ac1f830efa3eed3979833d2b504d9d222"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::setShear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44I1TERK6Shear6I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a4268438366ce91553c738b312dadaeab"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">setShear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Shear6.html#_CPPv4I0EN5Imath6Shear6E" title="Imath::Shear6">Shear6</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44I1TERK6Shear6I1SE" title="Imath::Matrix44::setShear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix448setShearERK8Matrix44I1TERK6Shear6I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44I1TERK4Vec3I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1ae32d6daa2c8994497f75347b3b61c069"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Vec3.html#_CPPv4I0EN5Imath4Vec3E" title="Imath::Vec3">Vec3</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44I1TERK4Vec3I1SE" title="Imath::Matrix44::shear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44I1TERK4Vec3I1SE" title="Permalink to this definition">¶</a><br /></dt> <dd></dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44I1TERK6Shear6I1SE"> template<class <code class="sig-name descname">S</code>><br /><span class="target" id="class_imath_1_1_matrix44_1a60e1ec2e641d116289d1d00bd644a265"></span><em class="property">inline</em> <em class="property">constexpr</em> <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44::T">T</a>> &<code class="sig-name descname">shear</code><span class="sig-paren">(</span><em class="property">const</em> <a class="reference internal" href="Shear6.html#_CPPv4I0EN5Imath6Shear6E" title="Imath::Shear6">Shear6</a><<a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44I1TERK6Shear6I1SE" title="Imath::Matrix44::shear::S">S</a>> &<em>h</em><span class="sig-paren">)</span> <em class="property">noexcept</em><a class="headerlink" href="#_CPPv4I0EN5Imath8Matrix445shearERK8Matrix44I1TERK6Shear6I1SE" 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_matrix44_1a1554d40e9f5b377afba00574f899688e"></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. 4. </p> </dd></dl> </div> </dd></dl> <dl class="cpp function"> <dt id="_CPPv4I0EN5ImathlsERNSt7ostreamERNSt7ostreamERK8Matrix44I1TE"> <span id="_CPPv3I0EN5ImathlsERNSt7ostreamERK8Matrix44I1TE"></span><span id="_CPPv2I0EN5ImathlsERNSt7ostreamERK8Matrix44I1TE"></span>template<class <code class="sig-name descname">T</code>><br /><span class="target" id="_imath_matrix_8h_1acbbaafc9a79beb38e871f9c88a2aeca1"></span>std::ostream &<code class="sig-prename descclassname">Imath<code class="sig-prename descclassname">::</code></code><code class="sig-name descname">operator<<</code><span class="sig-paren">(</span>std::ostream &<em>s</em>, <em class="property">const</em> <a class="reference internal" href="#_CPPv4I0EN5Imath8Matrix44E" title="Imath::Matrix44">Matrix44</a><<a class="reference internal" href="#_CPPv4I0EN5ImathlsERNSt7ostreamERNSt7ostreamERK8Matrix44I1TE" title="Imath::operator<<::T">T</a>> &<em>m</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4I0EN5ImathlsERNSt7ostreamERNSt7ostreamERK8Matrix44I1TE" title="Permalink to this definition">¶</a><br /></dt> <dd><p>Stream output, as: </p> <p><div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">(</span><span class="n">m00</span> <span class="n">m01</span> <span class="n">m02</span> <span class="n">m03</span> <span class="n">m10</span> <span class="n">m11</span> <span class="n">m12</span> <span class="n">m13</span> <span class="n">m20</span> <span class="n">m21</span> <span class="n">m22</span> <span class="n">m23</span> <span class="n">m30</span> <span class="n">m31</span> <span class="n">m32</span> <span class="n">m33</span><span class="p">)</span> </pre></div> </div> </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="Matrix33.html" title="previous chapter">Matrix33</a></p> <h4>Next topic</h4> <p class="topless"><a href="Plane3.html" title="next chapter">Plane3</a></p> <div role="note" aria-label="source link"> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/classes/Matrix44.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="Plane3.html" title="Plane3" >next</a> |</li> <li class="right" > <a href="Matrix33.html" title="Matrix33" >previous</a> |</li> <li class="nav-item nav-item-0"><a href="../index.html">Imath</a> »</li> <li class="nav-item nav-item-this"><a href="">Matrix44</a></li> </ul> </div> <div class="footer" role="contentinfo"> © Copyright 2021, Contributors to the OpenEXR Project. Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.4.3. </div> </body> </html>
| ver. 1.4 |
Github
|
.
| PHP 8.2.29 | Генераци� �траницы: 0 |
proxy
|
phpinfo
|
�а�тройка