488 lines
24 KiB
HTML
488 lines
24 KiB
HTML
<!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">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||
<meta name="generator" content="Doxygen 1.9.1"/>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||
<title>ViewDesignEngine: vde::curves::BSplineSurface类 参考</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>
|
||
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
||
<script type="text/javascript" src="resize.js"></script>
|
||
<script type="text/javascript" src="navtreedata.js"></script>
|
||
<script type="text/javascript" src="navtree.js"></script>
|
||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||
<script type="text/javascript" src="search/search.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 style="height: 56px;">
|
||
<td id="projectalign" style="padding-left: 0.5em;">
|
||
<div id="projectname">ViewDesignEngine
|
||
 <span id="projectnumber">3.1.0</span>
|
||
</div>
|
||
<div id="projectbrief">高性能 CAD 计算几何引擎</div>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
<!-- end header part -->
|
||
<!-- 制作者 Doxygen 1.9.1 -->
|
||
<script type="text/javascript">
|
||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
|
||
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||
$(function() {
|
||
initMenu('',true,false,'search.php','搜索');
|
||
$(document).ready(function() { init_search(); });
|
||
});
|
||
/* @license-end */</script>
|
||
<div id="main-nav"></div>
|
||
</div><!-- top -->
|
||
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||
<div id="nav-tree">
|
||
<div id="nav-tree-contents">
|
||
<div id="nav-sync" class="sync"></div>
|
||
</div>
|
||
</div>
|
||
<div id="splitbar" style="-moz-user-select:none;"
|
||
class="ui-resizable-handle">
|
||
</div>
|
||
</div>
|
||
<script type="text/javascript">
|
||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||
$(document).ready(function(){initNavTree('classvde_1_1curves_1_1BSplineSurface.html',''); initResizable(); });
|
||
/* @license-end */
|
||
</script>
|
||
<div id="doc-content">
|
||
<!-- window showing the filter options -->
|
||
<div id="MSearchSelectWindow"
|
||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||
</div>
|
||
|
||
<!-- iframe showing the search results (closed by default) -->
|
||
<div id="MSearchResultsWindow">
|
||
<iframe src="javascript:void(0)" frameborder="0"
|
||
name="MSearchResults" id="MSearchResults">
|
||
</iframe>
|
||
</div>
|
||
|
||
<div class="header">
|
||
<div class="summary">
|
||
<a href="#pub-methods">Public 成员函数</a> |
|
||
<a href="classvde_1_1curves_1_1BSplineSurface-members.html">所有成员列表</a> </div>
|
||
<div class="headertitle">
|
||
<div class="title">vde::curves::BSplineSurface类 参考<div class="ingroups"><a class="el" href="group__curves.html">曲线曲面模块 (vde::curves)</a></div></div> </div>
|
||
</div><!--header-->
|
||
<div class="contents">
|
||
|
||
<p>B 样条张量积曲面(非有理)
|
||
<a href="classvde_1_1curves_1_1BSplineSurface.html#details">更多...</a></p>
|
||
|
||
<p><code>#include <<a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a>></code></p>
|
||
<table class="memberdecls">
|
||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||
Public 成员函数</h2></td></tr>
|
||
<tr class="memitem:af674886573f10e61ce32ff773fa33bcf"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#af674886573f10e61ce32ff773fa33bcf">BSplineSurface</a> (std::vector< std::vector< Point3D >> control_grid, std::vector< double > <a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a38c7007e3d83f222939a2f3137920c43">knots_u</a>, std::vector< double > <a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a56bf525943ae92ffe09d864a0f34dc1e">knots_v</a>, int <a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a9b638cc5360344fe904290deb4dc6893">degree_u</a>, int <a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a0d30fde10aa2fc8afd5c4ae84e457b14">degree_v</a>)</td></tr>
|
||
<tr class="memdesc:af674886573f10e61ce32ff773fa33bcf"><td class="mdescLeft"> </td><td class="mdescRight">构造 B 样条曲面 <a href="classvde_1_1curves_1_1BSplineSurface.html#af674886573f10e61ce32ff773fa33bcf">更多...</a><br /></td></tr>
|
||
<tr class="separator:af674886573f10e61ce32ff773fa33bcf"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:aeda5aa809291b7aebe7d99d51c5952ed"><td class="memItemLeft" align="right" valign="top">Point3D </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#aeda5aa809291b7aebe7d99d51c5952ed">evaluate</a> (double u, double v) const</td></tr>
|
||
<tr class="memdesc:aeda5aa809291b7aebe7d99d51c5952ed"><td class="mdescLeft"> </td><td class="mdescRight">求曲面点 S(u,v) <a href="classvde_1_1curves_1_1BSplineSurface.html#aeda5aa809291b7aebe7d99d51c5952ed">更多...</a><br /></td></tr>
|
||
<tr class="separator:aeda5aa809291b7aebe7d99d51c5952ed"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:ad9417fa9d0c3021689cec08d7a1c2b01"><td class="memItemLeft" align="right" valign="top">Vector3D </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#ad9417fa9d0c3021689cec08d7a1c2b01">derivative_u</a> (double u, double v) const</td></tr>
|
||
<tr class="memdesc:ad9417fa9d0c3021689cec08d7a1c2b01"><td class="mdescLeft"> </td><td class="mdescRight">u 向偏导数 ∂S/∂u <a href="classvde_1_1curves_1_1BSplineSurface.html#ad9417fa9d0c3021689cec08d7a1c2b01">更多...</a><br /></td></tr>
|
||
<tr class="separator:ad9417fa9d0c3021689cec08d7a1c2b01"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:ad91f03172292a8d2496b125583f553e9"><td class="memItemLeft" align="right" valign="top">Vector3D </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#ad91f03172292a8d2496b125583f553e9">derivative_v</a> (double u, double v) const</td></tr>
|
||
<tr class="memdesc:ad91f03172292a8d2496b125583f553e9"><td class="mdescLeft"> </td><td class="mdescRight">v 向偏导数 ∂S/∂v <a href="classvde_1_1curves_1_1BSplineSurface.html#ad91f03172292a8d2496b125583f553e9">更多...</a><br /></td></tr>
|
||
<tr class="separator:ad91f03172292a8d2496b125583f553e9"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:a8973c014d5f99d11d583de509628ec68"><td class="memItemLeft" align="right" valign="top">Vector3D </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a8973c014d5f99d11d583de509628ec68">normal</a> (double u, double v) const</td></tr>
|
||
<tr class="memdesc:a8973c014d5f99d11d583de509628ec68"><td class="mdescLeft"> </td><td class="mdescRight">单位法向量 <a href="classvde_1_1curves_1_1BSplineSurface.html#a8973c014d5f99d11d583de509628ec68">更多...</a><br /></td></tr>
|
||
<tr class="separator:a8973c014d5f99d11d583de509628ec68"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:a9b638cc5360344fe904290deb4dc6893"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a9b638cc5360344fe904290deb4dc6893">degree_u</a> () const</td></tr>
|
||
<tr class="memdesc:a9b638cc5360344fe904290deb4dc6893"><td class="mdescLeft"> </td><td class="mdescRight">u 向阶次 <a href="classvde_1_1curves_1_1BSplineSurface.html#a9b638cc5360344fe904290deb4dc6893">更多...</a><br /></td></tr>
|
||
<tr class="separator:a9b638cc5360344fe904290deb4dc6893"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:a0d30fde10aa2fc8afd5c4ae84e457b14"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a0d30fde10aa2fc8afd5c4ae84e457b14">degree_v</a> () const</td></tr>
|
||
<tr class="memdesc:a0d30fde10aa2fc8afd5c4ae84e457b14"><td class="mdescLeft"> </td><td class="mdescRight">v 向阶次 <a href="classvde_1_1curves_1_1BSplineSurface.html#a0d30fde10aa2fc8afd5c4ae84e457b14">更多...</a><br /></td></tr>
|
||
<tr class="separator:a0d30fde10aa2fc8afd5c4ae84e457b14"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:a38c7007e3d83f222939a2f3137920c43"><td class="memItemLeft" align="right" valign="top">const std::vector< double > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a38c7007e3d83f222939a2f3137920c43">knots_u</a> () const</td></tr>
|
||
<tr class="memdesc:a38c7007e3d83f222939a2f3137920c43"><td class="mdescLeft"> </td><td class="mdescRight">u 向节点向量 <a href="classvde_1_1curves_1_1BSplineSurface.html#a38c7007e3d83f222939a2f3137920c43">更多...</a><br /></td></tr>
|
||
<tr class="separator:a38c7007e3d83f222939a2f3137920c43"><td class="memSeparator" colspan="2"> </td></tr>
|
||
<tr class="memitem:a56bf525943ae92ffe09d864a0f34dc1e"><td class="memItemLeft" align="right" valign="top">const std::vector< double > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html#a56bf525943ae92ffe09d864a0f34dc1e">knots_v</a> () const</td></tr>
|
||
<tr class="memdesc:a56bf525943ae92ffe09d864a0f34dc1e"><td class="mdescLeft"> </td><td class="mdescRight">v 向节点向量 <a href="classvde_1_1curves_1_1BSplineSurface.html#a56bf525943ae92ffe09d864a0f34dc1e">更多...</a><br /></td></tr>
|
||
<tr class="separator:a56bf525943ae92ffe09d864a0f34dc1e"><td class="memSeparator" colspan="2"> </td></tr>
|
||
</table>
|
||
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
|
||
<div class="textblock"><p>B 样条张量积曲面(非有理) </p>
|
||
<p>由 (nu+1)×(nv+1) 控制点网格、u/v 向各一个节点向量以及两个阶次定义。 参数域 (u,v) ∈ [knots_u[pu], knots_u[nu+1]] × [knots_v[pv], knots_v[nv+1]]。</p>
|
||
<p>求值公式:S(u,v) = Σ_i Σ_j P_{ij} · N_{i,pu}(u) · N_{j,pv}(v)</p>
|
||
<p>具有局部控制性:修改单个控制点仅影响相邻 pu×pv 个节点区间的曲面区域。 </p>
|
||
|
||
<p class="definition">在文件 <a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a> 第 <a class="el" href="bspline__surface_8h_source.html#l00022">22</a> 行定义.</p>
|
||
</div><h2 class="groupheader">构造及析构函数说明</h2>
|
||
<a id="af674886573f10e61ce32ff773fa33bcf"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#af674886573f10e61ce32ff773fa33bcf">◆ </a></span>BSplineSurface()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">vde::curves::BSplineSurface::BSplineSurface </td>
|
||
<td>(</td>
|
||
<td class="paramtype">std::vector< std::vector< Point3D >> </td>
|
||
<td class="paramname"><em>control_grid</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">std::vector< double > </td>
|
||
<td class="paramname"><em>knots_u</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">std::vector< double > </td>
|
||
<td class="paramname"><em>knots_v</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">int </td>
|
||
<td class="paramname"><em>degree_u</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">int </td>
|
||
<td class="paramname"><em>degree_v</em> </td>
|
||
</tr>
|
||
<tr>
|
||
<td></td>
|
||
<td>)</td>
|
||
<td></td><td></td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>构造 B 样条曲面 </p>
|
||
<dl class="params"><dt>参数</dt><dd>
|
||
<table class="params">
|
||
<tr><td class="paramname">control_grid</td><td>(nu+1)×(nv+1) 控制点网格 </td></tr>
|
||
<tr><td class="paramname">knots_u</td><td>u 向节点向量,长度 = nu + pu + 1 </td></tr>
|
||
<tr><td class="paramname">knots_v</td><td>v 向节点向量,长度 = nv + pv + 1 </td></tr>
|
||
<tr><td class="paramname">degree_u</td><td>u 向阶次 pu </td></tr>
|
||
<tr><td class="paramname">degree_v</td><td>v 向阶次 pv <div class="fragment"><div class="line"><a class="code" href="classvde_1_1curves_1_1BSplineSurface.html#af674886573f10e61ce32ff773fa33bcf">BSplineSurface</a> surf(grid,</div>
|
||
<div class="line"> {0,0,0,0, 0.5, 1,1,1,1}, <span class="comment">// u knots (三次,5 个控制点)</span></div>
|
||
<div class="line"> {0,0,0, 0.5, 1,1,1}, <span class="comment">// v knots (二次,4 个控制点)</span></div>
|
||
<div class="line"> 3, 2);</div>
|
||
<div class="ttc" id="aclassvde_1_1curves_1_1BSplineSurface_html_af674886573f10e61ce32ff773fa33bcf"><div class="ttname"><a href="classvde_1_1curves_1_1BSplineSurface.html#af674886573f10e61ce32ff773fa33bcf">vde::curves::BSplineSurface::BSplineSurface</a></div><div class="ttdeci">BSplineSurface(std::vector< std::vector< Point3D >> control_grid, std::vector< double > knots_u, std::vector< double > knots_v, int degree_u, int degree_v)</div><div class="ttdoc">构造 B 样条曲面</div></div>
|
||
</div><!-- fragment --> </td></tr>
|
||
</table>
|
||
</dd>
|
||
</dl>
|
||
|
||
</div>
|
||
</div>
|
||
<h2 class="groupheader">成员函数说明</h2>
|
||
<a id="a9b638cc5360344fe904290deb4dc6893"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#a9b638cc5360344fe904290deb4dc6893">◆ </a></span>degree_u()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="mlabels">
|
||
<tr>
|
||
<td class="mlabels-left">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">int vde::curves::BSplineSurface::degree_u </td>
|
||
<td>(</td>
|
||
<td class="paramname"></td><td>)</td>
|
||
<td> const</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
<td class="mlabels-right">
|
||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>u 向阶次 </p>
|
||
<dl class="section return"><dt>返回</dt><dd>pu </dd></dl>
|
||
|
||
<p class="definition">在文件 <a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a> 第 <a class="el" href="bspline__surface_8h_source.html#l00079">79</a> 行定义.</p>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="a0d30fde10aa2fc8afd5c4ae84e457b14"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#a0d30fde10aa2fc8afd5c4ae84e457b14">◆ </a></span>degree_v()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="mlabels">
|
||
<tr>
|
||
<td class="mlabels-left">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">int vde::curves::BSplineSurface::degree_v </td>
|
||
<td>(</td>
|
||
<td class="paramname"></td><td>)</td>
|
||
<td> const</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
<td class="mlabels-right">
|
||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>v 向阶次 </p>
|
||
<dl class="section return"><dt>返回</dt><dd>pv </dd></dl>
|
||
|
||
<p class="definition">在文件 <a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a> 第 <a class="el" href="bspline__surface_8h_source.html#l00085">85</a> 行定义.</p>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="ad9417fa9d0c3021689cec08d7a1c2b01"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#ad9417fa9d0c3021689cec08d7a1c2b01">◆ </a></span>derivative_u()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">Vector3D vde::curves::BSplineSurface::derivative_u </td>
|
||
<td>(</td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>u</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>v</em> </td>
|
||
</tr>
|
||
<tr>
|
||
<td></td>
|
||
<td>)</td>
|
||
<td></td><td> const</td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>u 向偏导数 ∂S/∂u </p>
|
||
<dl class="params"><dt>参数</dt><dd>
|
||
<table class="params">
|
||
<tr><td class="paramname">u</td><td>u 参数 </td></tr>
|
||
<tr><td class="paramname">v</td><td>v 参数 </td></tr>
|
||
</table>
|
||
</dd>
|
||
</dl>
|
||
<dl class="section return"><dt>返回</dt><dd>u 向切向量 </dd></dl>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="ad91f03172292a8d2496b125583f553e9"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#ad91f03172292a8d2496b125583f553e9">◆ </a></span>derivative_v()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">Vector3D vde::curves::BSplineSurface::derivative_v </td>
|
||
<td>(</td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>u</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>v</em> </td>
|
||
</tr>
|
||
<tr>
|
||
<td></td>
|
||
<td>)</td>
|
||
<td></td><td> const</td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>v 向偏导数 ∂S/∂v </p>
|
||
<dl class="params"><dt>参数</dt><dd>
|
||
<table class="params">
|
||
<tr><td class="paramname">u</td><td>u 参数 </td></tr>
|
||
<tr><td class="paramname">v</td><td>v 参数 </td></tr>
|
||
</table>
|
||
</dd>
|
||
</dl>
|
||
<dl class="section return"><dt>返回</dt><dd>v 向切向量 </dd></dl>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="aeda5aa809291b7aebe7d99d51c5952ed"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#aeda5aa809291b7aebe7d99d51c5952ed">◆ </a></span>evaluate()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">Point3D vde::curves::BSplineSurface::evaluate </td>
|
||
<td>(</td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>u</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>v</em> </td>
|
||
</tr>
|
||
<tr>
|
||
<td></td>
|
||
<td>)</td>
|
||
<td></td><td> const</td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>求曲面点 S(u,v) </p>
|
||
<dl class="params"><dt>参数</dt><dd>
|
||
<table class="params">
|
||
<tr><td class="paramname">u</td><td>u 参数 </td></tr>
|
||
<tr><td class="paramname">v</td><td>v 参数 </td></tr>
|
||
</table>
|
||
</dd>
|
||
</dl>
|
||
<dl class="section return"><dt>返回</dt><dd>曲面上的 3D 点 </dd></dl>
|
||
<dl class="section note"><dt>注解</dt><dd>张量积分解:先行后列(或先列后行)做两次 B 样条求值 </dd></dl>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="a38c7007e3d83f222939a2f3137920c43"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#a38c7007e3d83f222939a2f3137920c43">◆ </a></span>knots_u()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="mlabels">
|
||
<tr>
|
||
<td class="mlabels-left">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">const std::vector<double>& vde::curves::BSplineSurface::knots_u </td>
|
||
<td>(</td>
|
||
<td class="paramname"></td><td>)</td>
|
||
<td> const</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
<td class="mlabels-right">
|
||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>u 向节点向量 </p>
|
||
<dl class="section return"><dt>返回</dt><dd>只读引用 </dd></dl>
|
||
|
||
<p class="definition">在文件 <a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a> 第 <a class="el" href="bspline__surface_8h_source.html#l00091">91</a> 行定义.</p>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="a56bf525943ae92ffe09d864a0f34dc1e"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#a56bf525943ae92ffe09d864a0f34dc1e">◆ </a></span>knots_v()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="mlabels">
|
||
<tr>
|
||
<td class="mlabels-left">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">const std::vector<double>& vde::curves::BSplineSurface::knots_v </td>
|
||
<td>(</td>
|
||
<td class="paramname"></td><td>)</td>
|
||
<td> const</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
<td class="mlabels-right">
|
||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>v 向节点向量 </p>
|
||
<dl class="section return"><dt>返回</dt><dd>只读引用 </dd></dl>
|
||
|
||
<p class="definition">在文件 <a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a> 第 <a class="el" href="bspline__surface_8h_source.html#l00097">97</a> 行定义.</p>
|
||
|
||
</div>
|
||
</div>
|
||
<a id="a8973c014d5f99d11d583de509628ec68"></a>
|
||
<h2 class="memtitle"><span class="permalink"><a href="#a8973c014d5f99d11d583de509628ec68">◆ </a></span>normal()</h2>
|
||
|
||
<div class="memitem">
|
||
<div class="memproto">
|
||
<table class="memname">
|
||
<tr>
|
||
<td class="memname">Vector3D vde::curves::BSplineSurface::normal </td>
|
||
<td>(</td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>u</em>, </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="paramkey"></td>
|
||
<td></td>
|
||
<td class="paramtype">double </td>
|
||
<td class="paramname"><em>v</em> </td>
|
||
</tr>
|
||
<tr>
|
||
<td></td>
|
||
<td>)</td>
|
||
<td></td><td> const</td>
|
||
</tr>
|
||
</table>
|
||
</div><div class="memdoc">
|
||
|
||
<p>单位法向量 </p>
|
||
<dl class="params"><dt>参数</dt><dd>
|
||
<table class="params">
|
||
<tr><td class="paramname">u</td><td>u 参数 </td></tr>
|
||
<tr><td class="paramname">v</td><td>v 参数 </td></tr>
|
||
</table>
|
||
</dd>
|
||
</dl>
|
||
<dl class="section return"><dt>返回</dt><dd>N(u,v) = (∂S/∂u × ∂S/∂v) / |…| </dd></dl>
|
||
|
||
</div>
|
||
</div>
|
||
<hr/>该类的文档由以下文件生成:<ul>
|
||
<li>include/vde/curves/<a class="el" href="bspline__surface_8h_source.html">bspline_surface.h</a></li>
|
||
</ul>
|
||
</div><!-- contents -->
|
||
</div><!-- doc-content -->
|
||
<!-- start footer part -->
|
||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||
<ul>
|
||
<li class="navelem"><a class="el" href="namespacevde.html">vde</a></li><li class="navelem"><a class="el" href="namespacevde_1_1curves.html">curves</a></li><li class="navelem"><a class="el" href="classvde_1_1curves_1_1BSplineSurface.html">BSplineSurface</a></li>
|
||
<li class="footer">生成于 2026年 七月 24日 星期五 11:21:23 , 为 ViewDesignEngine使用 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
|
||
</ul>
|
||
</div>
|
||
</body>
|
||
</html>
|