Files
ViewDesignEngine/docs/api/sdf__primitives_8h.html
T
茂之钳 2f111edcd5
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
docs: generated API documentation (483 pages)
2026-07-24 11:55:47 +00:00

229 lines
22 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: include/vde/sdf/sdf_primitives.h 文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<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
&#160;<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&amp;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&amp;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&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('sdf__primitives_8h.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="#namespaces">命名空间</a> &#124;
<a href="#func-members">函数</a> </div>
<div class="headertitle">
<div class="title">sdf_primitives.h 文件参考<div class="ingroups"><a class="el" href="group__sdf.html">SDF 模块 (vde::sdf)</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>有符号距离函数(SDF)基础图元
<a href="#details">更多...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="point_8h_source.html">vde/core/point.h</a>&quot;</code><br />
<code>#include &lt;cmath&gt;</code><br />
<code>#include &lt;algorithm&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
sdf_primitives.h 的引用(Include)关系图:</div>
<div class="dyncontent">
<div class="center"><img src="sdf__primitives_8h__incl.png" border="0" usemap="#ainclude_2vde_2sdf_2sdf__primitives_8h" alt=""/></div>
<map name="ainclude_2vde_2sdf_2sdf__primitives_8h" id="ainclude_2vde_2sdf_2sdf__primitives_8h">
<area shape="rect" title="有符号距离函数(SDF)基础图元" alt="" coords="487,5,632,47"/>
<area shape="rect" href="point_8h.html" title=" " alt="" coords="343,95,469,121"/>
<area shape="rect" title=" " alt="" coords="537,259,600,285"/>
<area shape="rect" title=" " alt="" coords="597,95,682,121"/>
<area shape="rect" href="math__types_8h.html" title=" " alt="" coords="123,169,281,211"/>
<area shape="rect" href="tolerance_8h.html" title=" " alt="" coords="307,177,505,203"/>
<area shape="rect" title=" " alt="" coords="251,259,343,285"/>
<area shape="rect" title=" " alt="" coords="5,259,132,285"/>
<area shape="rect" title=" " alt="" coords="156,259,227,285"/>
<area shape="rect" title=" " alt="" coords="367,259,426,285"/>
<area shape="rect" title=" " alt="" coords="451,259,513,285"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
此图展示该文件直接或间接的被哪些文件引用了:</div>
<div class="dyncontent">
<div class="center"><img src="sdf__primitives_8h__dep__incl.png" border="0" usemap="#ainclude_2vde_2sdf_2sdf__primitives_8hdep" alt=""/></div>
<map name="ainclude_2vde_2sdf_2sdf__primitives_8hdep" id="ainclude_2vde_2sdf_2sdf__primitives_8hdep">
<area shape="rect" title="有符号距离函数(SDF)基础图元" alt="" coords="89,5,235,47"/>
<area shape="rect" href="sdf__gradient_8h.html" title="SDF 梯度计算(数值微分、解析梯度、链式法则)" alt="" coords="5,95,151,136"/>
<area shape="rect" href="sdf__tree_8h.html" title="SDF 表达式树结构" alt="" coords="175,95,320,136"/>
<area shape="rect" href="sdf__torch_8h.html" title="SDF 批量求值与梯度计算(CPU 后端)" alt="" coords="5,184,151,225"/>
<area shape="rect" href="sdf__optimize_8h.html" title="基于梯度的 SDF 形状优化" alt="" coords="175,184,320,225"/>
<area shape="rect" href="sdf__to__mesh_8h.html" title="SDF 到三角网格的转换" alt="" coords="344,184,489,225"/>
</map>
</div>
</div>
<p><a href="sdf__primitives_8h_source.html">浏览源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
命名空间</h2></td></tr>
<tr class="memitem:namespacevde"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde.html">vde</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacevde_1_1sdf"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html">vde::sdf</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 name="func-members"></a>
函数</h2></td></tr>
<tr class="memitem:ab544a3ebc4c0844b322b73bbbe4efb3f"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#ab544a3ebc4c0844b322b73bbbe4efb3f">vde::sdf::sphere</a> (const Point3D &amp;p, double radius)</td></tr>
<tr class="memdesc:ab544a3ebc4c0844b322b73bbbe4efb3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">球体的 SDF <a href="namespacevde_1_1sdf.html#ab544a3ebc4c0844b322b73bbbe4efb3f">更多...</a><br /></td></tr>
<tr class="separator:ab544a3ebc4c0844b322b73bbbe4efb3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a380ebfe1b3b65d5ecc4efcb946b21834"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a380ebfe1b3b65d5ecc4efcb946b21834">vde::sdf::box</a> (const Point3D &amp;p, const Point3D &amp;half_extents)</td></tr>
<tr class="memdesc:a380ebfe1b3b65d5ecc4efcb946b21834"><td class="mdescLeft">&#160;</td><td class="mdescRight">轴对齐立方体的 SDF <a href="namespacevde_1_1sdf.html#a380ebfe1b3b65d5ecc4efcb946b21834">更多...</a><br /></td></tr>
<tr class="separator:a380ebfe1b3b65d5ecc4efcb946b21834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86cb35c74a31689629bdd6eaa67cc0cf"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a86cb35c74a31689629bdd6eaa67cc0cf">vde::sdf::round_box</a> (const Point3D &amp;p, const Point3D &amp;half_extents, double r)</td></tr>
<tr class="memdesc:a86cb35c74a31689629bdd6eaa67cc0cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">圆角立方体的 SDF <a href="namespacevde_1_1sdf.html#a86cb35c74a31689629bdd6eaa67cc0cf">更多...</a><br /></td></tr>
<tr class="separator:a86cb35c74a31689629bdd6eaa67cc0cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68591fa033f624bfc5b7b64404d8cf6f"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a68591fa033f624bfc5b7b64404d8cf6f">vde::sdf::torus</a> (const Point3D &amp;p, double major_radius, double minor_radius)</td></tr>
<tr class="memdesc:a68591fa033f624bfc5b7b64404d8cf6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">圆环面的 SDF <a href="namespacevde_1_1sdf.html#a68591fa033f624bfc5b7b64404d8cf6f">更多...</a><br /></td></tr>
<tr class="separator:a68591fa033f624bfc5b7b64404d8cf6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bf1185ede58f76cd513175fd4dfa4c5"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a2bf1185ede58f76cd513175fd4dfa4c5">vde::sdf::capsule</a> (const Point3D &amp;p, const Point3D &amp;a, const Point3D &amp;b, double radius)</td></tr>
<tr class="memdesc:a2bf1185ede58f76cd513175fd4dfa4c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">胶囊体的 SDF <a href="namespacevde_1_1sdf.html#a2bf1185ede58f76cd513175fd4dfa4c5">更多...</a><br /></td></tr>
<tr class="separator:a2bf1185ede58f76cd513175fd4dfa4c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d835536ef31f92fbc25643e34be3600"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a5d835536ef31f92fbc25643e34be3600">vde::sdf::cylinder</a> (const Point3D &amp;p, double radius, double height)</td></tr>
<tr class="memdesc:a5d835536ef31f92fbc25643e34be3600"><td class="mdescLeft">&#160;</td><td class="mdescRight">带平端盖的圆柱体 SDF <a href="namespacevde_1_1sdf.html#a5d835536ef31f92fbc25643e34be3600">更多...</a><br /></td></tr>
<tr class="separator:a5d835536ef31f92fbc25643e34be3600"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb1410817faf88bc7b727b151b466162"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#adb1410817faf88bc7b727b151b466162">vde::sdf::plane</a> (const Point3D &amp;p, const Vector3D &amp;normal, double offset)</td></tr>
<tr class="memdesc:adb1410817faf88bc7b727b151b466162"><td class="mdescLeft">&#160;</td><td class="mdescRight">平面的 SDF <a href="namespacevde_1_1sdf.html#adb1410817faf88bc7b727b151b466162">更多...</a><br /></td></tr>
<tr class="separator:adb1410817faf88bc7b727b151b466162"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e3a6cb5fc6231db51dbd5faaae9ca52"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a1e3a6cb5fc6231db51dbd5faaae9ca52">vde::sdf::ellipsoid</a> (const Point3D &amp;p, const Point3D &amp;radii)</td></tr>
<tr class="memdesc:a1e3a6cb5fc6231db51dbd5faaae9ca52"><td class="mdescLeft">&#160;</td><td class="mdescRight">椭球体的 SDF(有界梯度近似) <a href="namespacevde_1_1sdf.html#a1e3a6cb5fc6231db51dbd5faaae9ca52">更多...</a><br /></td></tr>
<tr class="separator:a1e3a6cb5fc6231db51dbd5faaae9ca52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fa4fb910bc945af4dd8eb3377efcb9b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a1fa4fb910bc945af4dd8eb3377efcb9b">vde::sdf::hex_prism</a> (const Point3D &amp;p, double radius, double height)</td></tr>
<tr class="memdesc:a1fa4fb910bc945af4dd8eb3377efcb9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">正六棱柱的 SDF <a href="namespacevde_1_1sdf.html#a1fa4fb910bc945af4dd8eb3377efcb9b">更多...</a><br /></td></tr>
<tr class="separator:a1fa4fb910bc945af4dd8eb3377efcb9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18a71c06ad9c47b49625f35840fdec42"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a18a71c06ad9c47b49625f35840fdec42">vde::sdf::infinite_cylinder</a> (const Point3D &amp;p, const Vector3D &amp;axis, double radius)</td></tr>
<tr class="memdesc:a18a71c06ad9c47b49625f35840fdec42"><td class="mdescLeft">&#160;</td><td class="mdescRight">无限长圆柱的 SDF <a href="namespacevde_1_1sdf.html#a18a71c06ad9c47b49625f35840fdec42">更多...</a><br /></td></tr>
<tr class="separator:a18a71c06ad9c47b49625f35840fdec42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d194f407d16556b22a4665e3cd87960"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a8d194f407d16556b22a4665e3cd87960">vde::sdf::wedge</a> (const Point3D &amp;p, double w, double h, double d)</td></tr>
<tr class="memdesc:a8d194f407d16556b22a4665e3cd87960"><td class="mdescLeft">&#160;</td><td class="mdescRight">楔形体的 SDF <a href="namespacevde_1_1sdf.html#a8d194f407d16556b22a4665e3cd87960">更多...</a><br /></td></tr>
<tr class="separator:a8d194f407d16556b22a4665e3cd87960"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a272ae0d8cb0668d8ba8a4cd10d131a6e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a272ae0d8cb0668d8ba8a4cd10d131a6e">vde::sdf::extrusion</a> (const Point3D &amp;, double sdf_2d)</td></tr>
<tr class="memdesc:a272ae0d8cb0668d8ba8a4cd10d131a6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">二维 SDF 沿 Z 轴的无限挤出 <a href="namespacevde_1_1sdf.html#a272ae0d8cb0668d8ba8a4cd10d131a6e">更多...</a><br /></td></tr>
<tr class="separator:a272ae0d8cb0668d8ba8a4cd10d131a6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e03a842ef7c53f32ed78aff015c8a0b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a9e03a842ef7c53f32ed78aff015c8a0b">vde::sdf::extrusion_bounded</a> (const Point3D &amp;p, double sdf_2d, double half_height)</td></tr>
<tr class="memdesc:a9e03a842ef7c53f32ed78aff015c8a0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">二维 SDF 的有限长度挤出 <a href="namespacevde_1_1sdf.html#a9e03a842ef7c53f32ed78aff015c8a0b">更多...</a><br /></td></tr>
<tr class="separator:a9e03a842ef7c53f32ed78aff015c8a0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87f81c43bc609732b4cd63fa619f4c3d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a87f81c43bc609732b4cd63fa619f4c3d">vde::sdf::revolution</a> (const Point3D &amp;, double sdf_2d, double)</td></tr>
<tr class="memdesc:a87f81c43bc609732b4cd63fa619f4c3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">二维轮廓绕 Y 轴的旋转体 SDF <a href="namespacevde_1_1sdf.html#a87f81c43bc609732b4cd63fa619f4c3d">更多...</a><br /></td></tr>
<tr class="separator:a87f81c43bc609732b4cd63fa619f4c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a049cefd36713ff9b184c0ad74dab96cf"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a049cefd36713ff9b184c0ad74dab96cf">vde::sdf::cone</a> (const Point3D &amp;p, double angle_rad, double height)</td></tr>
<tr class="memdesc:a049cefd36713ff9b184c0ad74dab96cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">圆锥台的 SDF(非内联实现) <a href="namespacevde_1_1sdf.html#a049cefd36713ff9b184c0ad74dab96cf">更多...</a><br /></td></tr>
<tr class="separator:a049cefd36713ff9b184c0ad74dab96cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3739a80b17c7ce591c56eedddb702a4e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a3739a80b17c7ce591c56eedddb702a4e">vde::sdf::triangular_prism</a> (const Point3D &amp;p, const Point3D &amp;a, const Point3D &amp;b, const Point3D &amp;c, double height)</td></tr>
<tr class="memdesc:a3739a80b17c7ce591c56eedddb702a4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">三角棱柱的 SDF(非内联实现) <a href="namespacevde_1_1sdf.html#a3739a80b17c7ce591c56eedddb702a4e">更多...</a><br /></td></tr>
<tr class="separator:a3739a80b17c7ce591c56eedddb702a4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01094a90a786e6ead7c7b36a2907f121"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a01094a90a786e6ead7c7b36a2907f121">vde::sdf::link</a> (const Point3D &amp;p, double length, double major_r, double minor_r)</td></tr>
<tr class="memdesc:a01094a90a786e6ead7c7b36a2907f121"><td class="mdescLeft">&#160;</td><td class="mdescRight">双环链接体的 SDF(非内联实现) <a href="namespacevde_1_1sdf.html#a01094a90a786e6ead7c7b36a2907f121">更多...</a><br /></td></tr>
<tr class="separator:a01094a90a786e6ead7c7b36a2907f121"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a533280217a42c14935de7c68f3191227"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1sdf.html#a533280217a42c14935de7c68f3191227">vde::sdf::infinite_cone</a> (const Point3D &amp;p, const Point3D &amp;apex, const Vector3D &amp;axis, double angle_rad)</td></tr>
<tr class="memdesc:a533280217a42c14935de7c68f3191227"><td class="mdescLeft">&#160;</td><td class="mdescRight">无限圆锥的 SDF(非内联实现) <a href="namespacevde_1_1sdf.html#a533280217a42c14935de7c68f3191227">更多...</a><br /></td></tr>
<tr class="separator:a533280217a42c14935de7c68f3191227"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>有符号距离函数(SDF)基础图元 </p>
<p>提供常见几何体到三维空间中各点的有符号距离计算。 所有图元定义在 <a class="el" href="namespacevde_1_1sdf.html">vde::sdf</a> 命名空间下,使用 <a class="el" href="namespacevde_1_1core.html#ac6aed70c4b90d13f10217267cd7a1952" title="双精度三维点(重新导出)">vde::core::Point3D</a> 作为输入。</p>
<h2><a class="anchor" id="autotoc_md28"></a>
SDF 约定</h2>
<ul>
<li>f(p) &lt; 0: 点 p 在几何体**内部**</li>
<li>f(p) = 0: 点 p 在几何体**表面**上</li>
<li>f(p) &gt; 0: 点 p 在几何体**外部**</li>
<li>|f(p)| 的绝对值近似为 p 到最近表面的欧几里得距离</li>
</ul>
<h2><a class="anchor" id="autotoc_md29"></a>
数值特性</h2>
<ul>
<li>所有内联函数标记为 <code>[[nodiscard]]</code>,强制调用方使用返回值</li>
<li>距离函数在表面附近满足 |∇f| ≈ 1(Lipschitz 连续,步进可靠)</li>
<li>部分复杂图元(cone, triangular_prism, link, infinite_cone)为非内联实现,定义在 src/sdf/ 中</li>
</ul>
<dl class="section note"><dt>注解</dt><dd>所有图元假设未施加变换——坐标系原点即图元中心/基点。 需要平移/旋转/缩放时,使用 <a class="el" href="sdf__operations_8h.html" title="SDF 布尔运算、修饰算子与域变形">sdf_operations.h</a> 中的域变形算子对采样点预先变换。 </dd></dl>
<p class="definition">在文件 <a class="el" href="sdf__primitives_8h_source.html">sdf_primitives.h</a> 中定义.</p>
</div></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="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_36dfe8171299c47a6036082559f11ede.html">vde</a></li><li class="navelem"><a class="el" href="dir_865941a50ed007925fcdd14642daadc9.html">sdf</a></li><li class="navelem"><a class="el" href="sdf__primitives_8h.html">sdf_primitives.h</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>