Files
dl/document/html/dl__matrix_8h.html
2026-09-16 14:07:40 +08:00

195 lines
27 KiB
HTML
Vendored

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dl: D:/dl/dl/math/dl_matrix.h 文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">dl
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.13.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',false,false,'search.php','搜索',false);
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_17297ffb27ce571941f5fb5008f01a1f.html">dl</a></li><li class="navelem"><a class="el" href="dir_d483d22d183a78db490f3ff6a4a958eb.html">math</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#nested-classes"></a> &#124;
<a href="#namespaces">命名空间</a> &#124;
<a href="#typedef-members">类型定义</a> &#124;
<a href="#func-members">函数</a> &#124;
<a href="#var-members">变量</a> </div>
<div class="headertitle"><div class="title">dl_matrix.h 文件参考</div></div>
</div><!--header-->
<div class="contents">
<p>矩阵(列存储)
<a href="#details">更多...</a></p>
<div class="textblock"><code>#include &lt;array&gt;</code><br />
<code>#include &quot;<a class="el" href="dl__type_8h_source.html">dl_type.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="dl__math_8h_source.html">dl_math.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="dl__string_8h_source.html">base/dl_string.h</a>&quot;</code><br />
</div>
<p><a href="dl__matrix_8h_source.html">浏览该文件的源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdl_1_1_matrix.html">dl::Matrix&lt; T, M, N &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">矩阵 <a href="classdl_1_1_matrix.html#details">更多...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
命名空间</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html">dl</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html">dl::Mat</a></td></tr>
<tr class="memdesc:namespacedl_1_1_mat"><td class="mdescLeft">&#160;</td><td class="mdescRight">矩阵操作 <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
类型定义</h2></td></tr>
<tr class="memitem:a724a0aef715eff166173ad00086fb59a" id="r_a724a0aef715eff166173ad00086fb59a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">dl::Matrix4</a> = <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt;<a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a>, 4, 4&gt;</td></tr>
<tr class="separator:a724a0aef715eff166173ad00086fb59a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2f6bf983f10f1e723ea40700f535043" id="r_aa2f6bf983f10f1e723ea40700f535043"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#aa2f6bf983f10f1e723ea40700f535043">dl::Matrix3</a> = <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt;<a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a>, 3, 3&gt;</td></tr>
<tr class="separator:aa2f6bf983f10f1e723ea40700f535043"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
函数</h2></td></tr>
<tr class="memitem:a4e9d05ac0af6b4a7845bac400357b954" id="r_a4e9d05ac0af6b4a7845bac400357b954"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, size_t M, size_t N&gt; </td></tr>
<tr class="memitem:a4e9d05ac0af6b4a7845bac400357b954"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacedl.html#a4e9d05ac0af6b4a7845bac400357b954">dl::operator==</a> (const <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a69691c7bdcc3ce6d5d8a1361f22d04ac">M</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;a, const <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a69691c7bdcc3ce6d5d8a1361f22d04ac">M</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;b)</td></tr>
<tr class="memdesc:a4e9d05ac0af6b4a7845bac400357b954"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断相等 <br /></td></tr>
<tr class="separator:a4e9d05ac0af6b4a7845bac400357b954"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa302a146aef81e30d88311710aa652ab" id="r_aa302a146aef81e30d88311710aa652ab"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, size_t M, size_t N, size_t P&gt; </td></tr>
<tr class="memitem:aa302a146aef81e30d88311710aa652ab"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a69691c7bdcc3ce6d5d8a1361f22d04ac">M</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacedl.html#aa302a146aef81e30d88311710aa652ab">dl::operator*</a> (const <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a69691c7bdcc3ce6d5d8a1361f22d04ac">M</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a44c29edb103a2872f519ad0c9a0fdaaa">P</a> &gt; &amp;a, const <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a44c29edb103a2872f519ad0c9a0fdaaa">P</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;b)</td></tr>
<tr class="memdesc:aa302a146aef81e30d88311710aa652ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">矩阵乘法 <br /></td></tr>
<tr class="separator:aa302a146aef81e30d88311710aa652ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9579889c7461adf8553ec7704a293557" id="r_a9579889c7461adf8553ec7704a293557"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, size_t M, size_t N&gt; </td></tr>
<tr class="memitem:a9579889c7461adf8553ec7704a293557"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a69691c7bdcc3ce6d5d8a1361f22d04ac">M</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacedl.html#a9579889c7461adf8553ec7704a293557">dl::operator*</a> (const <a class="el" href="classdl_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a69691c7bdcc3ce6d5d8a1361f22d04ac">M</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;a, const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;v)</td></tr>
<tr class="memdesc:a9579889c7461adf8553ec7704a293557"><td class="mdescLeft">&#160;</td><td class="mdescRight">矩阵 乘 向量 <br /></td></tr>
<tr class="separator:a9579889c7461adf8553ec7704a293557"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad47cedc75e9587dde2f9d1d461a5e5ce" id="r_ad47cedc75e9587dde2f9d1d461a5e5ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#ad47cedc75e9587dde2f9d1d461a5e5ce">dl::Mat::CreateIdentity</a> ()</td></tr>
<tr class="memdesc:ad47cedc75e9587dde2f9d1d461a5e5ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建单位矩阵 <br /></td></tr>
<tr class="separator:ad47cedc75e9587dde2f9d1d461a5e5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a518b7d5cabf8a0cd7a04c2ed49c706cf" id="r_a518b7d5cabf8a0cd7a04c2ed49c706cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a518b7d5cabf8a0cd7a04c2ed49c706cf">dl::Mat::CreateTranslation</a> (const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;t)</td></tr>
<tr class="memdesc:a518b7d5cabf8a0cd7a04c2ed49c706cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建平移矩阵 <br /></td></tr>
<tr class="separator:a518b7d5cabf8a0cd7a04c2ed49c706cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66ced24c504897ebd30d70f5b0f2acbf" id="r_a66ced24c504897ebd30d70f5b0f2acbf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a66ced24c504897ebd30d70f5b0f2acbf">dl::Mat::ApplyTranslation</a> (<a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a> &amp;m, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;t)</td></tr>
<tr class="memdesc:a66ced24c504897ebd30d70f5b0f2acbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">平移矩阵 <br /></td></tr>
<tr class="separator:a66ced24c504897ebd30d70f5b0f2acbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11f384dbeee6ee2c282d8eaab3e74873" id="r_a11f384dbeee6ee2c282d8eaab3e74873"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a11f384dbeee6ee2c282d8eaab3e74873">dl::Mat::CreateRotation</a> (const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;axis, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> angle)</td></tr>
<tr class="memdesc:a11f384dbeee6ee2c282d8eaab3e74873"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建旋转矩阵 <br /></td></tr>
<tr class="separator:a11f384dbeee6ee2c282d8eaab3e74873"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac64a41890a88a3e10989557fb970265c" id="r_ac64a41890a88a3e10989557fb970265c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#ac64a41890a88a3e10989557fb970265c">dl::Mat::CreateRotation</a> (const <a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a> &amp;q)</td></tr>
<tr class="memdesc:ac64a41890a88a3e10989557fb970265c"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建旋转矩阵(四元数) <br /></td></tr>
<tr class="separator:ac64a41890a88a3e10989557fb970265c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf966c66eaa955411ca63f74be079c87" id="r_aaf966c66eaa955411ca63f74be079c87"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#aaf966c66eaa955411ca63f74be079c87">dl::Mat::CreateScaling</a> (const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;s)</td></tr>
<tr class="memdesc:aaf966c66eaa955411ca63f74be079c87"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建缩放矩阵 <br /></td></tr>
<tr class="separator:aaf966c66eaa955411ca63f74be079c87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa62d2ca8c61251c357373136a69cabcc" id="r_aa62d2ca8c61251c357373136a69cabcc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#aa62d2ca8c61251c357373136a69cabcc">dl::Mat::CreateLookTo</a> (const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;eye, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;dir, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;up)</td></tr>
<tr class="memdesc:aa62d2ca8c61251c357373136a69cabcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建LookTo矩阵 <br /></td></tr>
<tr class="separator:aa62d2ca8c61251c357373136a69cabcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b98c480c577614c5cc4e9e8aa62e8df" id="r_a2b98c480c577614c5cc4e9e8aa62e8df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a2b98c480c577614c5cc4e9e8aa62e8df">dl::Mat::CreateLookAt</a> (const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;eye, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;target, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;up)</td></tr>
<tr class="memdesc:a2b98c480c577614c5cc4e9e8aa62e8df"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建LookAt矩阵 <br /></td></tr>
<tr class="separator:a2b98c480c577614c5cc4e9e8aa62e8df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43f1b69fcecd1ebacedf8c466ee11a4f" id="r_a43f1b69fcecd1ebacedf8c466ee11a4f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a43f1b69fcecd1ebacedf8c466ee11a4f">dl::Mat::CreatePerspective</a> (<a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> fovy, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> aspect, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> z_near, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> z_far)</td></tr>
<tr class="memdesc:a43f1b69fcecd1ebacedf8c466ee11a4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建透视投影矩阵 [0, 1] <br /></td></tr>
<tr class="separator:a43f1b69fcecd1ebacedf8c466ee11a4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91fc4e5136e482c72ab54451a204820d" id="r_a91fc4e5136e482c72ab54451a204820d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a91fc4e5136e482c72ab54451a204820d">dl::Mat::CreateOrthogonal</a> (<a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> left, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> top, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> right, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> bottom, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> z_near, <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> z_far)</td></tr>
<tr class="memdesc:a91fc4e5136e482c72ab54451a204820d"><td class="mdescLeft">&#160;</td><td class="mdescRight">创建正交投影矩阵 [0, 1] <br /></td></tr>
<tr class="separator:a91fc4e5136e482c72ab54451a204820d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76a014cbfda77078f9b7a11b88147a80" id="r_a76a014cbfda77078f9b7a11b88147a80"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a76a014cbfda77078f9b7a11b88147a80">dl::Mat::GetInverse</a> (const <a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a> &amp;m)</td></tr>
<tr class="memdesc:a76a014cbfda77078f9b7a11b88147a80"><td class="mdescLeft">&#160;</td><td class="mdescRight">获得逆矩阵 <br /></td></tr>
<tr class="separator:a76a014cbfda77078f9b7a11b88147a80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb75a83d35563ce47752dd6448171014" id="r_afb75a83d35563ce47752dd6448171014"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#afb75a83d35563ce47752dd6448171014">dl::Mat::ApplyDot</a> (const <a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a> &amp;mat, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;dot)</td></tr>
<tr class="memdesc:afb75a83d35563ce47752dd6448171014"><td class="mdescLeft">&#160;</td><td class="mdescRight">变换点 <br /></td></tr>
<tr class="separator:afb75a83d35563ce47752dd6448171014"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86d7dfc438426a783c64a3bd957a1f0b" id="r_a86d7dfc438426a783c64a3bd957a1f0b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a86d7dfc438426a783c64a3bd957a1f0b">dl::Mat::ApplyDir</a> (const <a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a> &amp;mat, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;dir)</td></tr>
<tr class="memdesc:a86d7dfc438426a783c64a3bd957a1f0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">变换向量 <br /></td></tr>
<tr class="separator:a86d7dfc438426a783c64a3bd957a1f0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad545736d72923f6f4978128f91c6c521" id="r_ad545736d72923f6f4978128f91c6c521"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#aa2f6bf983f10f1e723ea40700f535043">Matrix3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#ad545736d72923f6f4978128f91c6c521">dl::Mat::ToMatrix3</a> (const <a class="el" href="namespacedl.html#a724a0aef715eff166173ad00086fb59a">Matrix4</a> &amp;mat)</td></tr>
<tr class="separator:ad545736d72923f6f4978128f91c6c521"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31ea5ddc043c30cb63c0fd55d75c8fdf" id="r_a31ea5ddc043c30cb63c0fd55d75c8fdf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl_1_1_mat.html#a31ea5ddc043c30cb63c0fd55d75c8fdf">dl::Mat::Test</a> ()</td></tr>
<tr class="memdesc:a31ea5ddc043c30cb63c0fd55d75c8fdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">验证正确性 <br /></td></tr>
<tr class="separator:a31ea5ddc043c30cb63c0fd55d75c8fdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
变量</h2></td></tr>
<tr class="memitem:a44fe32742312fc7906e5db2f194d9aea" id="r_a44fe32742312fc7906e5db2f194d9aea"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#a44fe32742312fc7906e5db2f194d9aea">dl::AXIS_X</a> = { 1.0f, 0.0f, 0.0f }</td></tr>
<tr class="separator:a44fe32742312fc7906e5db2f194d9aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3d9a869c8b7640d60c154324b708cdb" id="r_ab3d9a869c8b7640d60c154324b708cdb"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#ab3d9a869c8b7640d60c154324b708cdb">dl::AXIS_Y</a> = { 0.0f, 1.0f, 0.0f }</td></tr>
<tr class="separator:ab3d9a869c8b7640d60c154324b708cdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42295066729661c7d492fe92154f3190" id="r_a42295066729661c7d492fe92154f3190"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#a42295066729661c7d492fe92154f3190">dl::AXIS_Z</a> = { 0.0f, 0.0f, 1.0f }</td></tr>
<tr class="separator:a42295066729661c7d492fe92154f3190"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab12709603f35eb0f68d4170a33ecf61" id="r_aab12709603f35eb0f68d4170a33ecf61"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#aab12709603f35eb0f68d4170a33ecf61">dl::AXIS_UP</a> = <a class="el" href="namespacedl.html#a42295066729661c7d492fe92154f3190">AXIS_Z</a></td></tr>
<tr class="separator:aab12709603f35eb0f68d4170a33ecf61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23da20063fb0f47941f639bed2979baf" id="r_a23da20063fb0f47941f639bed2979baf"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedl.html#a23da20063fb0f47941f639bed2979baf">dl::AXIS_FORWARD</a> = <a class="el" href="namespacedl.html#a44fe32742312fc7906e5db2f194d9aea">AXIS_X</a></td></tr>
<tr class="separator:a23da20063fb0f47941f639bed2979baf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>矩阵(列存储) </p>
<dl class="section version"><dt>版本</dt><dd>1.0 </dd></dl>
<dl class="section author"><dt>作者</dt><dd>lveyou </dd></dl>
<dl class="section date"><dt>日期</dt><dd>22-10-17</dd></dl>
<dl class="section note"><dt>注解</dt><dd>使用列优先存储(一列一列的内存分布,主要是可以直接传给glsl) </dd>
<dd>
数学定义:m X n矩阵是由,m行、n列组成的矩阵,对应ij </dd>
<dd>
右边矩阵先变换<ul>
<li>- - - n(j,x) |11 12 13 14 |21 22 23 24 |31 32 33 34 |41 42 43 44 m(i,y) </li>
</ul>
</dd></dl>
<p class="definition">在文件 <a class="el" href="dl__matrix_8h_source.html">dl_matrix.h</a> 中定义.</p>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.1
</small></address>
</div><!-- doc-content -->
</body>
</html>