1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
|
<!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"/>
<title>FreeMat: vtkCleanPolyData</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="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</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 style="padding-left: 0.5em;">
<div id="projectname">FreeMat
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('vtkgraphics_vtkcleanpolydata.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">vtkCleanPolyData </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>Section: <a class="el" href="sec_vtkgraphics.html">Visualization Toolkit Graphics Classes</a> </p>
<h1><a class="anchor" id="Usage"></a>
Usage</h1>
<p>vtkCleanPolyData is a filter that takes polygonal data as input and generates polygonal data as output. vtkCleanPolyData can merge duplicate points (within specified tolerance and if enabled), eliminate points that are not used, and if enabled, transform degenerate cells into appropriate forms (for example, a triangle is converted into a line if two points of triangle are merged).</p>
<p>Conversion of degenerate cells is controlled by the flags ConvertLinesToPoints, ConvertPolysToLines, ConvertStripsToPolys which act cumulatively such that a degenerate strip may become a poly. The full set is Line with 1 points -> Vert (if ConvertLinesToPoints) Poly with 2 points -> Line (if ConvertPolysToLines) Poly with 1 points -> Vert (if ConvertPolysToLines && ConvertLinesToPoints) Strp with 3 points -> Poly (if ConvertStripsToPolys) Strp with 2 points -> Line (if ConvertStripsToPolys && ConvertPolysToLines) Strp with 1 points -> Vert (if ConvertStripsToPolys && ConvertPolysToLines && ConvertLinesToPoints)</p>
<p>If tolerance is specified precisely=0.0, then vtkCleanPolyData will use the vtkMergePoints object to merge points (which is faster). Otherwise the slower vtkIncrementalPointLocator is used. Before inserting points into the point locator, this class calls a function OperateOnPoint which can be used (in subclasses) to further refine the cleaning process. See vtkQuantizePolyDataPoints.</p>
<p>Note that merging of points can be disabled. In this case, a point locator will not be used, and points that are not used by any cells will be eliminated, but never merged.</p>
<p>To create an instance of class vtkCleanPolyData, simply invoke its constructor as follows </p>
<pre class="fragment"> obj = vtkCleanPolyData
</pre> <h1><a class="anchor" id="Methods"></a>
Methods</h1>
<p>The class vtkCleanPolyData has several methods that can be used. They are listed below. Note that the documentation is translated automatically from the VTK sources, and may not be completely intelligible. When in doubt, consult the VTK website. In the methods listed below, <code>obj</code> is an instance of the vtkCleanPolyData class. </p>
<ul>
<li>
<code>string = obj.GetClassName ()</code> </li>
<li>
<code>int = obj.IsA (string name)</code> </li>
<li>
<code>vtkCleanPolyData = obj.NewInstance ()</code> </li>
<li>
<code>vtkCleanPolyData = obj.SafeDownCast (vtkObject o)</code> </li>
<li>
<code>obj.SetToleranceIsAbsolute (int )</code> - By default ToleranceIsAbsolute is false and Tolerance is a fraction of Bounding box diagonal, if true, AbsoluteTolerance is used when adding points to locator (merging) </li>
<li>
<code>obj.ToleranceIsAbsoluteOn ()</code> - By default ToleranceIsAbsolute is false and Tolerance is a fraction of Bounding box diagonal, if true, AbsoluteTolerance is used when adding points to locator (merging) </li>
<li>
<code>obj.ToleranceIsAbsoluteOff ()</code> - By default ToleranceIsAbsolute is false and Tolerance is a fraction of Bounding box diagonal, if true, AbsoluteTolerance is used when adding points to locator (merging) </li>
<li>
<code>int = obj.GetToleranceIsAbsolute ()</code> - By default ToleranceIsAbsolute is false and Tolerance is a fraction of Bounding box diagonal, if true, AbsoluteTolerance is used when adding points to locator (merging) </li>
<li>
<code>obj.SetTolerance (double )</code> - Specify tolerance in terms of fraction of bounding box length. </li>
<li>
<code>double = obj.GetToleranceMinValue ()</code> - Specify tolerance in terms of fraction of bounding box length. </li>
<li>
<code>double = obj.GetToleranceMaxValue ()</code> - Specify tolerance in terms of fraction of bounding box length. </li>
<li>
<code>double = obj.GetTolerance ()</code> - Specify tolerance in terms of fraction of bounding box length. </li>
<li>
<code>obj.SetAbsoluteTolerance (double )</code> - Specify tolerance in absolute terms </li>
<li>
<code>double = obj.GetAbsoluteToleranceMinValue ()</code> - Specify tolerance in absolute terms </li>
<li>
<code>double = obj.GetAbsoluteToleranceMaxValue ()</code> - Specify tolerance in absolute terms </li>
<li>
<code>double = obj.GetAbsoluteTolerance ()</code> - Specify tolerance in absolute terms </li>
<li>
<code>obj.SetConvertLinesToPoints (int )</code> - Turn on/off conversion of degenerate lines to points </li>
<li>
<code>obj.ConvertLinesToPointsOn ()</code> - Turn on/off conversion of degenerate lines to points </li>
<li>
<code>obj.ConvertLinesToPointsOff ()</code> - Turn on/off conversion of degenerate lines to points </li>
<li>
<code>int = obj.GetConvertLinesToPoints ()</code> - Turn on/off conversion of degenerate lines to points </li>
<li>
<code>obj.SetConvertPolysToLines (int )</code> - Turn on/off conversion of degenerate polys to lines </li>
<li>
<code>obj.ConvertPolysToLinesOn ()</code> - Turn on/off conversion of degenerate polys to lines </li>
<li>
<code>obj.ConvertPolysToLinesOff ()</code> - Turn on/off conversion of degenerate polys to lines </li>
<li>
<code>int = obj.GetConvertPolysToLines ()</code> - Turn on/off conversion of degenerate polys to lines </li>
<li>
<code>obj.SetConvertStripsToPolys (int )</code> - Turn on/off conversion of degenerate strips to polys </li>
<li>
<code>obj.ConvertStripsToPolysOn ()</code> - Turn on/off conversion of degenerate strips to polys </li>
<li>
<code>obj.ConvertStripsToPolysOff ()</code> - Turn on/off conversion of degenerate strips to polys </li>
<li>
<code>int = obj.GetConvertStripsToPolys ()</code> - Turn on/off conversion of degenerate strips to polys </li>
<li>
<code>obj.SetPointMerging (int )</code> - Set/Get a boolean value that controls whether point merging is performed. If on, a locator will be used, and points laying within the appropriate tolerance may be merged. If off, points are never merged. By default, merging is on. </li>
<li>
<code>int = obj.GetPointMerging ()</code> - Set/Get a boolean value that controls whether point merging is performed. If on, a locator will be used, and points laying within the appropriate tolerance may be merged. If off, points are never merged. By default, merging is on. </li>
<li>
<code>obj.PointMergingOn ()</code> - Set/Get a boolean value that controls whether point merging is performed. If on, a locator will be used, and points laying within the appropriate tolerance may be merged. If off, points are never merged. By default, merging is on. </li>
<li>
<code>obj.PointMergingOff ()</code> - Set/Get a boolean value that controls whether point merging is performed. If on, a locator will be used, and points laying within the appropriate tolerance may be merged. If off, points are never merged. By default, merging is on. </li>
<li>
<code>obj.SetLocator (vtkIncrementalPointLocator locator)</code> - Set/Get a spatial locator for speeding the search process. By default an instance of vtkMergePoints is used. </li>
<li>
<code>vtkIncrementalPointLocator = obj.GetLocator ()</code> - Set/Get a spatial locator for speeding the search process. By default an instance of vtkMergePoints is used. </li>
<li>
<code>obj.CreateDefaultLocator (vtkPolyData input)</code> - Create default locator. Used to create one when none is specified. </li>
<li>
<code>obj.ReleaseLocator ()</code> - Get the MTime of this object also considering the locator. </li>
<li>
<code>long = obj.GetMTime ()</code> - Get the MTime of this object also considering the locator. </li>
<li>
<code>obj.OperateOnPoint (double in[3], double out[3])</code> - Perform operation on a point </li>
<li>
<code>obj.OperateOnBounds (double in[6], double out[6])</code> - Perform operation on bounds </li>
<li>
<code>obj.SetPieceInvariant (int )</code> </li>
<li>
<code>int = obj.GetPieceInvariant ()</code> </li>
<li>
<code>obj.PieceInvariantOn ()</code> </li>
<li>
<code>obj.PieceInvariantOff ()</code> </li>
</ul>
</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="index.html">FreeMat Documentation</a></li><li class="navelem"><a class="el" href="sec_vtkgraphics.html">Visualization Toolkit Graphics Classes</a></li>
<li class="footer">Generated on Thu Jul 25 2013 17:18:31 for FreeMat by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.1.1 </li>
</ul>
</div>
</body>
</html>
|