Files
opennurbs/6/da/d8e/class_o_n___mesh_topology.html
Bozo 832ccb5c1a Publish!
Generated from v6.0.11315.11111-test14
2018-02-03 11:08:49 -08:00

738 lines
40 KiB
HTML

<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>openNURBS SDK Help: ON_MeshTopology Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<!-- <script type="text/javascript" src="../../jquery.js"></script> -->
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
<link href="../../customdoxygen.css" rel="stylesheet" type="text/css"/>
<!-- bootstrap -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<!-- smartmenus -->
<link href="../../jquery.smartmenus.bootstrap.css" rel="stylesheet">
<script type="text/javascript" src="../../jquery.smartmenus.js"></script>
<script type="text/javascript" src="../../jquery.smartmenus.bootstrap.js"></script>
</head>
<body>
<!-- <div class="version-banner">
Go back to the <a href="/">main site</a>...
</div> -->
<div class="container">
<!-- navbar -->
<nav class="navbar navbar-default">
<div class="container-fluid">
<a class="navbar-brand" href="#">openNURBS SDK Help</a>
<div class="navbar-collapse collapse" id="main-nav-placeholder">
<!-- <p class="navbar-text navbar-right">v6.0</p> -->
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a class="dropdown-toggle" href="#">v6.0 <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Latest (6.x)</a></li>
<li class="disabled"><a href="#">WIP (7.x)</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div class="page-content">
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="../../d1/d69/class_o_n___mesh_topology-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ON_MeshTopology Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="../../db/df7/opennurbs__mesh_8h_source.html">opennurbs_mesh.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af9e81868b0524e7131f01fb935effc53"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#af9e81868b0524e7131f01fb935effc53">ON_MeshTopology</a> ()</td></tr>
<tr class="separator:af9e81868b0524e7131f01fb935effc53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c182f5ce12a9587b6d9c4f9a6bc11fa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a6c182f5ce12a9587b6d9c4f9a6bc11fa">~ON_MeshTopology</a> ()</td></tr>
<tr class="separator:a6c182f5ce12a9587b6d9c4f9a6bc11fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e9a32d4c3787065b3564a4cf65e0511"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a9e9a32d4c3787065b3564a4cf65e0511">Dump</a> (<a class="el" href="../../d2/da3/class_o_n___text_log.html">ON_TextLog</a> &amp;) const</td></tr>
<tr class="separator:a9e9a32d4c3787065b3564a4cf65e0511"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61f1ef18bd957168b073d2dfd0dce584"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a61f1ef18bd957168b073d2dfd0dce584">GetIntArray</a> (int count)</td></tr>
<tr class="memdesc:a61f1ef18bd957168b073d2dfd0dce584"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert user function for efficiently getting the integer arrays used by the <a class="el" href="../../de/d65/struct_o_n___mesh_topology_vertex.html">ON_MeshTopologyVertex</a> and <a class="el" href="../../d6/d17/struct_o_n___mesh_topology_edge.html">ON_MeshTopologyEdge</a> classes. <a href="#a61f1ef18bd957168b073d2dfd0dce584">More...</a><br /></td></tr>
<tr class="separator:a61f1ef18bd957168b073d2dfd0dce584"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab165c20d651e6877f97bb02dc1d53255"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#ab165c20d651e6877f97bb02dc1d53255">GetTopFaceVertices</a> (int topfi, int topvi[4]) const</td></tr>
<tr class="separator:ab165c20d651e6877f97bb02dc1d53255"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8d0e8b41643858edf8ca4868ea2ca7b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#ab8d0e8b41643858edf8ca4868ea2ca7b">IsValid</a> () const</td></tr>
<tr class="separator:ab8d0e8b41643858edf8ca4868ea2ca7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad29c4248e73acff8f9f4d9427f57965a"><td class="memItemLeft" align="right" valign="top">class <a class="el" href="../../dd/d15/class_o_n___mesh_component_ref.html">ON_MeshComponentRef</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#ad29c4248e73acff8f9f4d9427f57965a">MeshComponentRef</a> (ON_COMPONENT_INDEX ci) const</td></tr>
<tr class="separator:ad29c4248e73acff8f9f4d9427f57965a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae197273c4a5a2ee427f3db98fa598481"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#ae197273c4a5a2ee427f3db98fa598481">NgonIndexFromTopologyEdgeIndex</a> (unsigned int topei, const unsigned int *mesh_facedex_to_ngondex_map) const</td></tr>
<tr class="separator:ae197273c4a5a2ee427f3db98fa598481"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71337b0946ee1a799f72656142992da2"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a71337b0946ee1a799f72656142992da2">NgonIndexFromTopologyVertexIndex</a> (unsigned int topvi, const unsigned int *mesh_facedex_to_ngondex_map) const</td></tr>
<tr class="separator:a71337b0946ee1a799f72656142992da2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeca0c893d61e4163c80301cdd3a408f9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#aeca0c893d61e4163c80301cdd3a408f9">SortVertexEdges</a> (int topvi) const</td></tr>
<tr class="memdesc:aeca0c893d61e4163c80301cdd3a408f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sort the m_topei[] list of a mesh topology vertex so that the edges are in radial order. The "const" is a white lie to make this function easier to call. Parameter: topvi - [in] index of vertex in m_topv[] array. <a href="#aeca0c893d61e4163c80301cdd3a408f9">More...</a><br /></td></tr>
<tr class="separator:aeca0c893d61e4163c80301cdd3a408f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a616cd3b398ffc645c4a39aa39e213c0e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a616cd3b398ffc645c4a39aa39e213c0e">SortVertexEdges</a> () const</td></tr>
<tr class="memdesc:a616cd3b398ffc645c4a39aa39e213c0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sort the m_topei[] list of every mesh topology vertex so that the edges are in radial order. The "const" is a white lie to make this function easier to call. <a href="#a616cd3b398ffc645c4a39aa39e213c0e">More...</a><br /></td></tr>
<tr class="separator:a616cd3b398ffc645c4a39aa39e213c0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27d7b3966b8e94b20277400050acebe2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a27d7b3966b8e94b20277400050acebe2">TopEdge</a> (int vtopi0, int vtopi1) const</td></tr>
<tr class="separator:a27d7b3966b8e94b20277400050acebe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28d6dcdef86b790c72d8e060d5aef982"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a28d6dcdef86b790c72d8e060d5aef982">TopEdgeCount</a> () const</td></tr>
<tr class="memdesc:a28d6dcdef86b790c72d8e060d5aef982"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of topoligical edges <a href="#a28d6dcdef86b790c72d8e060d5aef982">More...</a><br /></td></tr>
<tr class="separator:a28d6dcdef86b790c72d8e060d5aef982"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9220ececa11b7e26dd15d0ee20bfdac9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a9220ececa11b7e26dd15d0ee20bfdac9">TopEdgeIsHidden</a> (int topei) const</td></tr>
<tr class="memdesc:a9220ececa11b7e26dd15d0ee20bfdac9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the topological edge is hidden. <a href="#a9220ececa11b7e26dd15d0ee20bfdac9">More...</a><br /></td></tr>
<tr class="separator:a9220ececa11b7e26dd15d0ee20bfdac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2406da2a2356ff4b86f6dfa680c2d7f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d4/d6f/class_o_n___line.html">ON_Line</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a2406da2a2356ff4b86f6dfa680c2d7f0">TopEdgeLine</a> (int tope_index) const</td></tr>
<tr class="memdesc:a2406da2a2356ff4b86f6dfa680c2d7f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the 3d line along an edge. <a href="#a2406da2a2356ff4b86f6dfa680c2d7f0">More...</a><br /></td></tr>
<tr class="separator:a2406da2a2356ff4b86f6dfa680c2d7f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ec7c39c0ea0d8a9a91622f09a0512bc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a3ec7c39c0ea0d8a9a91622f09a0512bc">TopFaceCount</a> () const</td></tr>
<tr class="memdesc:a3ec7c39c0ea0d8a9a91622f09a0512bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of topoligical faces (same as m_mesh.FaceCount()) <a href="#a3ec7c39c0ea0d8a9a91622f09a0512bc">More...</a><br /></td></tr>
<tr class="separator:a3ec7c39c0ea0d8a9a91622f09a0512bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9836ca785a5a0c99df153ce121504932"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a9836ca785a5a0c99df153ce121504932">TopFaceIsHidden</a> (int topfi) const</td></tr>
<tr class="memdesc:a9836ca785a5a0c99df153ce121504932"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the topological face is hidden. <a href="#a9836ca785a5a0c99df153ce121504932">More...</a><br /></td></tr>
<tr class="separator:a9836ca785a5a0c99df153ce121504932"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac56b6a8f656b1e7e53967ee90549f016"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#ac56b6a8f656b1e7e53967ee90549f016">TopVertexCount</a> () const</td></tr>
<tr class="memdesc:ac56b6a8f656b1e7e53967ee90549f016"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of topoligical vertices (&lt;= m_mesh.VertexCount()) <a href="#ac56b6a8f656b1e7e53967ee90549f016">More...</a><br /></td></tr>
<tr class="separator:ac56b6a8f656b1e7e53967ee90549f016"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8869fab93617fd9b5243710b143d11f2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a8869fab93617fd9b5243710b143d11f2">TopVertexIsHidden</a> (int topvi) const</td></tr>
<tr class="memdesc:a8869fab93617fd9b5243710b143d11f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the topological vertex is hidden. <a href="#a8869fab93617fd9b5243710b143d11f2">More...</a><br /></td></tr>
<tr class="separator:a8869fab93617fd9b5243710b143d11f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b0e645c7e31edfd60a298b6567c722f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d2/d35/class_o_n__3d_point.html">ON_3dPoint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a3b0e645c7e31edfd60a298b6567c722f">TopVertexPoint</a> (int topv_index) const</td></tr>
<tr class="memdesc:a3b0e645c7e31edfd60a298b6567c722f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the 3d point location of a vertex. <a href="#a3b0e645c7e31edfd60a298b6567c722f">More...</a><br /></td></tr>
<tr class="separator:a3b0e645c7e31edfd60a298b6567c722f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:adea7da315c30d5d3b24743ce9b87e434"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="../../df/d11/class_o_n___mesh.html">ON_Mesh</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#adea7da315c30d5d3b24743ce9b87e434">m_mesh</a></td></tr>
<tr class="memdesc:adea7da315c30d5d3b24743ce9b87e434"><td class="mdescLeft">&#160;</td><td class="mdescRight">The parent <a class="el" href="../../df/d11/class_o_n___mesh.html">ON_Mesh</a> geometry used to compute this mesh topology. <a href="#adea7da315c30d5d3b24743ce9b87e434">More...</a><br /></td></tr>
<tr class="separator:adea7da315c30d5d3b24743ce9b87e434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a541e6ab0313e7b1003a2f757ef093fed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt; <a class="el" href="../../d6/d17/struct_o_n___mesh_topology_edge.html">ON_MeshTopologyEdge</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a541e6ab0313e7b1003a2f757ef093fed">m_tope</a></td></tr>
<tr class="separator:a541e6ab0313e7b1003a2f757ef093fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe8921e08c9ce6badef5f5b464458255"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt; <a class="el" href="../../dc/dd9/struct_o_n___mesh_topology_face.html">ON_MeshTopologyFace</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#afe8921e08c9ce6badef5f5b464458255">m_topf</a></td></tr>
<tr class="separator:afe8921e08c9ce6badef5f5b464458255"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad39c817f6f8dfdf54bbeaa32982bdb74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt; <a class="el" href="../../de/d65/struct_o_n___mesh_topology_vertex.html">ON_MeshTopologyVertex</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#ad39c817f6f8dfdf54bbeaa32982bdb74">m_topv</a></td></tr>
<tr class="separator:ad39c817f6f8dfdf54bbeaa32982bdb74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44a6d623923b7f30ec2fd6a4cf6c4acc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a44a6d623923b7f30ec2fd6a4cf6c4acc">m_topv_map</a></td></tr>
<tr class="separator:a44a6d623923b7f30ec2fd6a4cf6c4acc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a04364895370bc61cd7e1c71a75c420a6"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a04364895370bc61cd7e1c71a75c420a6">ON_Mesh</a></td></tr>
<tr class="separator:a04364895370bc61cd7e1c71a75c420a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="af9e81868b0524e7131f01fb935effc53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9e81868b0524e7131f01fb935effc53">&#9670;&nbsp;</a></span>ON_MeshTopology()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ON_MeshTopology::ON_MeshTopology </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6c182f5ce12a9587b6d9c4f9a6bc11fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c182f5ce12a9587b6d9c4f9a6bc11fa">&#9670;&nbsp;</a></span>~ON_MeshTopology()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ON_MeshTopology::~ON_MeshTopology </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9e9a32d4c3787065b3564a4cf65e0511"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e9a32d4c3787065b3564a4cf65e0511">&#9670;&nbsp;</a></span>Dump()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_MeshTopology::Dump </td>
<td>(</td>
<td class="paramtype"><a class="el" href="../../d2/da3/class_o_n___text_log.html">ON_TextLog</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a61f1ef18bd957168b073d2dfd0dce584"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61f1ef18bd957168b073d2dfd0dce584">&#9670;&nbsp;</a></span>GetIntArray()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int* ON_MeshTopology::GetIntArray </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>count</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert user function for efficiently getting the integer arrays used by the <a class="el" href="../../de/d65/struct_o_n___mesh_topology_vertex.html">ON_MeshTopologyVertex</a> and <a class="el" href="../../d6/d17/struct_o_n___mesh_topology_edge.html">ON_MeshTopologyEdge</a> classes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">count</td><td>[in] number of integers in array</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to integer array. The array memory will be freed by <a class="el" href="../../da/d8e/class_o_n___mesh_topology.html#a6c182f5ce12a9587b6d9c4f9a6bc11fa">~ON_MeshTopology()</a> </dd></dl>
</div>
</div>
<a id="ab165c20d651e6877f97bb02dc1d53255"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab165c20d651e6877f97bb02dc1d53255">&#9670;&nbsp;</a></span>GetTopFaceVertices()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::GetTopFaceVertices </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topfi</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topvi</em>[4]&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab8d0e8b41643858edf8ca4868ea2ca7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8d0e8b41643858edf8ca4868ea2ca7b">&#9670;&nbsp;</a></span>IsValid()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::IsValid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad29c4248e73acff8f9f4d9427f57965a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad29c4248e73acff8f9f4d9427f57965a">&#9670;&nbsp;</a></span>MeshComponentRef()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">class <a class="el" href="../../dd/d15/class_o_n___mesh_component_ref.html">ON_MeshComponentRef</a> ON_MeshTopology::MeshComponentRef </td>
<td>(</td>
<td class="paramtype">ON_COMPONENT_INDEX&#160;</td>
<td class="paramname"><em>ci</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae197273c4a5a2ee427f3db98fa598481"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae197273c4a5a2ee427f3db98fa598481">&#9670;&nbsp;</a></span>NgonIndexFromTopologyEdgeIndex()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int ON_MeshTopology::NgonIndexFromTopologyEdgeIndex </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>topei</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned int *&#160;</td>
<td class="paramname"><em>mesh_facedex_to_ngondex_map</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">topei</td><td>[in] Topology edge index</td></tr>
<tr><td class="paramname">mesh_facedex_to_ngondex_map</td><td>[in] If null, Mesh().NgonMap() will be used. In cases where Mesh().NgonMap() does not exist and cannot be created, an expert user may pass in a local map that converts a face index into an ngon index.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>If the vertex is interior to a single ngon, then the index of the ngon is returned. Otherwise ON_UNSET_UINT_INDEX is returned. </dd></dl>
</div>
</div>
<a id="a71337b0946ee1a799f72656142992da2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71337b0946ee1a799f72656142992da2">&#9670;&nbsp;</a></span>NgonIndexFromTopologyVertexIndex()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int ON_MeshTopology::NgonIndexFromTopologyVertexIndex </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>topvi</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned int *&#160;</td>
<td class="paramname"><em>mesh_facedex_to_ngondex_map</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">topvi</td><td>[in] Topology vertex index</td></tr>
<tr><td class="paramname">mesh_facedex_to_ngondex_map</td><td>[in] If null, Mesh().NgonMap() will be used. In cases where Mesh().NgonMap() does not exist and cannot be created, an expert user may pass in a local map that converts a face index into an ngon index.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>If the vertex is interior to a single ngon, then the index of the ngon is returned. Otherwise ON_UNSET_UINT_INDEX is returned. </dd></dl>
</div>
</div>
<a id="aeca0c893d61e4163c80301cdd3a408f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeca0c893d61e4163c80301cdd3a408f9">&#9670;&nbsp;</a></span>SortVertexEdges() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::SortVertexEdges </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topvi</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Sort the m_topei[] list of a mesh topology vertex so that the edges are in radial order. The "const" is a white lie to make this function easier to call. Parameter: topvi - [in] index of vertex in m_topv[] array. </p>
<p>A nonmanifold edge is treated as a boundary edge with respect to sorting. If any boundary or nonmanifold edges end at the vertex, then the first edge will be a boundary or nonmanifold edge. </p>
</div>
</div>
<a id="a616cd3b398ffc645c4a39aa39e213c0e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a616cd3b398ffc645c4a39aa39e213c0e">&#9670;&nbsp;</a></span>SortVertexEdges() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::SortVertexEdges </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Sort the m_topei[] list of every mesh topology vertex so that the edges are in radial order. The "const" is a white lie to make this function easier to call. </p>
<p>Same as for ( int topvi = 0; topvi &lt; m_topv.Count(); topvi++ ) SortVertexEdges(topvi); </p>
</div>
</div>
<a id="a27d7b3966b8e94b20277400050acebe2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a27d7b3966b8e94b20277400050acebe2">&#9670;&nbsp;</a></span>TopEdge()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ON_MeshTopology::TopEdge </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>vtopi0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>vtopi1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a28d6dcdef86b790c72d8e060d5aef982"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28d6dcdef86b790c72d8e060d5aef982">&#9670;&nbsp;</a></span>TopEdgeCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ON_MeshTopology::TopEdgeCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>number of topoligical edges </p>
</div>
</div>
<a id="a9220ececa11b7e26dd15d0ee20bfdac9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9220ececa11b7e26dd15d0ee20bfdac9">&#9670;&nbsp;</a></span>TopEdgeIsHidden()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::TopEdgeIsHidden </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topei</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if the topological edge is hidden. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">topei</td><td>[in] mesh topology edge index.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if mesh topology edge is hidden. </dd></dl>
<p>The mesh topology edge is hidden if and only if either of its mesh topology vertices is hidden. </p>
</div>
</div>
<a id="a2406da2a2356ff4b86f6dfa680c2d7f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2406da2a2356ff4b86f6dfa680c2d7f0">&#9670;&nbsp;</a></span>TopEdgeLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d4/d6f/class_o_n___line.html">ON_Line</a> ON_MeshTopology::TopEdgeLine </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>tope_index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the 3d line along an edge. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">tope_index</td><td>[in];</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Line along edge. If input is not valid, the line.from and to are <a class="el" href="../../d2/d35/class_o_n__3d_point.html#aa68906e3e7650b01ce88c527f6088d7d">ON_3dPoint::UnsetPoint</a> </dd></dl>
</div>
</div>
<a id="a3ec7c39c0ea0d8a9a91622f09a0512bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ec7c39c0ea0d8a9a91622f09a0512bc">&#9670;&nbsp;</a></span>TopFaceCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ON_MeshTopology::TopFaceCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>number of topoligical faces (same as m_mesh.FaceCount()) </p>
</div>
</div>
<a id="a9836ca785a5a0c99df153ce121504932"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9836ca785a5a0c99df153ce121504932">&#9670;&nbsp;</a></span>TopFaceIsHidden()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::TopFaceIsHidden </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topfi</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if the topological face is hidden. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">topfi</td><td>[in] mesh topology face index.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if mesh topology face is hidden. </dd></dl>
<p>The mesh topology face is hidden if and only if any of its mesh topology edges are hidden. </p>
</div>
</div>
<a id="ac56b6a8f656b1e7e53967ee90549f016"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac56b6a8f656b1e7e53967ee90549f016">&#9670;&nbsp;</a></span>TopVertexCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ON_MeshTopology::TopVertexCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>number of topoligical vertices (&lt;= m_mesh.VertexCount()) </p>
</div>
</div>
<a id="a8869fab93617fd9b5243710b143d11f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8869fab93617fd9b5243710b143d11f2">&#9670;&nbsp;</a></span>TopVertexIsHidden()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_MeshTopology::TopVertexIsHidden </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topvi</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if the topological vertex is hidden. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">topvi</td><td>[in] mesh topology vertex index.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if mesh topology vertex is hidden. </dd></dl>
<p>The mesh topology vertex is hidden if and only if all the <a class="el" href="../../df/d11/class_o_n___mesh.html">ON_Mesh</a> vertices it represents is hidden. </p>
</div>
</div>
<a id="a3b0e645c7e31edfd60a298b6567c722f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b0e645c7e31edfd60a298b6567c722f">&#9670;&nbsp;</a></span>TopVertexPoint()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d2/d35/class_o_n__3d_point.html">ON_3dPoint</a> ON_MeshTopology::TopVertexPoint </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>topv_index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the 3d point location of a vertex. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">topv_index</td><td>[in];</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Location of vertex. </dd></dl>
</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="a04364895370bc61cd7e1c71a75c420a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04364895370bc61cd7e1c71a75c420a6">&#9670;&nbsp;</a></span>ON_Mesh</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class <a class="el" href="../../df/d11/class_o_n___mesh.html">ON_Mesh</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="adea7da315c30d5d3b24743ce9b87e434"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adea7da315c30d5d3b24743ce9b87e434">&#9670;&nbsp;</a></span>m_mesh</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="../../df/d11/class_o_n___mesh.html">ON_Mesh</a>* ON_MeshTopology::m_mesh</td>
</tr>
</table>
</div><div class="memdoc">
<p>The parent <a class="el" href="../../df/d11/class_o_n___mesh.html">ON_Mesh</a> geometry used to compute this mesh topology. </p>
</div>
</div>
<a id="a541e6ab0313e7b1003a2f757ef093fed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a541e6ab0313e7b1003a2f757ef093fed">&#9670;&nbsp;</a></span>m_tope</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt;<a class="el" href="../../d6/d17/struct_o_n___mesh_topology_edge.html">ON_MeshTopologyEdge</a>&gt; ON_MeshTopology::m_tope</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="afe8921e08c9ce6badef5f5b464458255"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe8921e08c9ce6badef5f5b464458255">&#9670;&nbsp;</a></span>m_topf</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt;<a class="el" href="../../dc/dd9/struct_o_n___mesh_topology_face.html">ON_MeshTopologyFace</a>&gt; ON_MeshTopology::m_topf</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad39c817f6f8dfdf54bbeaa32982bdb74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad39c817f6f8dfdf54bbeaa32982bdb74">&#9670;&nbsp;</a></span>m_topv</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt;<a class="el" href="../../de/d65/struct_o_n___mesh_topology_vertex.html">ON_MeshTopologyVertex</a>&gt; ON_MeshTopology::m_topv</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a44a6d623923b7f30ec2fd6a4cf6c4acc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44a6d623923b7f30ec2fd6a4cf6c4acc">&#9670;&nbsp;</a></span>m_topv_map</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../dc/dfe/class_o_n___simple_array.html">ON_SimpleArray</a>&lt;int&gt; ON_MeshTopology::m_topv_map</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.13-->
<!-- start footer part -->
</div> <!-- page-content -->
<hr class="footer"/><address class="footer"><small>
Generated on Sat Feb 3 2018 11:08:31 for openNURBS SDK Help by <a href="http://www.doxygen.org/index.html">
<!-- <img class="footer" src="../../doxygen.png" alt="doxygen"/> -->
Doxygen
</a> 1.8.13
</small></address>
</div> <!-- container -->
<!-- doxy-boot -->
<script type="text/javascript" src="../../doxy-boot.js"></script>
</body>
</html>