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

3173 lines
215 KiB
HTML
Vendored
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!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: dl::Math 命名空间参考</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="namespacedl.html">dl</a></li><li class="navelem"><a class="el" href="namespacedl_1_1_math.html">Math</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#namespaces">命名空间</a> &#124;
<a href="#func-members">函数</a> &#124;
<a href="#var-members">变量</a> </div>
<div class="headertitle"><div class="title">dl::Math 命名空间参考</div></div>
</div><!--header-->
<div class="contents">
<p>2维装箱算法
<a href="#details">更多...</a></p>
<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_1_1_math_1_1_ring_x.html">RingX</a></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="func-members" name="func-members"></a>
函数</h2></td></tr>
<tr class="memitem:a179e7cdae2c5e2721dcce18f539ba1dc" id="r_a179e7cdae2c5e2721dcce18f539ba1dc"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a179e7cdae2c5e2721dcce18f539ba1dc"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a179e7cdae2c5e2721dcce18f539ba1dc">IsOutRange</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> x, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> a, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> b)</td></tr>
<tr class="memdesc:a179e7cdae2c5e2721dcce18f539ba1dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断数值是否越界(前闭后开) <br /></td></tr>
<tr class="separator:a179e7cdae2c5e2721dcce18f539ba1dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dd8ad32404788c594e14647d1299507" id="r_a7dd8ad32404788c594e14647d1299507"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7dd8ad32404788c594e14647d1299507">Radian2Angle</a> (float radin)</td></tr>
<tr class="memdesc:a7dd8ad32404788c594e14647d1299507"><td class="mdescLeft">&#160;</td><td class="mdescRight">弧度转角度 <br /></td></tr>
<tr class="separator:a7dd8ad32404788c594e14647d1299507"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae818648de6e0dc9cacee134bf6436d73" id="r_ae818648de6e0dc9cacee134bf6436d73"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae818648de6e0dc9cacee134bf6436d73">Angle2Radian</a> (float angle)</td></tr>
<tr class="memdesc:ae818648de6e0dc9cacee134bf6436d73"><td class="mdescLeft">&#160;</td><td class="mdescRight">角度转弧度 <br /></td></tr>
<tr class="separator:ae818648de6e0dc9cacee134bf6436d73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab05d68f0f058aefa1d75608134517ce4" id="r_ab05d68f0f058aefa1d75608134517ce4"><td class="memItemLeft" align="right" valign="top">constexpr void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab05d68f0f058aefa1d75608134517ce4">RangeRadian</a> (std::array&lt; float, 2 &gt; &amp;arr)</td></tr>
<tr class="separator:ab05d68f0f058aefa1d75608134517ce4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04458f7f2d5dac1e877fba42a141a51a" id="r_a04458f7f2d5dac1e877fba42a141a51a"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a04458f7f2d5dac1e877fba42a141a51a">ByteReverse</a> (uint32_t x)</td></tr>
<tr class="memdesc:a04458f7f2d5dac1e877fba42a141a51a"><td class="mdescLeft">&#160;</td><td class="mdescRight">翻转字节序 <br /></td></tr>
<tr class="separator:a04458f7f2d5dac1e877fba42a141a51a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ca0412804f8a0b02f64c9e17fcaaec5" id="r_a4ca0412804f8a0b02f64c9e17fcaaec5"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a4ca0412804f8a0b02f64c9e17fcaaec5"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a4ca0412804f8a0b02f64c9e17fcaaec5">Pow</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> x, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> n)</td></tr>
<tr class="memdesc:a4ca0412804f8a0b02f64c9e17fcaaec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回x的n次方 <br /></td></tr>
<tr class="separator:a4ca0412804f8a0b02f64c9e17fcaaec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a105a64a6e1c5f63f3510ddc57c676365" id="r_a105a64a6e1c5f63f3510ddc57c676365"><td class="memItemLeft" align="right" valign="top">constexpr uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a> (uint64_t x, uint8_t n)</td></tr>
<tr class="separator:a105a64a6e1c5f63f3510ddc57c676365"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c440b8fe617bc79637854455b4be336" id="r_a4c440b8fe617bc79637854455b4be336"><td class="memItemLeft" align="right" valign="top">constexpr uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a> (uint32_t x, uint8_t n)</td></tr>
<tr class="separator:a4c440b8fe617bc79637854455b4be336"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adddef243cf841007e5d654c2006829a7" id="r_adddef243cf841007e5d654c2006829a7"><td class="memItemLeft" align="right" valign="top">constexpr uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adddef243cf841007e5d654c2006829a7">CeilToPow2</a> (uint64_t &amp;&amp;x)</td></tr>
<tr class="separator:adddef243cf841007e5d654c2006829a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3eeb60bae7d2782c2691b04aca34ff5c" id="r_a3eeb60bae7d2782c2691b04aca34ff5c"><td class="memItemLeft" align="right" valign="top">constexpr uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3eeb60bae7d2782c2691b04aca34ff5c">CeilToPow2</a> (uint32_t &amp;&amp;x)</td></tr>
<tr class="separator:a3eeb60bae7d2782c2691b04aca34ff5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31bca635c9d085d31f0c4adf30e4f14e" id="r_a31bca635c9d085d31f0c4adf30e4f14e"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a31bca635c9d085d31f0c4adf30e4f14e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a31bca635c9d085d31f0c4adf30e4f14e">CeilToPow2</a> (const <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> &amp;x)</td></tr>
<tr class="memdesc:a31bca635c9d085d31f0c4adf30e4f14e"><td class="mdescLeft">&#160;</td><td class="mdescRight">向上取2的幂次 <br /></td></tr>
<tr class="separator:a31bca635c9d085d31f0c4adf30e4f14e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7317ab76cec9c98260f3cbb7f6530238" id="r_a7317ab76cec9c98260f3cbb7f6530238"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7317ab76cec9c98260f3cbb7f6530238">RSqrt</a> (float x)</td></tr>
<tr class="memdesc:a7317ab76cec9c98260f3cbb7f6530238"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回平方根的倒数 <br /></td></tr>
<tr class="separator:a7317ab76cec9c98260f3cbb7f6530238"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a883b5ed41484062d5437ce662cf52319" id="r_a883b5ed41484062d5437ce662cf52319"><td class="memTemplParams" colspan="2">template&lt;size_t N&gt; </td></tr>
<tr class="memitem:a883b5ed41484062d5437ce662cf52319"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a883b5ed41484062d5437ce662cf52319">NormalizeFast</a> (<a class="el" href="classdl_1_1_array.html">Array</a>&lt; float, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;v)</td></tr>
<tr class="memdesc:a883b5ed41484062d5437ce662cf52319"><td class="mdescLeft">&#160;</td><td class="mdescRight">向量单位化,精度低速度快 <br /></td></tr>
<tr class="separator:a883b5ed41484062d5437ce662cf52319"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af74bba51c5ae4f7eafe21b0d8b41dd77" id="r_af74bba51c5ae4f7eafe21b0d8b41dd77"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1&gt; </td></tr>
<tr class="memitem:af74bba51c5ae4f7eafe21b0d8b41dd77"><td class="memTemplItemLeft" align="right" valign="top">T0&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#af74bba51c5ae4f7eafe21b0d8b41dd77">AddU</a> (T0 a, T1 b)</td></tr>
<tr class="memdesc:af74bba51c5ae4f7eafe21b0d8b41dd77"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号 加 有符号,防止小于0 <br /></td></tr>
<tr class="separator:af74bba51c5ae4f7eafe21b0d8b41dd77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11c31edeab26c0aa7709e5033a5829a4" id="r_a11c31edeab26c0aa7709e5033a5829a4"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </td></tr>
<tr class="memitem:a11c31edeab26c0aa7709e5033a5829a4"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a11c31edeab26c0aa7709e5033a5829a4">AddU</a> (<a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <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; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;b)</td></tr>
<tr class="memdesc:a11c31edeab26c0aa7709e5033a5829a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号 加 有符号,负数转为0 <br /></td></tr>
<tr class="separator:a11c31edeab26c0aa7709e5033a5829a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72afdf382458d013dfcdf794db9c9e0d" id="r_a72afdf382458d013dfcdf794db9c9e0d"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </td></tr>
<tr class="memitem:a72afdf382458d013dfcdf794db9c9e0d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a72afdf382458d013dfcdf794db9c9e0d">AddU</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <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; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;b)</td></tr>
<tr class="separator:a72afdf382458d013dfcdf794db9c9e0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ee9f3ba35fa7a809016bf99b50f9665" id="r_a4ee9f3ba35fa7a809016bf99b50f9665"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1&gt; </td></tr>
<tr class="memitem:a4ee9f3ba35fa7a809016bf99b50f9665"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a4ee9f3ba35fa7a809016bf99b50f9665">AddUCheck</a> (T0 a, T1 b, T0 &amp;ret)</td></tr>
<tr class="memdesc:a4ee9f3ba35fa7a809016bf99b50f9665"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号 加 有符号,检查负数 <br /></td></tr>
<tr class="separator:a4ee9f3ba35fa7a809016bf99b50f9665"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7299d8bc3086fec32c6587be339d8da4" id="r_a7299d8bc3086fec32c6587be339d8da4"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </td></tr>
<tr class="memitem:a7299d8bc3086fec32c6587be339d8da4"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a7299d8bc3086fec32c6587be339d8da4">AddUCheck</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <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; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;b, const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;ret)</td></tr>
<tr class="memdesc:a7299d8bc3086fec32c6587be339d8da4"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号 加 有符号,检查负数 <br /></td></tr>
<tr class="separator:a7299d8bc3086fec32c6587be339d8da4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0380237a8e9d81a1ee75916a12b836db" id="r_a0380237a8e9d81a1ee75916a12b836db"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T&gt; </td></tr>
<tr class="memitem:a0380237a8e9d81a1ee75916a12b836db"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a0380237a8e9d81a1ee75916a12b836db">SubU</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> a, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> b)</td></tr>
<tr class="memdesc:a0380237a8e9d81a1ee75916a12b836db"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号类型相减,负数转为0 <br /></td></tr>
<tr class="separator:a0380237a8e9d81a1ee75916a12b836db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a657ce888b215ad854d96df93500f0ad4" id="r_a657ce888b215ad854d96df93500f0ad4"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1&gt; </td></tr>
<tr class="memitem:a657ce888b215ad854d96df93500f0ad4"><td class="memTemplItemLeft" align="right" valign="top">T0&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a657ce888b215ad854d96df93500f0ad4">SubU</a> (T0 a, T1 b)</td></tr>
<tr class="memdesc:a657ce888b215ad854d96df93500f0ad4"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号减有符号,结果负数转为0 <br /></td></tr>
<tr class="separator:a657ce888b215ad854d96df93500f0ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cb8bdfad54eb42aa820147f7dde5e9a" id="r_a5cb8bdfad54eb42aa820147f7dde5e9a"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T, size_t N&gt; </td></tr>
<tr class="memitem:a5cb8bdfad54eb42aa820147f7dde5e9a"><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#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a5cb8bdfad54eb42aa820147f7dde5e9a">SubU</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;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;b)</td></tr>
<tr class="memdesc:a5cb8bdfad54eb42aa820147f7dde5e9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号类型相减,负数转为0 <br /></td></tr>
<tr class="separator:a5cb8bdfad54eb42aa820147f7dde5e9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f56a2e9e6fac28373c63f40ff62ca37" id="r_a1f56a2e9e6fac28373c63f40ff62ca37"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </td></tr>
<tr class="memitem:a1f56a2e9e6fac28373c63f40ff62ca37"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a1f56a2e9e6fac28373c63f40ff62ca37">SubU</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <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; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;b)</td></tr>
<tr class="memdesc:a1f56a2e9e6fac28373c63f40ff62ca37"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号减有符号,负数转为0 <br /></td></tr>
<tr class="separator:a1f56a2e9e6fac28373c63f40ff62ca37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a834f4782bdd70e7034832d5b4c5ea87c" id="r_a834f4782bdd70e7034832d5b4c5ea87c"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T&gt; </td></tr>
<tr class="memitem:a834f4782bdd70e7034832d5b4c5ea87c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a834f4782bdd70e7034832d5b4c5ea87c">DisU</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> a, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> b)</td></tr>
<tr class="memdesc:a834f4782bdd70e7034832d5b4c5ea87c"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回无符号类型的差值 <br /></td></tr>
<tr class="separator:a834f4782bdd70e7034832d5b4c5ea87c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17273ff24ed2be16e7bf6ba58a0eee62" id="r_a17273ff24ed2be16e7bf6ba58a0eee62"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T, size_t N&gt; </td></tr>
<tr class="memitem:a17273ff24ed2be16e7bf6ba58a0eee62"><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#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a17273ff24ed2be16e7bf6ba58a0eee62">DisU</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;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;b)</td></tr>
<tr class="memdesc:a17273ff24ed2be16e7bf6ba58a0eee62"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回无符号类型的差值 <br /></td></tr>
<tr class="separator:a17273ff24ed2be16e7bf6ba58a0eee62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf5f859bf7a1ed57578fbf040113fd37" id="r_aaf5f859bf7a1ed57578fbf040113fd37"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:aaf5f859bf7a1ed57578fbf040113fd37"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aaf5f859bf7a1ed57578fbf040113fd37">DistancePow2</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;a)</td></tr>
<tr class="memdesc:aaf5f859bf7a1ed57578fbf040113fd37"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回 向量 距离的平方 <br /></td></tr>
<tr class="separator:aaf5f859bf7a1ed57578fbf040113fd37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a952ba8a92e01b978568ea5c6574fe663" id="r_a952ba8a92e01b978568ea5c6574fe663"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a952ba8a92e01b978568ea5c6574fe663"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a952ba8a92e01b978568ea5c6574fe663">DistancePow2</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt; &amp;a)</td></tr>
<tr class="separator:a952ba8a92e01b978568ea5c6574fe663"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7de12e808a28574d032ddc38c11876cd" id="r_a7de12e808a28574d032ddc38c11876cd"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a7de12e808a28574d032ddc38c11876cd"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a7de12e808a28574d032ddc38c11876cd">DistancePow2</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;a)</td></tr>
<tr class="separator:a7de12e808a28574d032ddc38c11876cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31ff00e50cd7649d37e469706827439b" id="r_a31ff00e50cd7649d37e469706827439b"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a31ff00e50cd7649d37e469706827439b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a31ff00e50cd7649d37e469706827439b">Distance</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;a)</td></tr>
<tr class="separator:a31ff00e50cd7649d37e469706827439b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac02e8be8ba71068d5b4ae57f42749443" id="r_ac02e8be8ba71068d5b4ae57f42749443"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ac02e8be8ba71068d5b4ae57f42749443"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ac02e8be8ba71068d5b4ae57f42749443">Distance</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt; &amp;a)</td></tr>
<tr class="separator:ac02e8be8ba71068d5b4ae57f42749443"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26258e9ab93b4ee8867d673874c75f73" id="r_a26258e9ab93b4ee8867d673874c75f73"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a26258e9ab93b4ee8867d673874c75f73"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a26258e9ab93b4ee8867d673874c75f73">Distance</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;a)</td></tr>
<tr class="separator:a26258e9ab93b4ee8867d673874c75f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c490226a724b0c8bcb9de118c0e4242" id="r_a7c490226a724b0c8bcb9de118c0e4242"><td class="memTemplParams" colspan="2">template&lt;IsSigned T&gt; </td></tr>
<tr class="memitem:a7c490226a724b0c8bcb9de118c0e4242"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a7c490226a724b0c8bcb9de118c0e4242">DistancePow2</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &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>, 2 &gt; &amp;b)</td></tr>
<tr class="memdesc:a7c490226a724b0c8bcb9de118c0e4242"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回 距离的平方 <br /></td></tr>
<tr class="separator:a7c490226a724b0c8bcb9de118c0e4242"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a125c73a721ba7fffc381d396dd09cbe6" id="r_a125c73a721ba7fffc381d396dd09cbe6"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T&gt; </td></tr>
<tr class="memitem:a125c73a721ba7fffc381d396dd09cbe6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a125c73a721ba7fffc381d396dd09cbe6">DistancePow2U</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &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>, 2 &gt; &amp;b)</td></tr>
<tr class="memdesc:a125c73a721ba7fffc381d396dd09cbe6"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回 距离的平方 <br /></td></tr>
<tr class="separator:a125c73a721ba7fffc381d396dd09cbe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4ea8b4e5f810327297dd5264056e03e" id="r_ae4ea8b4e5f810327297dd5264056e03e"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T&gt; </td></tr>
<tr class="memitem:ae4ea8b4e5f810327297dd5264056e03e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ae4ea8b4e5f810327297dd5264056e03e">DistanceU</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &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>, 2 &gt; &amp;b)</td></tr>
<tr class="memdesc:ae4ea8b4e5f810327297dd5264056e03e"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回 距离 <br /></td></tr>
<tr class="separator:ae4ea8b4e5f810327297dd5264056e03e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58fa4763197d4ffe4d73c5f14db25ad3" id="r_a58fa4763197d4ffe4d73c5f14db25ad3"><td class="memTemplParams" colspan="2">template&lt;IsSigned T, size_t N&gt; </td></tr>
<tr class="memitem:a58fa4763197d4ffe4d73c5f14db25ad3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a58fa4763197d4ffe4d73c5f14db25ad3">Normalize</a> (<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:a58fa4763197d4ffe4d73c5f14db25ad3"><td class="mdescLeft">&#160;</td><td class="mdescRight">向量单位化 <br /></td></tr>
<tr class="separator:a58fa4763197d4ffe4d73c5f14db25ad3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad93e72766e62852fcc99f56f37d3a52e" id="r_ad93e72766e62852fcc99f56f37d3a52e"><td class="memTemplParams" colspan="2">template&lt;IsSigned T, size_t N&gt; </td></tr>
<tr class="memitem:ad93e72766e62852fcc99f56f37d3a52e"><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#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ad93e72766e62852fcc99f56f37d3a52e">Normalize</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="separator:ad93e72766e62852fcc99f56f37d3a52e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44e4357e81bf26026604eb39fd6bcf46" id="r_a44e4357e81bf26026604eb39fd6bcf46"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="namespacedl.html#a6347394cca146fd6b8fedf1d3545de59">PointU</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a44e4357e81bf26026604eb39fd6bcf46">GetCircle</a> (const <a class="el" href="namespacedl.html#af4b025efbd5dae0045cce4cbc9546416">Size</a> &amp;size, const <a class="el" href="namespacedl.html#a6347394cca146fd6b8fedf1d3545de59">PointU</a> &amp;xy, unsigned rad)</td></tr>
<tr class="memdesc:a44e4357e81bf26026604eb39fd6bcf46"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回圆形范围的节点,考虑越界 <br /></td></tr>
<tr class="separator:a44e4357e81bf26026604eb39fd6bcf46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd6d26eb243e7190c83bf3447db83fa6" id="r_abd6d26eb243e7190c83bf3447db83fa6"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abd6d26eb243e7190c83bf3447db83fa6">GetCircle</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;xy, unsigned rad)</td></tr>
<tr class="memdesc:abd6d26eb243e7190c83bf3447db83fa6"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回圆形范围的节点,不考虑越界 <br /></td></tr>
<tr class="separator:abd6d26eb243e7190c83bf3447db83fa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c4d5b783a36df0968baff39b508ec0b" id="r_a6c4d5b783a36df0968baff39b508ec0b"><td class="memItemLeft" align="right" valign="top">constexpr double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6c4d5b783a36df0968baff39b508ec0b">PI</a> (unsigned n=1, unsigned d=1)</td></tr>
<tr class="memdesc:a6c4d5b783a36df0968baff39b508ec0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回PI的分数 <br /></td></tr>
<tr class="separator:a6c4d5b783a36df0968baff39b508ec0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1274044c749de5cfee397f1faf1b0910" id="r_a1274044c749de5cfee397f1faf1b0910"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1274044c749de5cfee397f1faf1b0910">PIF</a> (unsigned n=1, unsigned d=1)</td></tr>
<tr class="separator:a1274044c749de5cfee397f1faf1b0910"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39a6c98b69fb6d8ca1462b5e200864db" id="r_a39a6c98b69fb6d8ca1462b5e200864db"><td class="memTemplParams" colspan="2">template&lt;IsReal T&gt; </td></tr>
<tr class="memitem:a39a6c98b69fb6d8ca1462b5e200864db"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a39a6c98b69fb6d8ca1462b5e200864db">AlignF</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> x, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> align)</td></tr>
<tr class="memdesc:a39a6c98b69fb6d8ca1462b5e200864db"><td class="mdescLeft">&#160;</td><td class="mdescRight">RGP资源下标转方向 <br /></td></tr>
<tr class="separator:a39a6c98b69fb6d8ca1462b5e200864db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19fda0cdde99bb9cdd07a0d4a7f27643" id="r_a19fda0cdde99bb9cdd07a0d4a7f27643"><td class="memTemplParams" colspan="2">template&lt;IsUnsigned T&gt; </td></tr>
<tr class="memitem:a19fda0cdde99bb9cdd07a0d4a7f27643"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a19fda0cdde99bb9cdd07a0d4a7f27643">Align</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> x, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> align)</td></tr>
<tr class="memdesc:a19fda0cdde99bb9cdd07a0d4a7f27643"><td class="mdescLeft">&#160;</td><td class="mdescRight">对齐align的倍数 <br /></td></tr>
<tr class="separator:a19fda0cdde99bb9cdd07a0d4a7f27643"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a059f5a13706b19d1097577c6a413a30a" id="r_a059f5a13706b19d1097577c6a413a30a"><td class="memItemLeft" align="right" valign="top">constexpr unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a059f5a13706b19d1097577c6a413a30a">IsPow2</a> (unsigned x)</td></tr>
<tr class="memdesc:a059f5a13706b19d1097577c6a413a30a"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否2的幂 <br /></td></tr>
<tr class="separator:a059f5a13706b19d1097577c6a413a30a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21b27263260ecfff829431dffe79db24" id="r_a21b27263260ecfff829431dffe79db24"><td class="memItemLeft" align="right" valign="top">constexpr unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a21b27263260ecfff829431dffe79db24">AlignPow2</a> (unsigned x, unsigned align)</td></tr>
<tr class="memdesc:a21b27263260ecfff829431dffe79db24"><td class="mdescLeft">&#160;</td><td class="mdescRight">对齐align的倍数 <br /></td></tr>
<tr class="separator:a21b27263260ecfff829431dffe79db24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a459084245a9241c9c9d1c3600ce22c99" id="r_a459084245a9241c9c9d1c3600ce22c99"><td class="memItemLeft" align="right" valign="top">constexpr unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a459084245a9241c9c9d1c3600ce22c99">div_found</a> (unsigned n, unsigned d)</td></tr>
<tr class="memdesc:a459084245a9241c9c9d1c3600ce22c99"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号除法,返回四舍五入结果 <br /></td></tr>
<tr class="separator:a459084245a9241c9c9d1c3600ce22c99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ce9d978cb5f546c0c62a59cae7609d8" id="r_a5ce9d978cb5f546c0c62a59cae7609d8"><td class="memItemLeft" align="right" valign="top">constexpr unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5ce9d978cb5f546c0c62a59cae7609d8">div_found_fast</a> (unsigned n, unsigned d)</td></tr>
<tr class="memdesc:a5ce9d978cb5f546c0c62a59cae7609d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">无符号除法,返回四舍五入结果 <br /></td></tr>
<tr class="separator:a5ce9d978cb5f546c0c62a59cae7609d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bae19c3ef6fe4dd56cbbcf6e5017011" id="r_a2bae19c3ef6fe4dd56cbbcf6e5017011"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2bae19c3ef6fe4dd56cbbcf6e5017011">OffsetOrder</a> (float order, int u=1, int v=0, int w=0)</td></tr>
<tr class="memdesc:a2bae19c3ef6fe4dd56cbbcf6e5017011"><td class="mdescLeft">&#160;</td><td class="mdescRight">偏移order <br /></td></tr>
<tr class="separator:a2bae19c3ef6fe4dd56cbbcf6e5017011"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e09b79ab628cb0cafba38f6deb9e555" id="r_a1e09b79ab628cb0cafba38f6deb9e555"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1e09b79ab628cb0cafba38f6deb9e555">CrossProduct</a> (const <a class="el" href="namespacedl.html#a50cf03966b4ef57c19c125108102ac6a">Position2</a> &amp;a, const <a class="el" href="namespacedl.html#a50cf03966b4ef57c19c125108102ac6a">Position2</a> &amp;b)</td></tr>
<tr class="memdesc:a1e09b79ab628cb0cafba38f6deb9e555"><td class="mdescLeft">&#160;</td><td class="mdescRight">叉乘(四指指向a,弯向b,大拇指指向c) <br /></td></tr>
<tr class="separator:a1e09b79ab628cb0cafba38f6deb9e555"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb9de51c93bf99eae86de5c7f4d2ac4b" id="r_aeb9de51c93bf99eae86de5c7f4d2ac4b"><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="#aeb9de51c93bf99eae86de5c7f4d2ac4b">CrossProduct</a> (const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;a, const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;b)</td></tr>
<tr class="separator:aeb9de51c93bf99eae86de5c7f4d2ac4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbf3faf5f923f308a154146ae2bcaef6" id="r_acbf3faf5f923f308a154146ae2bcaef6"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, size_t N&gt; </td></tr>
<tr class="memitem:acbf3faf5f923f308a154146ae2bcaef6"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#acbf3faf5f923f308a154146ae2bcaef6">DotProduct</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;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;b)</td></tr>
<tr class="memdesc:acbf3faf5f923f308a154146ae2bcaef6"><td class="mdescLeft">&#160;</td><td class="mdescRight">点乘 <br /></td></tr>
<tr class="separator:acbf3faf5f923f308a154146ae2bcaef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b4a57c034f58c7ba26105da97b21d22" id="r_a6b4a57c034f58c7ba26105da97b21d22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6b4a57c034f58c7ba26105da97b21d22">Slerp</a> (const <a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a> &amp;q0, const <a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a> &amp;q1, const <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> &amp;t)</td></tr>
<tr class="memdesc:a6b4a57c034f58c7ba26105da97b21d22"><td class="mdescLeft">&#160;</td><td class="mdescRight">球面线性插值 <br /></td></tr>
<tr class="separator:a6b4a57c034f58c7ba26105da97b21d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac646c4be3e3f82f16711b9c6fe342e76" id="r_ac646c4be3e3f82f16711b9c6fe342e76"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a0d61f8370cad1d412f80b84d143e1257">C</a>&gt; </td></tr>
<tr class="memitem:ac646c4be3e3f82f16711b9c6fe342e76"><td class="memTemplItemLeft" align="right" valign="top">constexpr auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ac646c4be3e3f82f16711b9c6fe342e76">DistanceDiagonal</a> (const <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a0d61f8370cad1d412f80b84d143e1257">C</a> &amp;p0, const <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a0d61f8370cad1d412f80b84d143e1257">C</a> &amp;p1)</td></tr>
<tr class="memdesc:ac646c4be3e3f82f16711b9c6fe342e76"><td class="mdescLeft">&#160;</td><td class="mdescRight">纹理区域转uv <br /></td></tr>
<tr class="separator:ac646c4be3e3f82f16711b9c6fe342e76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c7a88eb88bf3bc12a95b9d3624add9e" id="r_a2c7a88eb88bf3bc12a95b9d3624add9e"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2c7a88eb88bf3bc12a95b9d3624add9e">DrawLineLerp</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p0, const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p1)</td></tr>
<tr class="memdesc:a2c7a88eb88bf3bc12a95b9d3624add9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">线性插值 画线算法 <br /></td></tr>
<tr class="separator:a2c7a88eb88bf3bc12a95b9d3624add9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe5d98c6dc17d29dda3b85262e5c1f62" id="r_abe5d98c6dc17d29dda3b85262e5c1f62"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abe5d98c6dc17d29dda3b85262e5c1f62">DrawLineBresenham</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p0, const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p1)</td></tr>
<tr class="memdesc:abe5d98c6dc17d29dda3b85262e5c1f62"><td class="mdescLeft">&#160;</td><td class="mdescRight">bresenham 画线算法 <br /></td></tr>
<tr class="separator:abe5d98c6dc17d29dda3b85262e5c1f62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b5e9bc843a048a64c962c2ed2838e7d" id="r_a0b5e9bc843a048a64c962c2ed2838e7d"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0b5e9bc843a048a64c962c2ed2838e7d">DrawLineOrth</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p0, const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p1)</td></tr>
<tr class="memdesc:a0b5e9bc843a048a64c962c2ed2838e7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">正交 画线算法 <br /></td></tr>
<tr class="separator:a0b5e9bc843a048a64c962c2ed2838e7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5051ef44773c5f3f741cfb2a6c84d327" id="r_a5051ef44773c5f3f741cfb2a6c84d327"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5051ef44773c5f3f741cfb2a6c84d327">DrawLineCover</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p0, const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;p1)</td></tr>
<tr class="memdesc:a5051ef44773c5f3f741cfb2a6c84d327"><td class="mdescLeft">&#160;</td><td class="mdescRight">覆盖 画线算法 <br /></td></tr>
<tr class="separator:a5051ef44773c5f3f741cfb2a6c84d327"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6dd305713bb1ddac8c079a54529aed29" id="r_a6dd305713bb1ddac8c079a54529aed29"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6dd305713bb1ddac8c079a54529aed29">MergePath</a> (std::list&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; &amp;list_pos)</td></tr>
<tr class="memdesc:a6dd305713bb1ddac8c079a54529aed29"><td class="mdescLeft">&#160;</td><td class="mdescRight">路径合并(网格路径) <br /></td></tr>
<tr class="separator:a6dd305713bb1ddac8c079a54529aed29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30cec7b226756e813b19eca19cb38746" id="r_a30cec7b226756e813b19eca19cb38746"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a>&gt; </td></tr>
<tr class="memitem:a30cec7b226756e813b19eca19cb38746"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a30cec7b226756e813b19eca19cb38746">MergePathDirect</a> (std::list&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; &amp;list_pos, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a> func_pass)</td></tr>
<tr class="memdesc:a30cec7b226756e813b19eca19cb38746"><td class="mdescLeft">&#160;</td><td class="mdescRight">路径合并(网格路径) <br /></td></tr>
<tr class="separator:a30cec7b226756e813b19eca19cb38746"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a65e291f6c8fbee166a55652a2af6cd" id="r_a4a65e291f6c8fbee166a55652a2af6cd"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a4a65e291f6c8fbee166a55652a2af6cd"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a4a65e291f6c8fbee166a55652a2af6cd">GetQuadSize</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;quad)</td></tr>
<tr class="memdesc:a4a65e291f6c8fbee166a55652a2af6cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回 <a class="el" href="namespacedl.html#ae4f29e205fdc73953f8757963a2731fd">Quad</a> 的大小 <br /></td></tr>
<tr class="separator:a4a65e291f6c8fbee166a55652a2af6cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65d9465077735120c1e2087908402e7b" id="r_a65d9465077735120c1e2087908402e7b"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a65d9465077735120c1e2087908402e7b"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a65d9465077735120c1e2087908402e7b">GetQuadTriangle0</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;quad)</td></tr>
<tr class="memdesc:a65d9465077735120c1e2087908402e7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回 Quad的三角形 <br /></td></tr>
<tr class="separator:a65d9465077735120c1e2087908402e7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae400ae778f11859dbe0b3eba018483b0" id="r_ae400ae778f11859dbe0b3eba018483b0"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ae400ae778f11859dbe0b3eba018483b0"><td class="memTemplItemLeft" align="right" valign="top">constexpr <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ae400ae778f11859dbe0b3eba018483b0">GetQuadTriangle1</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;quad)</td></tr>
<tr class="separator:ae400ae778f11859dbe0b3eba018483b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae767ab216cd5f9ae60549bfc2361b223" id="r_ae767ab216cd5f9ae60549bfc2361b223"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ae767ab216cd5f9ae60549bfc2361b223"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ae767ab216cd5f9ae60549bfc2361b223">IsRectValid</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect)</td></tr>
<tr class="memdesc:ae767ab216cd5f9ae60549bfc2361b223"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断 矩形 是否有效 <br /></td></tr>
<tr class="separator:ae767ab216cd5f9ae60549bfc2361b223"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45a957095c103eeab76b6aebbcc43b82" id="r_a45a957095c103eeab76b6aebbcc43b82"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a45a957095c103eeab76b6aebbcc43b82"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a45a957095c103eeab76b6aebbcc43b82">IsRectEmpty</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect)</td></tr>
<tr class="memdesc:a45a957095c103eeab76b6aebbcc43b82"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断 矩形 是否空 <br /></td></tr>
<tr class="separator:a45a957095c103eeab76b6aebbcc43b82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7d693ca46e7a9a3d26aaca78638b4b7" id="r_ae7d693ca46e7a9a3d26aaca78638b4b7"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ae7d693ca46e7a9a3d26aaca78638b4b7"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ae7d693ca46e7a9a3d26aaca78638b4b7">IsRectInSize</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, const <a class="el" href="namespacedl.html#af4b025efbd5dae0045cce4cbc9546416">Size</a> &amp;size)</td></tr>
<tr class="memdesc:ae7d693ca46e7a9a3d26aaca78638b4b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断 矩形 在 大小 内,首先它必须是有效的矩形 <br /></td></tr>
<tr class="separator:ae7d693ca46e7a9a3d26aaca78638b4b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48d2083efe7e913aaec26ebf33e7e308" id="r_a48d2083efe7e913aaec26ebf33e7e308"><td class="memItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a48d2083efe7e913aaec26ebf33e7e308">IsXyInSize</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;xy, const <a class="el" href="namespacedl.html#af4b025efbd5dae0045cce4cbc9546416">Size</a> &amp;size)</td></tr>
<tr class="memdesc:a48d2083efe7e913aaec26ebf33e7e308"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断 点是否在大小内 <br /></td></tr>
<tr class="separator:a48d2083efe7e913aaec26ebf33e7e308"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fb9b2d9b508e046d83ed387a2ace051" id="r_a0fb9b2d9b508e046d83ed387a2ace051"><td class="memItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0fb9b2d9b508e046d83ed387a2ace051">IsXyInRect</a> (const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;xy, const <a class="el" href="namespacedl.html#ac239c3e197b60bee840b9583cf35db65">Rect</a> &amp;rect)</td></tr>
<tr class="memdesc:a0fb9b2d9b508e046d83ed387a2ace051"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断 点是否在矩形内 <br /></td></tr>
<tr class="separator:a0fb9b2d9b508e046d83ed387a2ace051"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20d995298fa129d1082c4a3c6e30c18c" id="r_a20d995298fa129d1082c4a3c6e30c18c"><td class="memItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a20d995298fa129d1082c4a3c6e30c18c">IsTriangle</a> (const <a class="el" href="namespacedl.html#a5ab03b7215d3aa1c91c31befb442b33d">Triangle</a> &amp;triangle)</td></tr>
<tr class="memdesc:a20d995298fa129d1082c4a3c6e30c18c"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断是否三角形 <br /></td></tr>
<tr class="separator:a20d995298fa129d1082c4a3c6e30c18c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9c0efe2a1a602f28edae22000be7c26" id="r_af9c0efe2a1a602f28edae22000be7c26"><td class="memItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af9c0efe2a1a602f28edae22000be7c26">IsDotInTriangle</a> (const <a class="el" href="namespacedl.html#a04611b2d3b24b5b4ad6569cdea6f62d4">Position</a> &amp;dot, const <a class="el" href="namespacedl.html#a5ab03b7215d3aa1c91c31befb442b33d">Triangle</a> &amp;triangle)</td></tr>
<tr class="memdesc:af9c0efe2a1a602f28edae22000be7c26"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断点是否在三角形内(包含边) <br /></td></tr>
<tr class="separator:af9c0efe2a1a602f28edae22000be7c26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbd4f647071ac06d6308428d50ba7d54" id="r_adbd4f647071ac06d6308428d50ba7d54"><td class="memItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adbd4f647071ac06d6308428d50ba7d54">IsDotInQuad</a> (const <a class="el" href="namespacedl.html#a04611b2d3b24b5b4ad6569cdea6f62d4">Position</a> &amp;dot, const <a class="el" href="namespacedl.html#ae4f29e205fdc73953f8757963a2731fd">Quad</a> &amp;quad)</td></tr>
<tr class="memdesc:adbd4f647071ac06d6308428d50ba7d54"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断点是否在四边形内(包含边) <br /></td></tr>
<tr class="separator:adbd4f647071ac06d6308428d50ba7d54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a267c9aeadb50488d8f0a3e8fe9d885f8" id="r_a267c9aeadb50488d8f0a3e8fe9d885f8"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespacedl.html#a04611b2d3b24b5b4ad6569cdea6f62d4">Position</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a267c9aeadb50488d8f0a3e8fe9d885f8">CreatePositionByRatioGoldW</a> (<a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> w)</td></tr>
<tr class="memdesc:a267c9aeadb50488d8f0a3e8fe9d885f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断点是否在凸四边形内 <br /></td></tr>
<tr class="separator:a267c9aeadb50488d8f0a3e8fe9d885f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa99ad0951f499ce6eb4f8a2843311336" id="r_aa99ad0951f499ce6eb4f8a2843311336"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a>&gt; </td></tr>
<tr class="memitem:aa99ad0951f499ce6eb4f8a2843311336"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aa99ad0951f499ce6eb4f8a2843311336">GetRectTrim</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a> func, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect)</td></tr>
<tr class="memdesc:aa99ad0951f499ce6eb4f8a2843311336"><td class="mdescLeft">&#160;</td><td class="mdescRight">裁切图像、网格 <br /></td></tr>
<tr class="separator:aa99ad0951f499ce6eb4f8a2843311336"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75a2214abf4b88f8ebec86ec1aa103fd" id="r_a75a2214abf4b88f8ebec86ec1aa103fd"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a75a2214abf4b88f8ebec86ec1aa103fd"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a75a2214abf4b88f8ebec86ec1aa103fd">ExtendRectLeft</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> min_left, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:a75a2214abf4b88f8ebec86ec1aa103fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">向左拓展矩形 <br /></td></tr>
<tr class="separator:a75a2214abf4b88f8ebec86ec1aa103fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3ac68a3f8ad937b643725f8fca0761c" id="r_ab3ac68a3f8ad937b643725f8fca0761c"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ab3ac68a3f8ad937b643725f8fca0761c"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ab3ac68a3f8ad937b643725f8fca0761c">ExtendRectTop</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> min_top, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:ab3ac68a3f8ad937b643725f8fca0761c"><td class="mdescLeft">&#160;</td><td class="mdescRight">向上拓展矩形 <br /></td></tr>
<tr class="separator:ab3ac68a3f8ad937b643725f8fca0761c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab26a0dcb4f301b3e099ae1a800297c91" id="r_ab26a0dcb4f301b3e099ae1a800297c91"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ab26a0dcb4f301b3e099ae1a800297c91"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ab26a0dcb4f301b3e099ae1a800297c91">ExtendRectRight</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> max_right, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:ab26a0dcb4f301b3e099ae1a800297c91"><td class="mdescLeft">&#160;</td><td class="mdescRight">向右拓展矩形 <br /></td></tr>
<tr class="separator:ab26a0dcb4f301b3e099ae1a800297c91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a892c64e33fa5e4a0a334651b7cdfec2c" id="r_a892c64e33fa5e4a0a334651b7cdfec2c"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a892c64e33fa5e4a0a334651b7cdfec2c"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a892c64e33fa5e4a0a334651b7cdfec2c">ExtendRectBottom</a> (<a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> max_bottom, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:a892c64e33fa5e4a0a334651b7cdfec2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">向下拓展矩形 <br /></td></tr>
<tr class="separator:a892c64e33fa5e4a0a334651b7cdfec2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9ee522cb0e0c82b1c642f0898b58f88" id="r_ad9ee522cb0e0c82b1c642f0898b58f88"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:ad9ee522cb0e0c82b1c642f0898b58f88"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ad9ee522cb0e0c82b1c642f0898b58f88">ExtendRect</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect_big, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:ad9ee522cb0e0c82b1c642f0898b58f88"><td class="mdescLeft">&#160;</td><td class="mdescRight">拓展矩形 <br /></td></tr>
<tr class="separator:ad9ee522cb0e0c82b1c642f0898b58f88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c2a7a3ce701c1ac771682451ccc1191" id="r_a9c2a7a3ce701c1ac771682451ccc1191"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a9c2a7a3ce701c1ac771682451ccc1191"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a9c2a7a3ce701c1ac771682451ccc1191">ExtendRect</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;size, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:a9c2a7a3ce701c1ac771682451ccc1191"><td class="mdescLeft">&#160;</td><td class="mdescRight">拓展矩形 <br /></td></tr>
<tr class="separator:a9c2a7a3ce701c1ac771682451ccc1191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ba4a5c06ba40d3d10f82c6edbea18db" id="r_a5ba4a5c06ba40d3d10f82c6edbea18db"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </td></tr>
<tr class="memitem:a5ba4a5c06ba40d3d10f82c6edbea18db"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a5ba4a5c06ba40d3d10f82c6edbea18db">ExtendRectRB</a> (const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;size, <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;rect, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> extend=1)</td></tr>
<tr class="memdesc:a5ba4a5c06ba40d3d10f82c6edbea18db"><td class="mdescLeft">&#160;</td><td class="mdescRight">向右下拓展矩形 <br /></td></tr>
<tr class="separator:a5ba4a5c06ba40d3d10f82c6edbea18db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6237f1594b5aa5aadae8a33148a47cf5" id="r_a6237f1594b5aa5aadae8a33148a47cf5"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6237f1594b5aa5aadae8a33148a47cf5">GetCircleNumMax</a> (unsigned rad)</td></tr>
<tr class="memdesc:a6237f1594b5aa5aadae8a33148a47cf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回圆所占格子数(GetCircle函数使用) <br /></td></tr>
<tr class="separator:a6237f1594b5aa5aadae8a33148a47cf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b85f7602f7208f1bfa8b88936119e6a" id="r_a2b85f7602f7208f1bfa8b88936119e6a"><td class="memItemLeft" align="right" valign="top">constexpr double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2b85f7602f7208f1bfa8b88936119e6a">DegreesToRadians</a> (double deg)</td></tr>
<tr class="memdesc:a2b85f7602f7208f1bfa8b88936119e6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">将角度转为弧度 <br /></td></tr>
<tr class="separator:a2b85f7602f7208f1bfa8b88936119e6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fd487fe9762b31e797e776c82097e51" id="r_a0fd487fe9762b31e797e776c82097e51"><td class="memItemLeft" align="right" valign="top">constexpr double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0fd487fe9762b31e797e776c82097e51">RadiansToDegrees</a> (double rad)</td></tr>
<tr class="memdesc:a0fd487fe9762b31e797e776c82097e51"><td class="mdescLeft">&#160;</td><td class="mdescRight">将弧度转为角度 <br /></td></tr>
<tr class="separator:a0fd487fe9762b31e797e776c82097e51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e2a371e4b466cc477babf88aac97d4d" id="r_a2e2a371e4b466cc477babf88aac97d4d"><td class="memItemLeft" align="right" valign="top">constexpr bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2e2a371e4b466cc477babf88aac97d4d">IsLeapYear</a> (int year)</td></tr>
<tr class="separator:a2e2a371e4b466cc477babf88aac97d4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85e38ecb1e29e1ef07c73b9f36b303f7" id="r_a85e38ecb1e29e1ef07c73b9f36b303f7"><td class="memItemLeft" align="right" valign="top">constexpr int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a85e38ecb1e29e1ef07c73b9f36b303f7">GetMouthDayNum</a> (int year, int mouth)</td></tr>
<tr class="separator:a85e38ecb1e29e1ef07c73b9f36b303f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9219f73426278a517068d993de93a87" id="r_af9219f73426278a517068d993de93a87"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af9219f73426278a517068d993de93a87">GetSolarDeclination</a> (int day)</td></tr>
<tr class="memdesc:af9219f73426278a517068d993de93a87"><td class="mdescLeft">&#160;</td><td class="mdescRight">计算太阳赤纬(太阳直射点纬度) <br /></td></tr>
<tr class="separator:af9219f73426278a517068d993de93a87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c4596cb6d991ed1e8f808328d4a85aa" id="r_a2c4596cb6d991ed1e8f808328d4a85aa"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2c4596cb6d991ed1e8f808328d4a85aa">GetSolarElevation</a> (double latitude, double declination)</td></tr>
<tr class="memdesc:a2c4596cb6d991ed1e8f808328d4a85aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">计算正午太阳高度角 <br /></td></tr>
<tr class="separator:a2c4596cb6d991ed1e8f808328d4a85aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06dfd459bb0cd598f8cf107a56ab8d75" id="r_a06dfd459bb0cd598f8cf107a56ab8d75"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a06dfd459bb0cd598f8cf107a56ab8d75">GetSeason</a> (int day, double latitude)</td></tr>
<tr class="memdesc:a06dfd459bb0cd598f8cf107a56ab8d75"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回季节 <br /></td></tr>
<tr class="separator:a06dfd459bb0cd598f8cf107a56ab8d75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb2b9b270b34ce11bcb23836b2580b0c" id="r_abb2b9b270b34ce11bcb23836b2580b0c"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abb2b9b270b34ce11bcb23836b2580b0c">GetBaseTemperature</a> (double latitude, int day)</td></tr>
<tr class="memdesc:abb2b9b270b34ce11bcb23836b2580b0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">基于纬度估算海平面基准温度(℃) <br /></td></tr>
<tr class="separator:abb2b9b270b34ce11bcb23836b2580b0c"><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:aac05b119f1bdc7c211f75cb83e943c02" id="r_aac05b119f1bdc7c211f75cb83e943c02"><td class="memItemLeft" align="right" valign="top">constexpr uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aac05b119f1bdc7c211f75cb83e943c02">ARRAY_POW2</a> []</td></tr>
<tr class="memdesc:aac05b119f1bdc7c211f75cb83e943c02"><td class="mdescLeft">&#160;</td><td class="mdescRight">2的整数次幂列表 <br /></td></tr>
<tr class="separator:aac05b119f1bdc7c211f75cb83e943c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35722e5e04b27ee4c5c1e9e29e190712" id="r_a35722e5e04b27ee4c5c1e9e29e190712"><td class="memItemLeft" align="right" valign="top">constexpr uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a35722e5e04b27ee4c5c1e9e29e190712">ARRAY_POW2_32</a> []</td></tr>
<tr class="separator:a35722e5e04b27ee4c5c1e9e29e190712"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>2维装箱算法 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>箱子大小 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">map_size</td><td>传入矩形的数组,失败返回剩余的矩形 </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">map_fet</td><td>返回装入的矩形信息 </td></tr>
</table>
</dd>
</dl>
</div><h2 class="groupheader">函数说明</h2>
<a id="a11c31edeab26c0aa7709e5033a5829a4" name="a11c31edeab26c0aa7709e5033a5829a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11c31edeab26c0aa7709e5033a5829a4">&#9670;&#160;</a></span>AddU() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::AddU </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号 加 有符号,负数转为0 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00280">280</a> 行定义.</p>
</div>
</div>
<a id="a72afdf382458d013dfcdf794db9c9e0d" name="a72afdf382458d013dfcdf794db9c9e0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72afdf382458d013dfcdf794db9c9e0d">&#9670;&#160;</a></span>AddU() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; dl::Math::AddU </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00288">288</a> 行定义.</p>
</div>
</div>
<a id="af74bba51c5ae4f7eafe21b0d8b41dd77" name="af74bba51c5ae4f7eafe21b0d8b41dd77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af74bba51c5ae4f7eafe21b0d8b41dd77">&#9670;&#160;</a></span>AddU() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1&gt; </div>
<table class="memname">
<tr>
<td class="memname">T0 dl::Math::AddU </td>
<td>(</td>
<td class="paramtype">T0</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T1</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号 加 有符号,防止小于0 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00269">269</a> 行定义.</p>
</div>
</div>
<a id="a7299d8bc3086fec32c6587be339d8da4" name="a7299d8bc3086fec32c6587be339d8da4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7299d8bc3086fec32c6587be339d8da4">&#9670;&#160;</a></span>AddUCheck() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname">bool dl::Math::AddUCheck </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>ret</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号 加 有符号,检查负数 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00313">313</a> 行定义.</p>
</div>
</div>
<a id="a4ee9f3ba35fa7a809016bf99b50f9665" name="a4ee9f3ba35fa7a809016bf99b50f9665"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ee9f3ba35fa7a809016bf99b50f9665">&#9670;&#160;</a></span>AddUCheck() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1&gt; </div>
<table class="memname">
<tr>
<td class="memname">bool dl::Math::AddUCheck </td>
<td>(</td>
<td class="paramtype">T0</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T1</td> <td class="paramname"><span class="paramname"><em>b</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T0 &amp;</td> <td class="paramname"><span class="paramname"><em>ret</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号 加 有符号,检查负数 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00299">299</a> 行定义.</p>
</div>
</div>
<a id="a19fda0cdde99bb9cdd07a0d4a7f27643" name="a19fda0cdde99bb9cdd07a0d4a7f27643"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19fda0cdde99bb9cdd07a0d4a7f27643">&#9670;&#160;</a></span>Align()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::Align </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>align</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>对齐align的倍数 </p>
<dl class="section note"><dt>注解</dt><dd>注意,现在如果x为0,则返回align </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00593">593</a> 行定义.</p>
</div>
</div>
<a id="a39a6c98b69fb6d8ca1462b5e200864db" name="a39a6c98b69fb6d8ca1462b5e200864db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39a6c98b69fb6d8ca1462b5e200864db">&#9670;&#160;</a></span>AlignF()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsReal T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::AlignF </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>align</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>RGP资源下标转方向 </p>
<p>向量 转 掩码</p>
<p>对齐align的倍数,并且x考虑负数 </p><dl class="section note"><dt>注解</dt><dd>注意,现在如果x为0,则返回align </dd>
<dd>
负数向右对齐 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00564">564</a> 行定义.</p>
</div>
</div>
<a id="a21b27263260ecfff829431dffe79db24" name="a21b27263260ecfff829431dffe79db24"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21b27263260ecfff829431dffe79db24">&#9670;&#160;</a></span>AlignPow2()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned dl::Math::AlignPow2 </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>align</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>对齐align的倍数 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">align</td><td>必须是2的幂,否则返回0 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00617">617</a> 行定义.</p>
</div>
</div>
<a id="ae818648de6e0dc9cacee134bf6436d73" name="ae818648de6e0dc9cacee134bf6436d73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae818648de6e0dc9cacee134bf6436d73">&#9670;&#160;</a></span>Angle2Radian()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float dl::Math::Angle2Radian </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>angle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>角度转弧度 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00091">91</a> 行定义.</p>
</div>
</div>
<a id="a04458f7f2d5dac1e877fba42a141a51a" name="a04458f7f2d5dac1e877fba42a141a51a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04458f7f2d5dac1e877fba42a141a51a">&#9670;&#160;</a></span>ByteReverse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t dl::Math::ByteReverse </td>
<td>(</td>
<td class="paramtype">uint32_t</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>翻转字节序 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00113">113</a> 行定义.</p>
</div>
</div>
<a id="a31bca635c9d085d31f0c4adf30e4f14e" name="a31bca635c9d085d31f0c4adf30e4f14e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31bca635c9d085d31f0c4adf30e4f14e">&#9670;&#160;</a></span>CeilToPow2() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::CeilToPow2 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> &amp;</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>向上取2的幂次 </p>
<dl class="section note"><dt>注解</dt><dd>bit_ceil很难触发常量表达式,但在计算变量时最快 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00214">214</a> 行定义.</p>
</div>
</div>
<a id="a3eeb60bae7d2782c2691b04aca34ff5c" name="a3eeb60bae7d2782c2691b04aca34ff5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3eeb60bae7d2782c2691b04aca34ff5c">&#9670;&#160;</a></span>CeilToPow2() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t dl::Math::CeilToPow2 </td>
<td>(</td>
<td class="paramtype">uint32_t &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00198">198</a> 行定义.</p>
</div>
</div>
<a id="adddef243cf841007e5d654c2006829a7" name="adddef243cf841007e5d654c2006829a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adddef243cf841007e5d654c2006829a7">&#9670;&#160;</a></span>CeilToPow2() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint64_t dl::Math::CeilToPow2 </td>
<td>(</td>
<td class="paramtype">uint64_t &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00183">183</a> 行定义.</p>
</div>
</div>
<a id="a267c9aeadb50488d8f0a3e8fe9d885f8" name="a267c9aeadb50488d8f0a3e8fe9d885f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a267c9aeadb50488d8f0a3e8fe9d885f8">&#9670;&#160;</a></span>CreatePositionByRatioGoldW()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a04611b2d3b24b5b4ad6569cdea6f62d4">Position</a> dl::Math::CreatePositionByRatioGoldW </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a></td> <td class="paramname"><span class="paramname"><em>w</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断点是否在凸四边形内 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dot</td><td></td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">quad</td><td>四边形(凸)</td></tr>
</table>
</dd>
</dl>
<p>按宽生成黄金比例大小 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00939">939</a> 行定义.</p>
</div>
</div>
<a id="a1e09b79ab628cb0cafba38f6deb9e555" name="a1e09b79ab628cb0cafba38f6deb9e555"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e09b79ab628cb0cafba38f6deb9e555">&#9670;&#160;</a></span>CrossProduct() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> dl::Math::CrossProduct </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a50cf03966b4ef57c19c125108102ac6a">Position2</a> &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a50cf03966b4ef57c19c125108102ac6a">Position2</a> &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>叉乘(四指指向a,弯向b,大拇指指向c) </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00674">674</a> 行定义.</p>
</div>
</div>
<a id="aeb9de51c93bf99eae86de5c7f4d2ac4b" name="aeb9de51c93bf99eae86de5c7f4d2ac4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb9de51c93bf99eae86de5c7f4d2ac4b">&#9670;&#160;</a></span>CrossProduct() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> dl::Math::CrossProduct </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a8caf4bcf54955de2e79b95811306b841">Position3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00679">679</a> 行定义.</p>
</div>
</div>
<a id="a2b85f7602f7208f1bfa8b88936119e6a" name="a2b85f7602f7208f1bfa8b88936119e6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b85f7602f7208f1bfa8b88936119e6a">&#9670;&#160;</a></span>DegreesToRadians()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double dl::Math::DegreesToRadians </td>
<td>(</td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>deg</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>将角度转为弧度 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01301">1301</a> 行定义.</p>
</div>
</div>
<a id="a31ff00e50cd7649d37e469706827439b" name="a31ff00e50cd7649d37e469706827439b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31ff00e50cd7649d37e469706827439b">&#9670;&#160;</a></span>Distance() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::Distance </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00406">406</a> 行定义.</p>
</div>
</div>
<a id="ac02e8be8ba71068d5b4ae57f42749443" name="ac02e8be8ba71068d5b4ae57f42749443"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac02e8be8ba71068d5b4ae57f42749443">&#9670;&#160;</a></span>Distance() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::Distance </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00411">411</a> 行定义.</p>
</div>
</div>
<a id="a26258e9ab93b4ee8867d673874c75f73" name="a26258e9ab93b4ee8867d673874c75f73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a26258e9ab93b4ee8867d673874c75f73">&#9670;&#160;</a></span>Distance() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::Distance </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00416">416</a> 行定义.</p>
</div>
</div>
<a id="ac646c4be3e3f82f16711b9c6fe342e76" name="ac646c4be3e3f82f16711b9c6fe342e76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac646c4be3e3f82f16711b9c6fe342e76">&#9670;&#160;</a></span>DistanceDiagonal()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a0d61f8370cad1d412f80b84d143e1257">C</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto dl::Math::DistanceDiagonal </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a0d61f8370cad1d412f80b84d143e1257">C</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a0d61f8370cad1d412f80b84d143e1257">C</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p1</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>纹理区域转uv </p>
<p>对角线距离(注意不是真的对角线,而是取宽高较大者) </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00728">728</a> 行定义.</p>
</div>
</div>
<a id="aaf5f859bf7a1ed57578fbf040113fd37" name="aaf5f859bf7a1ed57578fbf040113fd37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaf5f859bf7a1ed57578fbf040113fd37">&#9670;&#160;</a></span>DistancePow2() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DistancePow2 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>返回 向量 距离的平方 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00389">389</a> 行定义.</p>
</div>
</div>
<a id="a7c490226a724b0c8bcb9de118c0e4242" name="a7c490226a724b0c8bcb9de118c0e4242"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c490226a724b0c8bcb9de118c0e4242">&#9670;&#160;</a></span>DistancePow2() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsSigned T&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DistancePow2 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回 距离的平方 </p>
<dl class="section note"><dt>注解</dt><dd>有符号版本 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00425">425</a> 行定义.</p>
</div>
</div>
<a id="a952ba8a92e01b978568ea5c6574fe663" name="a952ba8a92e01b978568ea5c6574fe663"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a952ba8a92e01b978568ea5c6574fe663">&#9670;&#160;</a></span>DistancePow2() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DistancePow2 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00395">395</a> 行定义.</p>
</div>
</div>
<a id="a7de12e808a28574d032ddc38c11876cd" name="a7de12e808a28574d032ddc38c11876cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7de12e808a28574d032ddc38c11876cd">&#9670;&#160;</a></span>DistancePow2() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DistancePow2 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00401">401</a> 行定义.</p>
</div>
</div>
<a id="a125c73a721ba7fffc381d396dd09cbe6" name="a125c73a721ba7fffc381d396dd09cbe6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a125c73a721ba7fffc381d396dd09cbe6">&#9670;&#160;</a></span>DistancePow2U()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DistancePow2U </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回 距离的平方 </p>
<dl class="section note"><dt>注解</dt><dd>无符号版本 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00434">434</a> 行定义.</p>
</div>
</div>
<a id="ae4ea8b4e5f810327297dd5264056e03e" name="ae4ea8b4e5f810327297dd5264056e03e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4ea8b4e5f810327297dd5264056e03e">&#9670;&#160;</a></span>DistanceU()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DistanceU </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回 距离 </p>
<dl class="section note"><dt>注解</dt><dd>无符号版本 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00445">445</a> 行定义.</p>
</div>
</div>
<a id="a17273ff24ed2be16e7bf6ba58a0eee62" name="a17273ff24ed2be16e7bf6ba58a0eee62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17273ff24ed2be16e7bf6ba58a0eee62">&#9670;&#160;</a></span>DisU() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T, size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname"><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; dl::Math::DisU </td>
<td>(</td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回无符号类型的差值 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00375">375</a> 行定义.</p>
</div>
</div>
<a id="a834f4782bdd70e7034832d5b4c5ea87c" name="a834f4782bdd70e7034832d5b4c5ea87c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a834f4782bdd70e7034832d5b4c5ea87c">&#9670;&#160;</a></span>DisU() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DisU </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回无符号类型的差值 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00366">366</a> 行定义.</p>
</div>
</div>
<a id="a459084245a9241c9c9d1c3600ce22c99" name="a459084245a9241c9c9d1c3600ce22c99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a459084245a9241c9c9d1c3600ce22c99">&#9670;&#160;</a></span>div_found()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned dl::Math::div_found </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>n</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>d</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号除法,返回四舍五入结果 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>分子 </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>分母 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00630">630</a> 行定义.</p>
</div>
</div>
<a id="a5ce9d978cb5f546c0c62a59cae7609d8" name="a5ce9d978cb5f546c0c62a59cae7609d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ce9d978cb5f546c0c62a59cae7609d8">&#9670;&#160;</a></span>div_found_fast()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned dl::Math::div_found_fast </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>n</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>d</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号除法,返回四舍五入结果 </p>
<dl class="section note"><dt>注解</dt><dd>分子n过大会溢出,但效率更高 </dd></dl>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>分子 </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>分母 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00643">643</a> 行定义.</p>
</div>
</div>
<a id="acbf3faf5f923f308a154146ae2bcaef6" name="acbf3faf5f923f308a154146ae2bcaef6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbf3faf5f923f308a154146ae2bcaef6">&#9670;&#160;</a></span>DotProduct()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, size_t N&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::DotProduct </td>
<td>(</td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>点乘 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00692">692</a> 行定义.</p>
</div>
</div>
<a id="abe5d98c6dc17d29dda3b85262e5c1f62" name="abe5d98c6dc17d29dda3b85262e5c1f62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe5d98c6dc17d29dda3b85262e5c1f62">&#9670;&#160;</a></span>DrawLineBresenham()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; dl::Math::DrawLineBresenham </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p1</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>bresenham 画线算法 </p>
</div>
</div>
<a id="a5051ef44773c5f3f741cfb2a6c84d327" name="a5051ef44773c5f3f741cfb2a6c84d327"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5051ef44773c5f3f741cfb2a6c84d327">&#9670;&#160;</a></span>DrawLineCover()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; dl::Math::DrawLineCover </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p1</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>覆盖 画线算法 </p>
<dl class="section note"><dt>注解</dt><dd>直线经过的网格都包含(会穿过对角线) </dd></dl>
</div>
</div>
<a id="a2c7a88eb88bf3bc12a95b9d3624add9e" name="a2c7a88eb88bf3bc12a95b9d3624add9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c7a88eb88bf3bc12a95b9d3624add9e">&#9670;&#160;</a></span>DrawLineLerp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; dl::Math::DrawLineLerp </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p1</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>线性插值 画线算法 </p>
</div>
</div>
<a id="a0b5e9bc843a048a64c962c2ed2838e7d" name="a0b5e9bc843a048a64c962c2ed2838e7d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b5e9bc843a048a64c962c2ed2838e7d">&#9670;&#160;</a></span>DrawLineOrth()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; dl::Math::DrawLineOrth </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>p1</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>正交 画线算法 </p>
<dl class="section note"><dt>注解</dt><dd>只能竖着或横着走 </dd></dl>
</div>
</div>
<a id="a9c2a7a3ce701c1ac771682451ccc1191" name="a9c2a7a3ce701c1ac771682451ccc1191"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c2a7a3ce701c1ac771682451ccc1191">&#9670;&#160;</a></span>ExtendRect() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRect </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>size</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>区域大小(左上角00 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01091">1091</a> 行定义.</p>
</div>
</div>
<a id="ad9ee522cb0e0c82b1c642f0898b58f88" name="ad9ee522cb0e0c82b1c642f0898b58f88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9ee522cb0e0c82b1c642f0898b58f88">&#9670;&#160;</a></span>ExtendRect() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRect </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect_big</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rect_big</td><td>最大区域 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01077">1077</a> 行定义.</p>
</div>
</div>
<a id="a892c64e33fa5e4a0a334651b7cdfec2c" name="a892c64e33fa5e4a0a334651b7cdfec2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a892c64e33fa5e4a0a334651b7cdfec2c">&#9670;&#160;</a></span>ExtendRectBottom()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRectBottom </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>max_bottom</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>向下拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">max_bottom</td><td>最大下方 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01065">1065</a> 行定义.</p>
</div>
</div>
<a id="a75a2214abf4b88f8ebec86ec1aa103fd" name="a75a2214abf4b88f8ebec86ec1aa103fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75a2214abf4b88f8ebec86ec1aa103fd">&#9670;&#160;</a></span>ExtendRectLeft()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRectLeft </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>min_left</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>向左拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">min_left</td><td>最小左侧 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01032">1032</a> 行定义.</p>
</div>
</div>
<a id="a5ba4a5c06ba40d3d10f82c6edbea18db" name="a5ba4a5c06ba40d3d10f82c6edbea18db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ba4a5c06ba40d3d10f82c6edbea18db">&#9670;&#160;</a></span>ExtendRectRB()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRectRB </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>size</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>向右下拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>区域大小(左上角00 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01104">1104</a> 行定义.</p>
</div>
</div>
<a id="ab26a0dcb4f301b3e099ae1a800297c91" name="ab26a0dcb4f301b3e099ae1a800297c91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab26a0dcb4f301b3e099ae1a800297c91">&#9670;&#160;</a></span>ExtendRectRight()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRectRight </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>max_right</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>向右拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">max_right</td><td>最大右侧 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01054">1054</a> 行定义.</p>
</div>
</div>
<a id="ab3ac68a3f8ad937b643725f8fca0761c" name="ab3ac68a3f8ad937b643725f8fca0761c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3ac68a3f8ad937b643725f8fca0761c">&#9670;&#160;</a></span>ExtendRectTop()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::ExtendRectTop </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>min_top</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>extend</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>向上拓展矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">min_top</td><td>最小上方 </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回拓展后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01043">1043</a> 行定义.</p>
</div>
</div>
<a id="abb2b9b270b34ce11bcb23836b2580b0c" name="abb2b9b270b34ce11bcb23836b2580b0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb2b9b270b34ce11bcb23836b2580b0c">&#9670;&#160;</a></span>GetBaseTemperature()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double dl::Math::GetBaseTemperature </td>
<td>(</td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>latitude</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>day</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>基于纬度估算海平面基准温度(℃) </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">latitude</td><td>当地纬度(度) </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">day</td><td>一年第几天 </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
<table class="retval">
<tr><td class="paramname">估算温度(℃)</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="abd6d26eb243e7190c83bf3447db83fa6" name="abd6d26eb243e7190c83bf3447db83fa6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd6d26eb243e7190c83bf3447db83fa6">&#9670;&#160;</a></span>GetCircle() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; dl::Math::GetCircle </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>xy</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>rad</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回圆形范围的节点,不考虑越界 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rad</td><td>传入0返回1个节点、传入1返回4个节点、传入2返回13个节点,依次类推 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a44e4357e81bf26026604eb39fd6bcf46" name="a44e4357e81bf26026604eb39fd6bcf46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44e4357e81bf26026604eb39fd6bcf46">&#9670;&#160;</a></span>GetCircle() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="namespacedl.html#a6347394cca146fd6b8fedf1d3545de59">PointU</a> &gt; dl::Math::GetCircle </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af4b025efbd5dae0045cce4cbc9546416">Size</a> &amp;</td> <td class="paramname"><span class="paramname"><em>size</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a6347394cca146fd6b8fedf1d3545de59">PointU</a> &amp;</td> <td class="paramname"><span class="paramname"><em>xy</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>rad</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回圆形范围的节点,考虑越界 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rad</td><td>传入0返回1个节点、传入1返回4个节点、传入2返回13个节点,依次类推 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6237f1594b5aa5aadae8a33148a47cf5" name="a6237f1594b5aa5aadae8a33148a47cf5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6237f1594b5aa5aadae8a33148a47cf5">&#9670;&#160;</a></span>GetCircleNumMax()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned dl::Math::GetCircleNumMax </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>rad</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>返回圆所占格子数(GetCircle函数使用) </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01112">1112</a> 行定义.</p>
</div>
</div>
<a id="a85e38ecb1e29e1ef07c73b9f36b303f7" name="a85e38ecb1e29e1ef07c73b9f36b303f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85e38ecb1e29e1ef07c73b9f36b303f7">&#9670;&#160;</a></span>GetMouthDayNum()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int dl::Math::GetMouthDayNum </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>year</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>mouth</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01321">1321</a> 行定义.</p>
</div>
</div>
<a id="a4a65e291f6c8fbee166a55652a2af6cd" name="a4a65e291f6c8fbee166a55652a2af6cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a65e291f6c8fbee166a55652a2af6cd">&#9670;&#160;</a></span>GetQuadSize()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::GetQuadSize </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>quad</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>返回 <a class="el" href="namespacedl.html#ae4f29e205fdc73953f8757963a2731fd">Quad</a> 的大小 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00804">804</a> 行定义.</p>
</div>
</div>
<a id="a65d9465077735120c1e2087908402e7b" name="a65d9465077735120c1e2087908402e7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65d9465077735120c1e2087908402e7b">&#9670;&#160;</a></span>GetQuadTriangle0()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt; dl::Math::GetQuadTriangle0 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>quad</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>返回 Quad的三角形 </p>
<dl class="section note"><dt>注解</dt><dd>顺时针绕序,0为右上方 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00814">814</a> 行定义.</p>
</div>
</div>
<a id="ae400ae778f11859dbe0b3eba018483b0" name="ae400ae778f11859dbe0b3eba018483b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae400ae778f11859dbe0b3eba018483b0">&#9670;&#160;</a></span>GetQuadTriangle1()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 3 &gt; dl::Math::GetQuadTriangle1 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>quad</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00819">819</a> 行定义.</p>
</div>
</div>
<a id="aa99ad0951f499ce6eb4f8a2843311336" name="aa99ad0951f499ce6eb4f8a2843311336"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa99ad0951f499ce6eb4f8a2843311336">&#9670;&#160;</a></span>GetRectTrim()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::GetRectTrim </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a></td> <td class="paramname"><span class="paramname"><em>func</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>裁切图像、网格 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>不可以裁切 请返回true </td></tr>
<tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>rect 初始区域,返回裁切后的 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00950">950</a> 行定义.</p>
</div>
</div>
<a id="a06dfd459bb0cd598f8cf107a56ab8d75" name="a06dfd459bb0cd598f8cf107a56ab8d75"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06dfd459bb0cd598f8cf107a56ab8d75">&#9670;&#160;</a></span>GetSeason()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int dl::Math::GetSeason </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>day</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>latitude</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>返回季节 </p>
<dl class="retval"><dt>返回值</dt><dd>
<table class="retval">
<tr><td class="paramname">0.春季</td><td>1.夏季 2.秋季 3.冬季 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af9219f73426278a517068d993de93a87" name="af9219f73426278a517068d993de93a87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9219f73426278a517068d993de93a87">&#9670;&#160;</a></span>GetSolarDeclination()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double dl::Math::GetSolarDeclination </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>day</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>计算太阳赤纬(太阳直射点纬度) </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">day</td><td>一年中的第几天(1月1日为1,12月31日为365) </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
<table class="retval">
<tr><td class="paramname">赤纬角度(单位:度),范围</td><td>-23.44° 到 +23.44° </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>注解</dt><dd>春分和秋分南北半球温度更一致(79、265) </dd></dl>
</div>
</div>
<a id="a2c4596cb6d991ed1e8f808328d4a85aa" name="a2c4596cb6d991ed1e8f808328d4a85aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c4596cb6d991ed1e8f808328d4a85aa">&#9670;&#160;</a></span>GetSolarElevation()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double dl::Math::GetSolarElevation </td>
<td>(</td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>latitude</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>declination</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>计算正午太阳高度角 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">latitude</td><td>当地纬度(度,北正南负) </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">declination</td><td>太阳赤纬(度) </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
<table class="retval">
<tr><td class="paramname">正午太阳高度角(度)</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="adbd4f647071ac06d6308428d50ba7d54" name="adbd4f647071ac06d6308428d50ba7d54"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adbd4f647071ac06d6308428d50ba7d54">&#9670;&#160;</a></span>IsDotInQuad()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsDotInQuad </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a04611b2d3b24b5b4ad6569cdea6f62d4">Position</a> &amp;</td> <td class="paramname"><span class="paramname"><em>dot</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#ae4f29e205fdc73953f8757963a2731fd">Quad</a> &amp;</td> <td class="paramname"><span class="paramname"><em>quad</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断点是否在四边形内(包含边) </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dot</td><td></td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">quad</td><td>四边形 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00920">920</a> 行定义.</p>
</div>
</div>
<a id="af9c0efe2a1a602f28edae22000be7c26" name="af9c0efe2a1a602f28edae22000be7c26"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9c0efe2a1a602f28edae22000be7c26">&#9670;&#160;</a></span>IsDotInTriangle()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsDotInTriangle </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a04611b2d3b24b5b4ad6569cdea6f62d4">Position</a> &amp;</td> <td class="paramname"><span class="paramname"><em>dot</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a5ab03b7215d3aa1c91c31befb442b33d">Triangle</a> &amp;</td> <td class="paramname"><span class="paramname"><em>triangle</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断点是否在三角形内(包含边) </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dot</td><td></td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">triangle</td><td>三角形 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00900">900</a> 行定义.</p>
</div>
</div>
<a id="a2e2a371e4b466cc477babf88aac97d4d" name="a2e2a371e4b466cc477babf88aac97d4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2e2a371e4b466cc477babf88aac97d4d">&#9670;&#160;</a></span>IsLeapYear()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsLeapYear </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>year</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01313">1313</a> 行定义.</p>
</div>
</div>
<a id="a179e7cdae2c5e2721dcce18f539ba1dc" name="a179e7cdae2c5e2721dcce18f539ba1dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a179e7cdae2c5e2721dcce18f539ba1dc">&#9670;&#160;</a></span>IsOutRange()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsOutRange </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断数值是否越界(前闭后开) </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00077">77</a> 行定义.</p>
</div>
</div>
<a id="a059f5a13706b19d1097577c6a413a30a" name="a059f5a13706b19d1097577c6a413a30a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a059f5a13706b19d1097577c6a413a30a">&#9670;&#160;</a></span>IsPow2()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned dl::Math::IsPow2 </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>是否2的幂 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00608">608</a> 行定义.</p>
</div>
</div>
<a id="a45a957095c103eeab76b6aebbcc43b82" name="a45a957095c103eeab76b6aebbcc43b82"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45a957095c103eeab76b6aebbcc43b82">&#9670;&#160;</a></span>IsRectEmpty()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsRectEmpty </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断 矩形 是否空 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rect</td><td>矩形 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00840">840</a> 行定义.</p>
</div>
</div>
<a id="ae7d693ca46e7a9a3d26aaca78638b4b7" name="ae7d693ca46e7a9a3d26aaca78638b4b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7d693ca46e7a9a3d26aaca78638b4b7">&#9670;&#160;</a></span>IsRectInSize()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsRectInSize </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af4b025efbd5dae0045cce4cbc9546416">Size</a> &amp;</td> <td class="paramname"><span class="paramname"><em>size</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断 矩形 在 大小 内,首先它必须是有效的矩形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rect</td><td>矩形 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00851">851</a> 行定义.</p>
</div>
</div>
<a id="ae767ab216cd5f9ae60549bfc2361b223" name="ae767ab216cd5f9ae60549bfc2361b223"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae767ab216cd5f9ae60549bfc2361b223">&#9670;&#160;</a></span>IsRectValid()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsRectValid </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>, 4 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断 矩形 是否有效 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rect</td><td>矩形 </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>注解</dt><dd>空矩形也是有效的 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00830">830</a> 行定义.</p>
</div>
</div>
<a id="a20d995298fa129d1082c4a3c6e30c18c" name="a20d995298fa129d1082c4a3c6e30c18c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20d995298fa129d1082c4a3c6e30c18c">&#9670;&#160;</a></span>IsTriangle()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsTriangle </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a5ab03b7215d3aa1c91c31befb442b33d">Triangle</a> &amp;</td> <td class="paramname"><span class="paramname"><em>triangle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断是否三角形 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">triangle</td><td>三角形 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00887">887</a> 行定义.</p>
</div>
</div>
<a id="a0fb9b2d9b508e046d83ed387a2ace051" name="a0fb9b2d9b508e046d83ed387a2ace051"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fb9b2d9b508e046d83ed387a2ace051">&#9670;&#160;</a></span>IsXyInRect()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsXyInRect </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>xy</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#ac239c3e197b60bee840b9583cf35db65">Rect</a> &amp;</td> <td class="paramname"><span class="paramname"><em>rect</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断 点是否在矩形内 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rect</td><td>矩形 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00876">876</a> 行定义.</p>
</div>
</div>
<a id="a48d2083efe7e913aaec26ebf33e7e308" name="a48d2083efe7e913aaec26ebf33e7e308"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48d2083efe7e913aaec26ebf33e7e308">&#9670;&#160;</a></span>IsXyInSize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool dl::Math::IsXyInSize </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &amp;</td> <td class="paramname"><span class="paramname"><em>xy</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#af4b025efbd5dae0045cce4cbc9546416">Size</a> &amp;</td> <td class="paramname"><span class="paramname"><em>size</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>判断 点是否在大小内 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00864">864</a> 行定义.</p>
</div>
</div>
<a id="a6dd305713bb1ddac8c079a54529aed29" name="a6dd305713bb1ddac8c079a54529aed29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6dd305713bb1ddac8c079a54529aed29">&#9670;&#160;</a></span>MergePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void dl::Math::MergePath </td>
<td>(</td>
<td class="paramtype">std::list&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>list_pos</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>路径合并(网格路径) </p>
<dl class="section note"><dt>注解</dt><dd>方向相同且相邻的节点合并(最终路径不变) </dd></dl>
</div>
</div>
<a id="a30cec7b226756e813b19eca19cb38746" name="a30cec7b226756e813b19eca19cb38746"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a30cec7b226756e813b19eca19cb38746">&#9670;&#160;</a></span>MergePathDirect()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a>&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::MergePathDirect </td>
<td>(</td>
<td class="paramtype">std::list&lt; <a class="el" href="namespacedl.html#af6ec361004784c4eabc4ee2b9e85d603">Point</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>list_pos</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a800618943025315f869e4e1f09471012">F</a></td> <td class="paramname"><span class="paramname"><em>func_pass</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>路径合并(网格路径) </p>
<dl class="section note"><dt>注解</dt><dd>两点之间没有障碍物,则删除之间的(路径会发生变化) </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00769">769</a> 行定义.</p>
</div>
</div>
<a id="a58fa4763197d4ffe4d73c5f14db25ad3" name="a58fa4763197d4ffe4d73c5f14db25ad3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58fa4763197d4ffe4d73c5f14db25ad3">&#9670;&#160;</a></span>Normalize() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsSigned T, size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::Normalize </td>
<td>(</td>
<td class="paramtype"><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;</td> <td class="paramname"><span class="paramname"><em>v</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>向量单位化 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00453">453</a> 行定义.</p>
</div>
</div>
<a id="ad93e72766e62852fcc99f56f37d3a52e" name="ad93e72766e62852fcc99f56f37d3a52e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad93e72766e62852fcc99f56f37d3a52e">&#9670;&#160;</a></span>Normalize() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsSigned T, size_t N&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><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; dl::Math::Normalize </td>
<td>(</td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>v</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00463">463</a> 行定义.</p>
</div>
</div>
<a id="a883b5ed41484062d5437ce662cf52319" name="a883b5ed41484062d5437ce662cf52319"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a883b5ed41484062d5437ce662cf52319">&#9670;&#160;</a></span>NormalizeFast()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname">void dl::Math::NormalizeFast </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; float, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>v</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>向量单位化,精度低速度快 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00250">250</a> 行定义.</p>
</div>
</div>
<a id="a2bae19c3ef6fe4dd56cbbcf6e5017011" name="a2bae19c3ef6fe4dd56cbbcf6e5017011"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2bae19c3ef6fe4dd56cbbcf6e5017011">&#9670;&#160;</a></span>OffsetOrder()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float dl::Math::OffsetOrder </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>order</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>u</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>v</em></span><span class="paramdefsep"> = </span><span class="paramdefval">0</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>w</em></span><span class="paramdefsep"> = </span><span class="paramdefval">0</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>偏移order </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">order</td><td>原本order </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">u</td><td>偏移大小,用户使用 </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">v</td><td>偏移大小,多个组使用 </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>偏移大小,单个元素内使用</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>注解</dt><dd>正数使order变大,更远离屏幕 </dd>
<dd>
如果偏移出 [0, 1]的范围,则限制到范围,并输出警告 </dd>
<dd>
在一组内,优先使用负数靠近屏幕 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00659">659</a> 行定义.</p>
</div>
</div>
<a id="a6c4d5b783a36df0968baff39b508ec0b" name="a6c4d5b783a36df0968baff39b508ec0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c4d5b783a36df0968baff39b508ec0b">&#9670;&#160;</a></span>PI()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double dl::Math::PI </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>n</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>d</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>返回PI的分数 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>分子 </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>分母 </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00489">489</a> 行定义.</p>
</div>
</div>
<a id="a1274044c749de5cfee397f1faf1b0910" name="a1274044c749de5cfee397f1faf1b0910"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1274044c749de5cfee397f1faf1b0910">&#9670;&#160;</a></span>PIF()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float dl::Math::PIF </td>
<td>(</td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>n</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>d</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00497">497</a> 行定义.</p>
</div>
</div>
<a id="a4ca0412804f8a0b02f64c9e17fcaaec5" name="a4ca0412804f8a0b02f64c9e17fcaaec5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ca0412804f8a0b02f64c9e17fcaaec5">&#9670;&#160;</a></span>Pow()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a>&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::Pow </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>n</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>返回x的n次方 </p>
<dl class="params"><dt>参数</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>底数,n64 </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>指数,n8[0, 255] </td></tr>
</table>
</dd>
</dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00131">131</a> 行定义.</p>
</div>
</div>
<a id="a4c440b8fe617bc79637854455b4be336" name="a4c440b8fe617bc79637854455b4be336"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c440b8fe617bc79637854455b4be336">&#9670;&#160;</a></span>Pow32()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t dl::Math::Pow32 </td>
<td>(</td>
<td class="paramtype">uint32_t</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t</td> <td class="paramname"><span class="paramname"><em>n</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00149">149</a> 行定义.</p>
</div>
</div>
<a id="a105a64a6e1c5f63f3510ddc57c676365" name="a105a64a6e1c5f63f3510ddc57c676365"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a105a64a6e1c5f63f3510ddc57c676365">&#9670;&#160;</a></span>Pow64()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint64_t dl::Math::Pow64 </td>
<td>(</td>
<td class="paramtype">uint64_t</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t</td> <td class="paramname"><span class="paramname"><em>n</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00140">140</a> 行定义.</p>
</div>
</div>
<a id="a7dd8ad32404788c594e14647d1299507" name="a7dd8ad32404788c594e14647d1299507"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dd8ad32404788c594e14647d1299507">&#9670;&#160;</a></span>Radian2Angle()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float dl::Math::Radian2Angle </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>radin</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>弧度转角度 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00084">84</a> 行定义.</p>
</div>
</div>
<a id="a0fd487fe9762b31e797e776c82097e51" name="a0fd487fe9762b31e797e776c82097e51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fd487fe9762b31e797e776c82097e51">&#9670;&#160;</a></span>RadiansToDegrees()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double dl::Math::RadiansToDegrees </td>
<td>(</td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>rad</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>将弧度转为角度 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l01307">1307</a> 行定义.</p>
</div>
</div>
<a id="ab05d68f0f058aefa1d75608134517ce4" name="ab05d68f0f058aefa1d75608134517ce4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab05d68f0f058aefa1d75608134517ce4">&#9670;&#160;</a></span>RangeRadian()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void dl::Math::RangeRadian </td>
<td>(</td>
<td class="paramtype">std::array&lt; float, 2 &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>arr</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00100">100</a> 行定义.</p>
</div>
</div>
<a id="a7317ab76cec9c98260f3cbb7f6530238" name="a7317ab76cec9c98260f3cbb7f6530238"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7317ab76cec9c98260f3cbb7f6530238">&#9670;&#160;</a></span>RSqrt()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float dl::Math::RSqrt </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>返回平方根的倒数 </p>
<dl class="section note"><dt>注解</dt><dd>经测试,此方法并比1.0f / sqrt快那么一点 </dd>
<dd>
类型转换也需要时间,如果是非内联函数也会变慢许多。 </dd></dl>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00230">230</a> 行定义.</p>
</div>
</div>
<a id="a6b4a57c034f58c7ba26105da97b21d22" name="a6b4a57c034f58c7ba26105da97b21d22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b4a57c034f58c7ba26105da97b21d22">&#9670;&#160;</a></span>Slerp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a> dl::Math::Slerp </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a> &amp;</td> <td class="paramname"><span class="paramname"><em>q0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#aa4bb00cad84e587e46364ac39f4d3d4a">Position4</a> &amp;</td> <td class="paramname"><span class="paramname"><em>q1</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacedl.html#a2deb3e79723ed0c188c47443a48744b7">Float</a> &amp;</td> <td class="paramname"><span class="paramname"><em>t</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>球面线性插值 </p>
<dl class="section note"><dt>注解</dt><dd>普通线性插值存在于std::lerp </dd></dl>
</div>
</div>
<a id="a5cb8bdfad54eb42aa820147f7dde5e9a" name="a5cb8bdfad54eb42aa820147f7dde5e9a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5cb8bdfad54eb42aa820147f7dde5e9a">&#9670;&#160;</a></span>SubU() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T, size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname"><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; dl::Math::SubU </td>
<td>(</td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">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;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号类型相减,负数转为0 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00344">344</a> 行定义.</p>
</div>
</div>
<a id="a1f56a2e9e6fac28373c63f40ff62ca37" name="a1f56a2e9e6fac28373c63f40ff62ca37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f56a2e9e6fac28373c63f40ff62ca37">&#9670;&#160;</a></span>SubU() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1, size_t N&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; dl::Math::SubU </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T0, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classdl_1_1_array.html">Array</a>&lt; T1, <a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132a8d9c307cb7f3c4a32822a51922d1ceaa">N</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号减有符号,负数转为0 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00355">355</a> 行定义.</p>
</div>
</div>
<a id="a0380237a8e9d81a1ee75916a12b836db" name="a0380237a8e9d81a1ee75916a12b836db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0380237a8e9d81a1ee75916a12b836db">&#9670;&#160;</a></span>SubU() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a> dl::Math::SubU </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a38a0162879cdbfbbe99ba16e7a170132ab9ece18c950afbfa6b0fdbfa4ff731d3">T</a></td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号类型相减,负数转为0 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00326">326</a> 行定义.</p>
</div>
</div>
<a id="a657ce888b215ad854d96df93500f0ad4" name="a657ce888b215ad854d96df93500f0ad4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a657ce888b215ad854d96df93500f0ad4">&#9670;&#160;</a></span>SubU() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;IsUnsigned T0, IsSigned T1&gt; </div>
<table class="memname">
<tr>
<td class="memname">T0 dl::Math::SubU </td>
<td>(</td>
<td class="paramtype">T0</td> <td class="paramname"><span class="paramname"><em>a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T1</td> <td class="paramname"><span class="paramname"><em>b</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>无符号减有符号,结果负数转为0 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00334">334</a> 行定义.</p>
</div>
</div>
<h2 class="groupheader">变量说明</h2>
<a id="aac05b119f1bdc7c211f75cb83e943c02" name="aac05b119f1bdc7c211f75cb83e943c02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac05b119f1bdc7c211f75cb83e943c02">&#9670;&#160;</a></span>ARRAY_POW2</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint64_t dl::Math::ARRAY_POW2[]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<b>初始值:</b><div class="fragment"><div class="line">= {</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,0),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,1),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,2),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,3),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,4),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,5),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,6),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,7),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,8),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,9),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,10),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,11),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,12),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,13),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,14),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,15),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,16),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,17),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,18),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,19),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,20),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,21),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,22),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,23),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,24),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,25),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,26),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,27),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,28),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,29),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,30),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,31),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,32),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,33),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,34),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,35),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,36),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,37),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,38),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,39),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,40),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,41),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,42),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,43),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,44),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,45),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,46),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,47),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,48),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,49),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,50),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,51),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,52),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,53),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,54),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,55),</div>
<div class="line"> <a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,56),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,57),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,58),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,59),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,60),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,61),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,62),<a class="code hl_function" href="#a105a64a6e1c5f63f3510ddc57c676365">Pow64</a>(2,63) }</div>
<div class="ttc" id="anamespacedl_1_1_math_html_a105a64a6e1c5f63f3510ddc57c676365"><div class="ttname"><a href="#a105a64a6e1c5f63f3510ddc57c676365">dl::Math::Pow64</a></div><div class="ttdeci">constexpr uint64_t Pow64(uint64_t x, uint8_t n)</div><div class="ttdef"><b>定义</b> <a href="dl__math_8h_source.html#l00140">dl_math.h:140</a></div></div>
</div><!-- fragment -->
<p>2的整数次幂列表 </p>
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00162">162</a> 行定义.</p>
</div>
</div>
<a id="a35722e5e04b27ee4c5c1e9e29e190712" name="a35722e5e04b27ee4c5c1e9e29e190712"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35722e5e04b27ee4c5c1e9e29e190712">&#9670;&#160;</a></span>ARRAY_POW2_32</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t dl::Math::ARRAY_POW2_32[]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<b>初始值:</b><div class="fragment"><div class="line">= {</div>
<div class="line"> <a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,0),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,1),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,2),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,3),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,4),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,5),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,6),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,7),</div>
<div class="line"> <a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,8),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,9),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,10),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,11),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,12),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,13),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,14),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,15),</div>
<div class="line"> <a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,16),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,17),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,18),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,19),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,20),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,21),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,22),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,23),</div>
<div class="line"> <a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,24),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,25),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,26),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,27),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,28),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,29),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,30),<a class="code hl_function" href="#a4c440b8fe617bc79637854455b4be336">Pow32</a>(2,31) }</div>
<div class="ttc" id="anamespacedl_1_1_math_html_a4c440b8fe617bc79637854455b4be336"><div class="ttname"><a href="#a4c440b8fe617bc79637854455b4be336">dl::Math::Pow32</a></div><div class="ttdeci">constexpr uint32_t Pow32(uint32_t x, uint8_t n)</div><div class="ttdef"><b>定义</b> <a href="dl__math_8h_source.html#l00149">dl_math.h:149</a></div></div>
</div><!-- fragment -->
<p class="definition">在文件 <a class="el" href="dl__math_8h_source.html">dl_math.h</a><a class="el" href="dl__math_8h_source.html#l00171">171</a> 行定义.</p>
</div>
</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>