<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!-- NewPage --> <html lang="de"> <head> <!-- Generated by javadoc (1.8.0_242-release) on Sun Nov 15 16:26:40 CET 2020 --> <title>Renderer</title> <meta content="2020-11-15" name="date"> <link href="../../../stylesheet.css" rel="stylesheet" title="Style" type="text/css"> <script src="../../../script.js" type="text/javascript"></script> </head> <body> <script type="text/javascript"><!-- try { if (location.href.indexOf('is-external=true') == -1) { parent.document.title="Renderer"; } } catch(err) { } //--> var methods = {"i0":10,"i1":10,"i2":10,"i3":10}; var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; var altColor = "altColor"; var rowColor = "rowColor"; var tableTab = "tableTab"; var activeTableTab = "activeTableTab"; </script> <noscript> <div>JavaScript is disabled on your browser.</div> </noscript> <!-- ========= START OF TOP NAVBAR ======= --> <div class="topNav"><a name="navbar.top"> <!-- --> </a> <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> <a name="navbar.top.firstrow"> <!-- --> </a> <ul class="navList" title="Navigation"> <li><a href="../../../de/hems/trafficsim/package-summary.html">Package</a></li> <li class="navBarCell1Rev">Class</li> <li><a href="package-tree.html">Tree</a></li> <li><a href="../../../deprecated-list.html">Deprecated</a></li> <li><a href="../../../index-files/index-1.html">Index</a></li> <li><a href="../../../help-doc.html">Help</a></li> </ul> </div> <div class="subNav"> <ul class="navList"> <li><a href="../../../de/hems/trafficsim/MainActivity.html" title="class in de.hems.trafficsim"><span class="typeNameLink">Prev Class</span></a> </li> <li><a href="../../../de/hems/trafficsim/TimeRecordView.html" title="class in de.hems.trafficsim"><span class="typeNameLink">Next Class</span></a> </li> </ul> <ul class="navList"> <li><a href="../../../index.html?de/hems/trafficsim/Renderer.html" target="_top">Frames</a> </li> <li><a href="Renderer.html" target="_top">No Frames</a></li> </ul> <ul class="navList" id="allclasses_navbar_top"> <li><a href="../../../allclasses-noframe.html">All Classes</a></li> </ul> <div> <script type="text/javascript"><!-- allClassesLink = document.getElementById("allclasses_navbar_top"); if(window==top) { allClassesLink.style.display = "block"; } else { allClassesLink.style.display = "none"; } //--> </script> </div> <div> <ul class="subNavList"> <li>Summary: </li> <li>Nested | </li> <li><a href="#field.summary">Field</a> | </li> <li><a href="#constructor.summary">Constr</a> | </li> <li><a href="#method.summary">Method</a></li> </ul> <ul class="subNavList"> <li>Detail: </li> <li><a href="#field.detail">Field</a> | </li> <li><a href="#constructor.detail">Constr</a> | </li> <li><a href="#method.detail">Method</a></li> </ul> </div> <a name="skip.navbar.top"> <!-- --> </a></div> <!-- ========= END OF TOP NAVBAR ========= --> <!-- ======== START OF CLASS DATA ======== --> <div class="header"> <div class="subTitle">de.hems.trafficsim</div> <h2 class="title" title="Class Renderer">Class Renderer</h2> </div> <div class="contentContainer"> <ul class="inheritance"> <li>java.lang.Object</li> <li> <ul class="inheritance"> <li>de.hems.trafficsim.Renderer</li> </ul> </li> </ul> <div class="description"> <ul class="blockList"> <li class="blockList"> <hr> <br> <pre>public class <span class="typeNameLabel">Renderer</span> extends java.lang.Object</pre> <div class="block">User interface class rendering the track history on a SurfaceView. </div> </li> </ul> </div> <div class="summary"> <ul class="blockList"> <li class="blockList"> <!-- =========== FIELD SUMMARY =========== --> <ul class="blockList"> <li class="blockList"><a name="field.summary"> <!-- --> </a> <h3>Field Summary</h3> <table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Field Summary table, listing fields, and an explanation"> <caption><span>Fields</span><span class="tabEnd"> </span></caption> <tr> <th class="colFirst" scope="col">Modifier and Type</th> <th class="colLast" scope="col">Field and Description</th> </tr> <tr class="altColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#height">height</a></span></code> <div class="block">height of the surface to draw to</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected android.view.SurfaceHolder</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#holder">holder</a></span></code> <div class="block">holder of the surface the renderer draws to </div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected android.graphics.Paint</code> </td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#paint">paint</a></span></code> <div class="block">Paint instance of the renderer</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#pixelPerLine">pixelPerLine</a></span></code> <div class="block">height of a rectangle representing one vehicle </div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#pixelPerVehicle">pixelPerVehicle</a></span></code> <div class="block">width of a rectangle representing one vehicle </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected float</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#tooShortPerHeight">tooShortPerHeight</a></span></code> <div class="block">amount of pixels per height which are lost by rounding </div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected float</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#tooShortPerTrackLength">tooShortPerTrackLength</a></span></code> <div class="block">amount of pixels per track position which are lost by rounding </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected <a href="../../../de/hems/trafficsim/Track.html" title="class in de.hems.trafficsim">Track</a></code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#track">track</a></span></code> <div class="block">the track to render</div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#width">width</a></span></code> <div class="block">width of the surface to draw to</div> </td> </tr> </table> </li> </ul> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <ul class="blockList"> <li class="blockList"><a name="constructor.summary"> <!-- --> </a> <h3>Constructor Summary</h3> <table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation"> <caption><span>Constructors</span><span class="tabEnd"> </span> </caption> <tr> <th class="colOne" scope="col">Constructor and Description</th> </tr> <tr class="altColor"> <td class="colOne"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#Renderer-de.hems.trafficsim.Track-android.view.SurfaceHolder-">Renderer</a></span>(<a href="../../../de/hems/trafficsim/Track.html" title="class in de.hems.trafficsim">Track</a> track, android.view.SurfaceHolder holder)</code> <div class="block">Constuctor for a Renderer.</div> </td> </tr> </table> </li> </ul> <!-- ========== METHOD SUMMARY =========== --> <ul class="blockList"> <li class="blockList"><a name="method.summary"> <!-- --> </a> <h3>Method Summary</h3> <table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation"> <caption><span class="activeTableTab" id="t0"><span>All Methods</span><span class="tabEnd"> </span></span><span class="tableTab" id="t2"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span class="tableTab" id="t4"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> <tr> <th class="colFirst" scope="col">Modifier and Type</th> <th class="colLast" scope="col">Method and Description</th> </tr> <tr class="altColor" id="i0"> <td class="colFirst"><code>protected void</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#draw--">draw</a></span>()</code> <div class="block">Draws the current state of the track history to the Surface. </div> </td> </tr> <tr class="rowColor" id="i1"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#getColor-float-float-">getColor</a></span>(float curVelocity, float maxVelocity)</code> <div class="block">Utility function which calculates a color from the relation between the current speed of a vehicle and it's maximum speed (from red over yellow to green). </div> </td> </tr> <tr class="altColor" id="i2"> <td class="colFirst"><code>void</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#setSize-int-int-">setSize</a></span>(int width, int height)</code> <div class="block">Updates the dimension information of the renderer. </div> </td> </tr> <tr class="rowColor" id="i3"> <td class="colFirst"><code>void</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../de/hems/trafficsim/Renderer.html#setTrack-de.hems.trafficsim.Track-">setTrack</a></span>(<a href="../../../de/hems/trafficsim/Track.html" title="class in de.hems.trafficsim">Track</a> track)</code> <div class="block">Updates the track of the Surface.</div> </td> </tr> </table> <ul class="blockList"> <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> <!-- --> </a> <h3>Methods inherited from class java.lang.Object</h3> <code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li> </ul> </li> </ul> </li> </ul> </div> <div class="details"> <ul class="blockList"> <li class="blockList"> <!-- ============ FIELD DETAIL =========== --> <ul class="blockList"> <li class="blockList"><a name="field.detail"> <!-- --> </a> <h3>Field Detail</h3> <a name="track"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>track</h4> <pre>protected <a href="../../../de/hems/trafficsim/Track.html" title="class in de.hems.trafficsim">Track</a> track</pre> <div class="block">the track to render</div> </li> </ul> <a name="pixelPerVehicle"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>pixelPerVehicle</h4> <pre>protected int pixelPerVehicle</pre> <div class="block">width of a rectangle representing one vehicle </div> </li> </ul> <a name="pixelPerLine"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>pixelPerLine</h4> <pre>protected int pixelPerLine</pre> <div class="block">height of a rectangle representing one vehicle </div> </li> </ul> <a name="tooShortPerTrackLength"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>tooShortPerTrackLength</h4> <pre>protected float tooShortPerTrackLength</pre> <div class="block">amount of pixels per track position which are lost by rounding </div> </li> </ul> <a name="tooShortPerHeight"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>tooShortPerHeight</h4> <pre>protected float tooShortPerHeight</pre> <div class="block">amount of pixels per height which are lost by rounding </div> </li> </ul> <a name="paint"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>paint</h4> <pre>protected android.graphics.Paint paint</pre> <div class="block">Paint instance of the renderer</div> </li> </ul> <a name="holder"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>holder</h4> <pre>protected android.view.SurfaceHolder holder</pre> <div class="block">holder of the surface the renderer draws to</div> </li> </ul> <a name="width"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>width</h4> <pre>protected int width</pre> <div class="block">width of the surface to draw to</div> </li> </ul> <a name="height"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>height</h4> <pre>protected int height</pre> <div class="block">height of the surface to draw to</div> </li> </ul> </li> </ul> <!-- ========= CONSTRUCTOR DETAIL ======== --> <ul class="blockList"> <li class="blockList"><a name="constructor.detail"> <!-- --> </a> <h3>Constructor Detail</h3> <a name="Renderer-de.hems.trafficsim.Track-android.view.SurfaceHolder-"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>Renderer</h4> <pre>public Renderer(<a href="../../../de/hems/trafficsim/Track.html" title="class in de.hems.trafficsim">Track</a> track, android.view.SurfaceHolder holder)</pre> <div class="block">Constuctor for a Renderer.</div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>track</code> - the track to render</dd> <dd><code>holder</code> - the holder of the surface to draw to </dd> </dl> </li> </ul> </li> </ul> <!-- ============ METHOD DETAIL ========== --> <ul class="blockList"> <li class="blockList"><a name="method.detail"> <!-- --> </a> <h3>Method Detail</h3> <a name="setSize-int-int-"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setSize</h4> <pre>public void setSize(int width, int height)</pre> <div class="block">Updates the dimension information of the renderer. </div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>width</code> - the width of the SurfaceView</dd> <dd><code>height</code> - the height of the SurfaceView</dd> </dl> </li> </ul> <a name="setTrack-de.hems.trafficsim.Track-"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setTrack</h4> <pre>public void setTrack(<a href="../../../de/hems/trafficsim/Track.html" title="class in de.hems.trafficsim">Track</a> track)</pre> <div class="block">Updates the track of the Surface.</div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>track</code> - the new track to render</dd> </dl> </li> </ul> <a name="getColor-float-float-"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getColor</h4> <pre>protected int getColor(float curVelocity, float maxVelocity)</pre> <div class="block">Utility function which calculates a color from the relation between the current speed of a vehicle and it's maximum speed (from red over yellow to green). </div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>curVelocity</code> - current velocity of the vehicle </dd> <dd><code>maxVelocity</code> - maximum velocity of the vehilce </dd> <dt><span class="returnLabel">Returns:</span></dt> <dd>color encoded as Android color integer</dd> </dl> </li> </ul> <a name="draw--"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>draw</h4> <pre>protected void draw()</pre> <div class="block">Draws the current state of the track history to the Surface. </div> </li> </ul> </li> </ul> </li> </ul> </div> </div> <!-- ========= END OF CLASS DATA ========= --> <!-- ======= START OF BOTTOM NAVBAR ====== --> <div class="bottomNav"><a name="navbar.bottom"> <!-- --> </a> <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> <a name="navbar.bottom.firstrow"> <!-- --> </a> <ul class="navList" title="Navigation"> <li><a href="../../../de/hems/trafficsim/package-summary.html">Package</a></li> <li class="navBarCell1Rev">Class</li> <li><a href="package-tree.html">Tree</a></li> <li><a href="../../../deprecated-list.html">Deprecated</a></li> <li><a href="../../../index-files/index-1.html">Index</a></li> <li><a href="../../../help-doc.html">Help</a></li> </ul> </div> <div class="subNav"> <ul class="navList"> <li><a href="../../../de/hems/trafficsim/MainActivity.html" title="class in de.hems.trafficsim"><span class="typeNameLink">Prev Class</span></a> </li> <li><a href="../../../de/hems/trafficsim/TimeRecordView.html" title="class in de.hems.trafficsim"><span class="typeNameLink">Next Class</span></a> </li> </ul> <ul class="navList"> <li><a href="../../../index.html?de/hems/trafficsim/Renderer.html" target="_top">Frames</a> </li> <li><a href="Renderer.html" target="_top">No Frames</a></li> </ul> <ul class="navList" id="allclasses_navbar_bottom"> <li><a href="../../../allclasses-noframe.html">All Classes</a></li> </ul> <div> <script type="text/javascript"><!-- allClassesLink = document.getElementById("allclasses_navbar_bottom"); if(window==top) { allClassesLink.style.display = "block"; } else { allClassesLink.style.display = "none"; } //--> </script> </div> <div> <ul class="subNavList"> <li>Summary: </li> <li>Nested | </li> <li><a href="#field.summary">Field</a> | </li> <li><a href="#constructor.summary">Constr</a> | </li> <li><a href="#method.summary">Method</a></li> </ul> <ul class="subNavList"> <li>Detail: </li> <li><a href="#field.detail">Field</a> | </li> <li><a href="#constructor.detail">Constr</a> | </li> <li><a href="#method.detail">Method</a></li> </ul> </div> <a name="skip.navbar.bottom"> <!-- --> </a></div> <!-- ======== END OF BOTTOM NAVBAR ======= --> </body> </html>