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
|
<!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: vtkBitArray</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('vtkcommon_vtkbitarray.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">vtkBitArray </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>Section: <a class="el" href="sec_vtkcommon.html">Visualization Toolkit Common Classes</a> </p>
<h1><a class="anchor" id="Usage"></a>
Usage</h1>
<p>vtkBitArray is an array of bits (0/1 data value). The array is packed so that each byte stores eight bits. vtkBitArray provides methods for insertion and retrieval of bits, and will automatically resize itself to hold new data.</p>
<p>To create an instance of class vtkBitArray, simply invoke its constructor as follows </p>
<pre class="fragment"> obj = vtkBitArray
</pre> <h1><a class="anchor" id="Methods"></a>
Methods</h1>
<p>The class vtkBitArray 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 vtkBitArray class. </p>
<ul>
<li>
<code>string = obj.GetClassName ()</code> </li>
<li>
<code>int = obj.IsA (string name)</code> </li>
<li>
<code>vtkBitArray = obj.NewInstance ()</code> </li>
<li>
<code>vtkBitArray = obj.SafeDownCast (vtkObject o)</code> </li>
<li>
<code>int = obj.Allocate (vtkIdType sz, vtkIdType ext)</code> - Allocate memory for this array. Delete old storage only if necessary. Note that ext is no longer used. </li>
<li>
<code>obj.Initialize ()</code> - Release storage and reset array to initial state. </li>
<li>
<code>int = obj.GetDataType ()</code> </li>
<li>
<code>int = obj.GetDataTypeSize ()</code> - Set the number of n-tuples in the array. </li>
<li>
<code>obj.SetNumberOfTuples (vtkIdType number)</code> - Set the number of n-tuples in the array. </li>
<li>
<code>obj.SetTuple (vtkIdType i, vtkIdType j, vtkAbstractArray source)</code> - Set the tuple at the ith location using the jth tuple in the source array. This method assumes that the two arrays have the same type and structure. Note that range checking and memory allocation is not performed; use in conjunction with SetNumberOfTuples() to allocate space. </li>
<li>
<code>obj.InsertTuple (vtkIdType i, vtkIdType j, vtkAbstractArray source)</code> - Insert the jth tuple in the source array, at ith location in this array. Note that memory allocation is performed as necessary to hold the data. </li>
<li>
<code>vtkIdType = obj.InsertNextTuple (vtkIdType j, vtkAbstractArray source)</code> - Insert the jth tuple in the source array, at the end in this array. Note that memory allocation is performed as necessary to hold the data. Returns the location at which the data was inserted. </li>
<li>
<code>obj.GetTuple (vtkIdType i, double tuple)</code> - Copy the tuple value into a user-provided array. </li>
<li>
<code>obj.SetTuple (vtkIdType i, float tuple)</code> - Set the tuple value at the ith location in the array. </li>
<li>
<code>obj.SetTuple (vtkIdType i, double tuple)</code> - Set the tuple value at the ith location in the array. </li>
<li>
<code>obj.InsertTuple (vtkIdType i, float tuple)</code> - Insert (memory allocation performed) the tuple into the ith location in the array. </li>
<li>
<code>obj.InsertTuple (vtkIdType i, double tuple)</code> - Insert (memory allocation performed) the tuple into the ith location in the array. </li>
<li>
<code>vtkIdType = obj.InsertNextTuple (float tuple)</code> - Insert (memory allocation performed) the tuple onto the end of the array. </li>
<li>
<code>vtkIdType = obj.InsertNextTuple (double tuple)</code> - Insert (memory allocation performed) the tuple onto the end of the array. </li>
<li>
<code>obj.RemoveTuple (vtkIdType id)</code> - These methods remove tuples from the data array. They shift data and resize array, so the data array is still valid after this operation. Note, this operation is fairly slow. </li>
<li>
<code>obj.RemoveFirstTuple ()</code> - These methods remove tuples from the data array. They shift data and resize array, so the data array is still valid after this operation. Note, this operation is fairly slow. </li>
<li>
<code>obj.RemoveLastTuple ()</code> - These methods remove tuples from the data array. They shift data and resize array, so the data array is still valid after this operation. Note, this operation is fairly slow. </li>
<li>
<code>obj.SetComponent (vtkIdType i, int j, double c)</code> - Set the data component at the ith tuple and jth component location. Note that i is less then NumberOfTuples and j is less then NumberOfComponents. Make sure enough memory has been allocated (use SetNumberOfTuples() and SetNumberOfComponents()). </li>
<li>
<code>obj.Squeeze ()</code> - Free any unneeded memory. </li>
<li>
<code>int = obj.Resize (vtkIdType numTuples)</code> - Resize the array while conserving the data. </li>
<li>
<code>int = obj.GetValue (vtkIdType id)</code> - Get the data at a particular index. </li>
<li>
<code>obj.SetNumberOfValues (vtkIdType number)</code> - Fast method based setting of values without memory checks. First use SetNumberOfValues then use SetValue to actually set them. Specify the number of values for this object to hold. Does an allocation as well as setting the MaxId ivar. Used in conjunction with SetValue() method for fast insertion. </li>
<li>
<code>obj.SetValue (vtkIdType id, int value)</code> - Set the data at a particular index. Does not do range checking. Make sure you use the method SetNumberOfValues() before inserting data. </li>
<li>
<code>obj.InsertValue (vtkIdType id, int i)</code> - Insets values and checks to make sure there is enough memory </li>
<li>
<code>vtkIdType = obj.InsertNextValue (int i)</code> </li>
<li>
<code>obj.InsertComponent (vtkIdType i, int j, double c)</code> - Insert the data component at ith tuple and jth component location. Note that memory allocation is performed as necessary to hold the data. </li>
<li>
<code>obj.DeepCopy (vtkDataArray da)</code> - Deep copy of another bit array. </li>
<li>
<code>obj.DeepCopy (vtkAbstractArray aa)</code> - This method lets the user specify data to be held by the array. The array argument is a pointer to the data. size is the size of the array supplied by the user. Set save to 1 to keep the class from deleting the array when it cleans up or reallocates memory. The class uses the actual array provided; it does not copy the data from the suppled array. If save 0, the array must have been allocated with new[] not malloc. </li>
<li>
<code>obj.SetArray (string array, vtkIdType size, int save)</code> - This method lets the user specify data to be held by the array. The array argument is a pointer to the data. size is the size of the array supplied by the user. Set save to 1 to keep the class from deleting the array when it cleans up or reallocates memory. The class uses the actual array provided; it does not copy the data from the suppled array. If save 0, the array must have been allocated with new[] not malloc. </li>
<li>
<code>vtkArrayIterator = obj.NewIterator ()</code> - Returns a new vtkBitArrayIterator instance. </li>
<li>
<code>vtkIdType = obj.LookupValue (int value)</code> </li>
<li>
<code>obj.LookupValue (int value, vtkIdList ids)</code> </li>
<li>
<code>obj.DataChanged ()</code> - Tell the array explicitly that the data has changed. This is only necessary to call when you modify the array contents without using the array's API (i.e. you retrieve a pointer to the data and modify the array contents). You need to call this so that the fast lookup will know to rebuild itself. Otherwise, the lookup functions will give incorrect results. </li>
<li>
<code>obj.ClearLookup ()</code> - Delete the associated fast lookup data structure on this array, if it exists. The lookup will be rebuilt on the next call to a lookup function. </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_vtkcommon.html">Visualization Toolkit Common Classes</a></li>
<li class="footer">Generated on Thu Jul 25 2013 17:18:30 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>
|