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
|
<!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: vtkUniformVariables</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('vtkrendering_vtkuniformvariables.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">vtkUniformVariables </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>Section: <a class="el" href="sec_vtkrendering.html">Visualization Toolkit Rendering Classes</a> </p>
<h1><a class="anchor" id="Usage"></a>
Usage</h1>
<p>vtkUniformVariables is a list of uniform variables attached to either a vtkShader2 object or to a vtkShaderProgram2. Uniform variables on a vtkShaderProgram2 override values of uniform variables on a vtkShader2.</p>
<p>To create an instance of class vtkUniformVariables, simply invoke its constructor as follows </p>
<pre class="fragment"> obj = vtkUniformVariables
</pre> <h1><a class="anchor" id="Methods"></a>
Methods</h1>
<p>The class vtkUniformVariables 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 vtkUniformVariables class. </p>
<ul>
<li>
<code>string = obj.GetClassName ()</code> </li>
<li>
<code>int = obj.IsA (string name)</code> </li>
<li>
<code>vtkUniformVariables = obj.NewInstance ()</code> </li>
<li>
<code>vtkUniformVariables = obj.SafeDownCast (vtkObject o)</code> </li>
<li>
<code>obj.SetUniformi (string name, int numberOfComponents, int value)</code> - Set an integer uniform variable. <dl class="section pre"><dt>Precondition:</dt><dd>name_exists: name!=0 </dd>
<dd>
value_exists: value!=0 </dd>
<dd>
valid_numberOfComponents: numberOfComponents>=1 && numberOfComponents<=4 </dd></dl>
</li>
<li>
<code>obj.SetUniformf (string name, int numberOfComponents, float value)</code> - Set an float uniform variable. <dl class="section pre"><dt>Precondition:</dt><dd>name_exists: name!=0 </dd>
<dd>
value_exists: value!=0 </dd>
<dd>
valid_numberOfComponents: numberOfComponents>=1 && numberOfComponents<=4 </dd></dl>
</li>
<li>
<code>obj.SetUniformiv (string name, int numberOfComponents, int numberOfElements, int value)</code> - Set an array of integer uniform variables. The array `value' is of size `numberOfElements'*`numberOfComponents.'. <dl class="section pre"><dt>Precondition:</dt><dd>name_exists: name!=0 </dd>
<dd>
value_exists: value!=0 </dd>
<dd>
valid_numberOfComponents: numberOfComponents>=1 && numberOfComponents<=4 </dd>
<dd>
valid_numberOfElements: numberOfElements>=1 </dd></dl>
</li>
<li>
<code>obj.SetUniformfv (string name, int numberOfComponents, int numberOfElements, float value)</code> - Set an array of float uniform variables. The array `value' is of size `numberOfElements'*`numberOfComponents.'. <dl class="section pre"><dt>Precondition:</dt><dd>name_exists: name!=0 </dd>
<dd>
value_exists: value!=0 </dd>
<dd>
valid_numberOfComponents: numberOfComponents>=1 && numberOfComponents<=4 </dd>
<dd>
valid_numberOfElements: numberOfElements>=1 </dd></dl>
</li>
<li>
<code>obj.SetUniformMatrix (string name, int rows, int columns, float value)</code> - Set a matrix uniform variable. <dl class="section pre"><dt>Precondition:</dt><dd>name_exists: name!=0 </dd>
<dd>
value_exists: value!=0 </dd>
<dd>
valid_rows: rows>=2 && rows<=4 </dd>
<dd>
valid_columns: columns>=2 && columns<=4 </dd></dl>
</li>
<li>
<code>obj.RemoveUniform (string name)</code> - Remove uniform `name' from the list. </li>
<li>
<code>obj.RemoveAllUniforms ()</code> - Remove all uniforms from the list. </li>
<li>
<code>obj.Send (string name, int uniformIndex)</code> - <dl class="section pre"><dt>Precondition:</dt><dd>need a valid OpenGL context and a shader program in use. </dd></dl>
</li>
<li>
<code>obj.Start ()</code> - Place the internal cursor on the first uniform. </li>
<li>
<code>bool = obj.IsAtEnd ()</code> - Is the iteration done? </li>
<li>
<code>string = obj.GetCurrentName ()</code> - Name of the uniform at the current cursor position. <dl class="section pre"><dt>Precondition:</dt><dd>not_done: !this->IsAtEnd() </dd></dl>
</li>
<li>
<code>obj.SendCurrentUniform (int uniformIndex)</code> - <dl class="section pre"><dt>Precondition:</dt><dd>need a valid OpenGL context and a shader program in use. </dd>
<dd>
not_done: !this->IsAtEnd() </dd></dl>
</li>
<li>
<code>obj.Next ()</code> - Move the cursor to the next uniform. <dl class="section pre"><dt>Precondition:</dt><dd>not_done: !this->IsAtEnd() </dd></dl>
</li>
<li>
<code>obj.DeepCopy (vtkUniformVariables other)</code> - Copy all the variables from `other'. Any existing variable will be deleted first. <dl class="section pre"><dt>Precondition:</dt><dd>other_exists: other!=0 </dd>
<dd>
not_self: other!=this </dd></dl>
</li>
<li>
<code>obj.Merge (vtkUniformVariables other)</code> - Copy all the variables from `other'. Any existing variable will be overwritten. <dl class="section pre"><dt>Precondition:</dt><dd>other_exists: other!=0 </dd>
<dd>
not_self: other!=this </dd></dl>
</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_vtkrendering.html">Visualization Toolkit Rendering Classes</a></li>
<li class="footer">Generated on Thu Jul 25 2013 17:18:35 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>
|