Files
ViewDesignEngine/docs/api/boolean__mesh_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

179 lines
14 KiB
HTML
Raw 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">
<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/boolean/boolean_mesh.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('boolean__mesh_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">boolean_mesh.h 文件参考<div class="ingroups"><a class="el" href="group__boolean.html">布尔运算模块 (vde::boolean)</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>三维网格布尔运算
<a href="#details">更多...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="boolean__2d_8h_source.html">vde/boolean/boolean_2d.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="polygon_8h_source.html">vde/core/polygon.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="halfedge__mesh_8h_source.html">vde/mesh/halfedge_mesh.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
boolean_mesh.h 的引用(Include)关系图:</div>
<div class="dyncontent">
<div class="center"><img src="boolean__mesh_8h__incl.png" border="0" usemap="#ainclude_2vde_2boolean_2boolean__mesh_8h" alt=""/></div>
<map name="ainclude_2vde_2boolean_2boolean__mesh_8h" id="ainclude_2vde_2boolean_2boolean__mesh_8h">
<area shape="rect" title="三维网格布尔运算" alt="" coords="160,5,313,47"/>
<area shape="rect" href="boolean__2d_8h.html" title="二维多边形布尔运算" alt="" coords="5,95,199,121"/>
<area shape="rect" href="polygon_8h.html" title=" " alt="" coords="94,169,241,196"/>
<area shape="rect" href="halfedge__mesh_8h.html" title=" " alt="" coords="265,169,467,196"/>
<area shape="rect" title=" " alt="" coords="161,483,224,509"/>
<area shape="rect" href="point_8h.html" title=" " alt="" coords="256,319,383,345"/>
<area shape="rect" href="aabb_8h.html" title=" " alt="" coords="357,244,484,271"/>
<area shape="rect" title=" " alt="" coords="74,244,130,271"/>
<area shape="rect" href="math__types_8h.html" title=" " alt="" coords="568,393,727,435"/>
<area shape="rect" href="tolerance_8h.html" title=" " alt="" coords="255,401,453,427"/>
<area shape="rect" title=" " alt="" coords="468,483,560,509"/>
<area shape="rect" title=" " alt="" coords="584,483,711,509"/>
<area shape="rect" title=" " alt="" coords="735,483,805,509"/>
<area shape="rect" title=" " alt="" coords="297,483,360,509"/>
<area shape="rect" title=" " alt="" coords="385,483,443,509"/>
<area shape="rect" title=" " alt="" coords="407,319,493,345"/>
<area shape="rect" title=" " alt="" coords="509,244,575,271"/>
</map>
</div>
</div>
<p><a href="boolean__mesh_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_1boolean"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html">vde::boolean</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:a9804b327a1a811593f7129610e2ab1f6"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#a9804b327a1a811593f7129610e2ab1f6">vde::boolean::mesh_union</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b)</td></tr>
<tr class="memdesc:a9804b327a1a811593f7129610e2ab1f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">网格并集 A B <a href="namespacevde_1_1boolean.html#a9804b327a1a811593f7129610e2ab1f6">更多...</a><br /></td></tr>
<tr class="separator:a9804b327a1a811593f7129610e2ab1f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf255b50c00a9aa991020eb39e800457"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#abf255b50c00a9aa991020eb39e800457">vde::boolean::mesh_intersection</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b)</td></tr>
<tr class="memdesc:abf255b50c00a9aa991020eb39e800457"><td class="mdescLeft">&#160;</td><td class="mdescRight">网格交集 A ∩ B <a href="namespacevde_1_1boolean.html#abf255b50c00a9aa991020eb39e800457">更多...</a><br /></td></tr>
<tr class="separator:abf255b50c00a9aa991020eb39e800457"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0f79ea9f7f8d2a91329531d2d99e1c3"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#ab0f79ea9f7f8d2a91329531d2d99e1c3">vde::boolean::mesh_difference</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b)</td></tr>
<tr class="memdesc:ab0f79ea9f7f8d2a91329531d2d99e1c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">网格差集 A B <a href="namespacevde_1_1boolean.html#ab0f79ea9f7f8d2a91329531d2d99e1c3">更多...</a><br /></td></tr>
<tr class="separator:ab0f79ea9f7f8d2a91329531d2d99e1c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1b0c6f707a5c6cbe829bed5083264fa"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#ae1b0c6f707a5c6cbe829bed5083264fa">vde::boolean::mesh_sym_diff</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b)</td></tr>
<tr class="memdesc:ae1b0c6f707a5c6cbe829bed5083264fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">网格对称差 (A − B) ∪ (B − A) <a href="namespacevde_1_1boolean.html#ae1b0c6f707a5c6cbe829bed5083264fa">更多...</a><br /></td></tr>
<tr class="separator:ae1b0c6f707a5c6cbe829bed5083264fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad45e2570a6b46624ecc43ccb18e22bac"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#ad45e2570a6b46624ecc43ccb18e22bac">vde::boolean::clip_mesh</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b, bool invert_b=false)</td></tr>
<tr class="memdesc:ad45e2570a6b46624ecc43ccb18e22bac"><td class="mdescLeft">&#160;</td><td class="mdescRight">用网格 B 裁剪网格 A <a href="namespacevde_1_1boolean.html#ad45e2570a6b46624ecc43ccb18e22bac">更多...</a><br /></td></tr>
<tr class="separator:ad45e2570a6b46624ecc43ccb18e22bac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7facd7c849be2a97b1e53e8c4602d5c"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#ab7facd7c849be2a97b1e53e8c4602d5c">vde::boolean::invert_mesh</a> (const HalfedgeMesh &amp;m)</td></tr>
<tr class="memdesc:ab7facd7c849be2a97b1e53e8c4602d5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">翻转网格所有面片的法线方向 <a href="namespacevde_1_1boolean.html#ab7facd7c849be2a97b1e53e8c4602d5c">更多...</a><br /></td></tr>
<tr class="separator:ab7facd7c849be2a97b1e53e8c4602d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae638bb18b0580e662c700358dfbd0dac"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#ae638bb18b0580e662c700358dfbd0dac">vde::boolean::merge_meshes</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b)</td></tr>
<tr class="memdesc:ae638bb18b0580e662c700358dfbd0dac"><td class="mdescLeft">&#160;</td><td class="mdescRight">合并两个网格 <a href="namespacevde_1_1boolean.html#ae638bb18b0580e662c700358dfbd0dac">更多...</a><br /></td></tr>
<tr class="separator:ae638bb18b0580e662c700358dfbd0dac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80fa9af2671c97412c95a8a9d592a20c"><td class="memItemLeft" align="right" valign="top">HalfedgeMesh&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#a80fa9af2671c97412c95a8a9d592a20c">vde::boolean::mesh_boolean</a> (const HalfedgeMesh &amp;a, const HalfedgeMesh &amp;b, BooleanOp op)</td></tr>
<tr class="memdesc:a80fa9af2671c97412c95a8a9d592a20c"><td class="mdescLeft">&#160;</td><td class="mdescRight">网格布尔运算统一接口 <a href="namespacevde_1_1boolean.html#a80fa9af2671c97412c95a8a9d592a20c">更多...</a><br /></td></tr>
<tr class="separator:a80fa9af2671c97412c95a8a9d592a20c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35fbe67095edde181fb1f0911d04ae11"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacevde_1_1boolean.html#a35fbe67095edde181fb1f0911d04ae11">vde::boolean::is_point_inside_mesh</a> (const core::Point3D &amp;p, const HalfedgeMesh &amp;mesh)</td></tr>
<tr class="memdesc:a35fbe67095edde181fb1f0911d04ae11"><td class="mdescLeft">&#160;</td><td class="mdescRight">判断三维点是否在封闭网格内部 <a href="namespacevde_1_1boolean.html#a35fbe67095edde181fb1f0911d04ae11">更多...</a><br /></td></tr>
<tr class="separator:a35fbe67095edde181fb1f0911d04ae11"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>三维网格布尔运算 </p>
<p>基于半边的网格布尔操作:并集、交集、差集、对称差。 通过面片重心内外判定 (ray-casting) 实现拓扑分类。 </p>
<p class="definition">在文件 <a class="el" href="boolean__mesh_8h_source.html">boolean_mesh.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_44e83532a8f79c35e885af06e64747bc.html">boolean</a></li><li class="navelem"><a class="el" href="boolean__mesh_8h.html">boolean_mesh.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>