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
|
<!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: vtkRenderPass</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_vtkrenderpass.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">vtkRenderPass </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>vtkRenderPass is a deferred class with a simple deferred method Render. This method performs a rendering pass of the scene described in vtkRenderState. Subclasses define what really happens during rendering.</p>
<p>Directions to write a subclass of vtkRenderPass: It is up to the subclass to decide if it needs to delegate part of its job to some other vtkRenderPass objects ("delegates").</p>
<ul>
<li>The subclass has to define ivar to set/get its delegates.</li>
<li>The documentation of the subclass has to describe:<ul>
<li>what each delegate is supposed to perform</li>
<li>if a delegate is supposed to be used once or multiple times</li>
<li>what it expects to have in the framebuffer before starting (status of colorbuffers, depth buffer, stencil buffer)</li>
<li>what it will change in the framebuffer.</li>
</ul>
</li>
<li>A pass cannot modify the vtkRenderState where it will perform but it can build a new vtkRenderState (it can change the FrameBuffer, change the prop array, changed the required prop properties keys (usually adding some to a copy of the existing list) but it has to keep the same vtkRenderer object), make it current and pass it to its delegate.</li>
<li>at the end of the execution of Render, the pass has to ensure the current vtkRenderState is the one it has in argument.</li>
</ul>
<p>To create an instance of class vtkRenderPass, simply invoke its constructor as follows </p>
<pre class="fragment"> obj = vtkRenderPass
</pre> <h1><a class="anchor" id="Methods"></a>
Methods</h1>
<p>The class vtkRenderPass 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 vtkRenderPass class. </p>
<ul>
<li>
<code>string = obj.GetClassName ()</code> </li>
<li>
<code>int = obj.IsA (string name)</code> </li>
<li>
<code>vtkRenderPass = obj.NewInstance ()</code> </li>
<li>
<code>vtkRenderPass = obj.SafeDownCast (vtkObject o)</code> </li>
<li>
<code>int = obj.GetNumberOfRenderedProps ()</code> - Number of props rendered at the last Render call. </li>
<li>
<code>obj.ReleaseGraphicsResources (vtkWindow w)</code> - Release graphics resources and ask components to release their own resources. Default implementation is empty. <dl class="section pre"><dt>Precondition:</dt><dd>w_exists: w!=0 </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>
|