Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 204 | chris | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" |
| 2 | "http://www.w3.org/TR/1998/REC-html40-19980424/loose.dtd"> |
||
| 3 | <html><head> |
||
| 4 | <title>gsub_lite</title> |
||
| 5 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
||
| 6 | <meta name="generator" content="HeaderDoc"> |
||
| 7 | <style type="text/css"><!--a:link {text-decoration: none; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: small; color: #0000ff;}a:visited {text-decoration: none; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: small; color: #0000ff;}a:visited:hover {text-decoration: underline; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: small; color: #ff6600;}a:active {text-decoration: none; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: small; color: #ff6600;}a:hover {text-decoration: underline; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: small; color: #ff6600;}h4 {text-decoration: none; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: tiny; font-weight: bold;}body {text-decoration: none; font-family: lucida grande, geneva, helvetica, arial, sans-serif; font-size: 10pt;}--></style></head><body bgcolor="#ffffff"> |
||
| 8 | <h1><font face="Geneva,Arial,Helvtica">gsub_lite</font></h1><br> |
||
| 9 | <a name="//apple_ref/doc/header/gsub_lite.h" title="gsub_lite"></a> |
||
| 10 | <h2>Abstract</h2> |
||
| 11 | A collection of useful OpenGL routines for ARToolKit. |
||
| 12 | <h2>Discussion</h2> |
||
| 13 | Sample code for example usage of gsub_lite is included with |
||
| 14 | ARToolKit, in the directory <AR/examples/simpleLite>. |
||
| 15 | <br><br> |
||
| 16 | gsub_lite is the preferred means for drawing camera video |
||
| 17 | images acquired from ARToolKit's video libraries. It includes |
||
| 18 | optimized texture handling, and a variety of flexible drawing |
||
| 19 | options. |
||
| 20 | <br><br> |
||
| 21 | gsub_lite also provides utility functions for setting the |
||
| 22 | OpenGL viewing frustum and camera position based on ARToolKit- |
||
| 23 | camera parameters and marker positions. |
||
| 24 | <br><br> |
||
| 25 | gsub_lite does not depend on GLUT, or indeed, any particular |
||
| 26 | window or event handling system. It is therefore well suited |
||
| 27 | to use in applications which have their own window and event |
||
| 28 | handling code. |
||
| 29 | <br><br> |
||
| 30 | gsub_lite v2.7 is intended as a replacement for gsub from |
||
| 31 | ARToolKit 2.65, by Mark Billinghurst (MB) & Hirokazu Kato (HK), |
||
| 32 | with the following additional functionality: |
||
| 33 | <ul> |
||
| 34 | <li> Support for true stereo and multiple displays through removal |
||
| 35 | of most dependencies on global variables. |
||
| 36 | <li> Prepared library for thread-safety by removing global variables. |
||
| 37 | <li> Optimised texturing, particularly for Mac OS X platform. |
||
| 38 | <li> Added arglCameraFrustum to replace argDraw3dCamera() function. |
||
| 39 | <li> Renamed argConvGlpara() to arglCameraView() to more accurately |
||
| 40 | represent its functionality. |
||
| 41 | <li> Correctly handle textures with non-RGBA handling. |
||
| 42 | <li> Library setup and cleanup functions. |
||
| 43 | <li> Version numbering. |
||
| 44 | </ul> |
||
| 45 | It does however lack the following functionality from the original gsub |
||
| 46 | library: |
||
| 47 | <ul> |
||
| 48 | <li> GLUT event handling. |
||
| 49 | <li> Sub-window ("MINIWIN") and half-size drawing. |
||
| 50 | <li> HMD support for stereo via stencil. |
||
| 51 | </ul> |
||
| 52 | <br><br> |
||
| 53 | This file is part of ARToolKit. |
||
| 54 | <br><br> |
||
| 55 | ARToolKit is free software; you can redistribute it and/or modify |
||
| 56 | it under the terms of the GNU General Public License as published by |
||
| 57 | the Free Software Foundation; either version 2 of the License, or |
||
| 58 | (at your option) any later version. |
||
| 59 | <br><br> |
||
| 60 | ARToolKit is distributed in the hope that it will be useful, |
||
| 61 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
| 62 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
| 63 | GNU General Public License for more details. |
||
| 64 | <br><br> |
||
| 65 | You should have received a copy of the GNU General Public License |
||
| 66 | along with ARToolKit; if not, write to the Free Software |
||
| 67 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
||
| 68 | <br><br> |
||
| 69 | <hr><br><h2>Functions</h2> |
||
| 70 | <a name="HeaderDoc_functions"></a> |
||
| 71 | <dl> |
||
| 72 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglCameraFrustum" target="_top">arglCameraFrustum</a></tt></dt> |
||
| 73 | <dd>Create an OpenGL perspective projection matrix. |
||
| 74 | </dd> |
||
| 75 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglCameraFrustumRH" target="_top">arglCameraFrustumRH</a></tt></dt> |
||
| 76 | <dd>(description) |
||
| 77 | </dd> |
||
| 78 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglCameraView" target="_top">arglCameraView</a></tt></dt> |
||
| 79 | <dd>Create an OpenGL viewing transformation matrix. |
||
| 80 | </dd> |
||
| 81 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglCameraViewRH" target="_top">arglCameraViewRH</a></tt></dt> |
||
| 82 | <dd>(description) |
||
| 83 | </dd> |
||
| 84 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglCleanup" target="_top">arglCleanup</a></tt></dt> |
||
| 85 | <dd>Free memory used by gsub_lite associated with the specified context. |
||
| 86 | </dd> |
||
| 87 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglDispImage" target="_top">arglDispImage</a></tt></dt> |
||
| 88 | <dd>Display an ARVideo image, by drawing it using OpenGL. |
||
| 89 | </dd> |
||
| 90 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglDispImageStateful" target="_top">arglDispImageStateful</a></tt></dt> |
||
| 91 | <dd>Display an ARVideo image, by drawing it using OpenGL, using and modifying current OpenGL state. |
||
| 92 | </dd> |
||
| 93 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglDistortionCompensationGet" target="_top">arglDistortionCompensationGet</a></tt></dt> |
||
| 94 | <dd>Enquire as to the enable state of camera lens distortion compensation in arglDispImage. |
||
| 95 | </dd> |
||
| 96 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglDistortionCompensationSet" target="_top">arglDistortionCompensationSet</a></tt></dt> |
||
| 97 | <dd>Set compensation for camera lens distortion in arglDispImage to off or on. |
||
| 98 | </dd> |
||
| 99 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglDrawModeGet" target="_top">arglDrawModeGet</a></tt></dt> |
||
| 100 | <dd>Get method by which arglDispImage() is transfering pixels. |
||
| 101 | </dd> |
||
| 102 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglDrawModeSet" target="_top">arglDrawModeSet</a></tt></dt> |
||
| 103 | <dd>Set method by which arglDispImage() will transfer pixels. |
||
| 104 | </dd> |
||
| 105 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglPixelFormatGet" target="_top">arglPixelFormatGet</a></tt></dt> |
||
| 106 | <dd>Get the format of pixel data in which arglDispImage*() is expecting data to be passed. |
||
| 107 | </dd> |
||
| 108 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglPixelFormatSet" target="_top">arglPixelFormatSet</a></tt></dt> |
||
| 109 | <dd>Set the format of pixel data which will be passed to arglDispImage*() |
||
| 110 | </dd> |
||
| 111 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglSetupForCurrentContext" target="_top">arglSetupForCurrentContext</a></tt></dt> |
||
| 112 | <dd>Initialise the gsub_lite library for the current OpenGL context. |
||
| 113 | </dd> |
||
| 114 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglTexmapModeGet" target="_top">arglTexmapModeGet</a></tt></dt> |
||
| 115 | <dd>Enquire whether full or half-resolution TexImage2D pixel-transfer is being used in arglDispImage(). |
||
| 116 | </dd> |
||
| 117 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglTexmapModeSet" target="_top">arglTexmapModeSet</a></tt></dt> |
||
| 118 | <dd>Determines use of full or half-resolution TexImage2D pixel-transfer in arglDispImage(). |
||
| 119 | </dd> |
||
| 120 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglTexRectangleGet" target="_top">arglTexRectangleGet</a></tt></dt> |
||
| 121 | <dd>Enquire as to use of rectangular TexImage2D pixel-transfer in arglDispImage(). |
||
| 122 | </dd> |
||
| 123 | <dt><tt><a href="CompositePage.html#//apple_ref/doc/compositePage/c/func/arglTexRectangleSet" target="_top">arglTexRectangleSet</a></tt></dt> |
||
| 124 | <dd>Determines use of rectangular TexImage2D pixel-transfer in arglDispImage(). |
||
| 125 | </dd> |
||
| 126 | </dl> |
||
| 127 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglCameraFrustum; name=arglCameraFrustum --> |
||
| 128 | <a name="//apple_ref/doc/compositePage/c/func/arglCameraFrustum"></a> |
||
| 129 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglCameraFrustum">arglCameraFrustum</a></h3> |
||
| 130 | </td></tr></table><hr><dl></dl><p>Create an OpenGL perspective projection matrix. |
||
| 131 | </p> |
||
| 132 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglCameraFrustum //apple_ref/c/clm/arglCameraFrustum //apple_ref/c/intfcm/arglCameraFrustum //apple_ref/c/func/arglCameraFrustum //apple_ref/c/ftmplt/arglCameraFrustum //apple_ref/c/defn/arglCameraFrustum //apple_ref/c/macro/arglCameraFrustum" --><font class="function">arglCameraFrustum</font><!-- /a -->( |
||
| 133 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/ARParam //apple_ref/c/cl/ARParam //apple_ref/c/tdef/ARParam //apple_ref/c/tag/ARParam //apple_ref/c/econst/ARParam //apple_ref/c/struct/ARParam //apple_ref/c/clconst/ARParam" --><font class="type">ARParam</font><!-- /a --> *<font class="param">cparam</font>, |
||
| 134 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">focalmin</font>, |
||
| 135 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">focalmax</font>, |
||
| 136 | <!-- a logicalPath="//apple_ref/c/cl/GLdouble //apple_ref/c/cl/GLdouble //apple_ref/c/tdef/GLdouble //apple_ref/c/tag/GLdouble //apple_ref/c/econst/GLdouble //apple_ref/c/struct/GLdouble //apple_ref/c/clconst/GLdouble" --><font class="type">GLdouble</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/cl/m_projection //apple_ref/c/cl/m_projection //apple_ref/c/tdef/m_projection //apple_ref/c/tag/m_projection //apple_ref/c/econst/m_projection //apple_ref/c/struct/m_projection //apple_ref/c/clconst/m_projection" --><font class="type">m_projection</font><!-- /a -->[<font class="number">16</font>]); </pre></blockquote> |
||
| 137 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 138 | <blockquote> |
||
| 139 | <dl> |
||
| 140 | <dt><code><i>cparam</i></code></dt><dd>Pointer to a set of ARToolKit camera parameters for the |
||
| 141 | current video source.</dd> |
||
| 142 | <dt><code><i>focalmax</i></code></dt><dd>The maximum distance at which geometry will be rendered. |
||
| 143 | Any geometry further away from the camera than this distance will be clipped |
||
| 144 | and will not be appear in a rendered frame. Thus, this value should be |
||
| 145 | set high enough to avoid clipping of any geometry you care about. However, |
||
| 146 | the precision of the depth buffer is correlated with the ratio of focalmin |
||
| 147 | to focalmax, thus you should not set focalmax any higher than it needs to be. |
||
| 148 | This value should be specified in the same units as your OpenGL drawing.</dd> |
||
| 149 | <dt><code><i>focalmin</i></code></dt><dd>The minimum distance at which geometry will be rendered. |
||
| 150 | Any geometry closer to the camera than this distance will be clipped |
||
| 151 | and will not be appear in a rendered frame. Thus, this value should be |
||
| 152 | set low enough to avoid clipping of any geometry you care about. However, |
||
| 153 | the precision of the depth buffer is correlated with the ratio of focalmin |
||
| 154 | to focalmax, thus you should not set focalmin any lower than it needs to be. |
||
| 155 | Additionally, geometry viewed in a stereo projections that is too close to |
||
| 156 | camera is difficult and tiring to view, so if you are rendering stereo |
||
| 157 | perspectives you should set this value no lower than the near-point of |
||
| 158 | the eyes. The near point in humans varies, but usually lies between 0.1 m |
||
| 159 | 0.3 m. This value should be specified in the same units as your OpenGL drawing.</li></ol></dd> |
||
| 160 | <dt><code><i>m_projection</i></code></dt><dd>Pointer to a array of 16 GLdoubles, which will be filled |
||
| 161 | out with a projection matrix suitable for passing to OpenGL. The matrix |
||
| 162 | is specified in column major order.</dd> |
||
| 163 | </dl> |
||
| 164 | </blockquote> |
||
| 165 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>Use this function to create a matrix suitable for passing to OpenGL |
||
| 166 | to set the viewing projection. |
||
| 167 | </p> |
||
| 168 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68. |
||
| 169 | </dd> |
||
| 170 | </dl> |
||
| 171 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglCameraFrustumRH; name=arglCameraFrustumRH --> |
||
| 172 | <a name="//apple_ref/doc/compositePage/c/func/arglCameraFrustumRH"></a> |
||
| 173 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglCameraFrustumRH">arglCameraFrustumRH</a></h3> |
||
| 174 | </td></tr></table><hr><dl></dl><p>(description) |
||
| 175 | </p> |
||
| 176 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglCameraFrustumRH //apple_ref/c/clm/arglCameraFrustumRH //apple_ref/c/intfcm/arglCameraFrustumRH //apple_ref/c/func/arglCameraFrustumRH //apple_ref/c/ftmplt/arglCameraFrustumRH //apple_ref/c/defn/arglCameraFrustumRH //apple_ref/c/macro/arglCameraFrustumRH" --><font class="function">arglCameraFrustumRH</font><!-- /a -->( |
||
| 177 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/ARParam //apple_ref/c/cl/ARParam //apple_ref/c/tdef/ARParam //apple_ref/c/tag/ARParam //apple_ref/c/econst/ARParam //apple_ref/c/struct/ARParam //apple_ref/c/clconst/ARParam" --><font class="type">ARParam</font><!-- /a --> *<font class="param">cparam</font>, |
||
| 178 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">focalmin</font>, |
||
| 179 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">focalmax</font>, |
||
| 180 | <!-- a logicalPath="//apple_ref/c/cl/GLdouble //apple_ref/c/cl/GLdouble //apple_ref/c/tdef/GLdouble //apple_ref/c/tag/GLdouble //apple_ref/c/econst/GLdouble //apple_ref/c/struct/GLdouble //apple_ref/c/clconst/GLdouble" --><font class="type">GLdouble</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/cl/m_projection //apple_ref/c/cl/m_projection //apple_ref/c/tdef/m_projection //apple_ref/c/tag/m_projection //apple_ref/c/econst/m_projection //apple_ref/c/struct/m_projection //apple_ref/c/clconst/m_projection" --><font class="type">m_projection</font><!-- /a -->[<font class="number">16</font>]); </pre></blockquote> |
||
| 181 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 182 | <blockquote> |
||
| 183 | <dl> |
||
| 184 | <dt><code><i>(name)</i></code></dt><dd>(description)</dd> |
||
| 185 | </dl> |
||
| 186 | </blockquote> |
||
| 187 | <dl><dt><i>function result</i></dt><dd>(description) |
||
| 188 | </dd> |
||
| 189 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>(description) |
||
| 190 | </p> |
||
| 191 | </dl> |
||
| 192 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglCameraView; name=arglCameraView --> |
||
| 193 | <a name="//apple_ref/doc/compositePage/c/func/arglCameraView"></a> |
||
| 194 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglCameraView">arglCameraView</a></h3> |
||
| 195 | </td></tr></table><hr><dl></dl><p>Create an OpenGL viewing transformation matrix. |
||
| 196 | </p> |
||
| 197 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglCameraView //apple_ref/c/clm/arglCameraView //apple_ref/c/intfcm/arglCameraView //apple_ref/c/func/arglCameraView //apple_ref/c/ftmplt/arglCameraView //apple_ref/c/defn/arglCameraView //apple_ref/c/macro/arglCameraView" --><font class="function">arglCameraView</font><!-- /a -->( |
||
| 198 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/cl/para //apple_ref/c/cl/para //apple_ref/c/tdef/para //apple_ref/c/tag/para //apple_ref/c/econst/para //apple_ref/c/struct/para //apple_ref/c/clconst/para" --><font class="type">para</font><!-- /a -->[<font class="number">3</font>][<font class="number">4</font>], |
||
| 199 | <!-- a logicalPath="//apple_ref/c/cl/GLdouble //apple_ref/c/cl/GLdouble //apple_ref/c/tdef/GLdouble //apple_ref/c/tag/GLdouble //apple_ref/c/econst/GLdouble //apple_ref/c/struct/GLdouble //apple_ref/c/clconst/GLdouble" --><font class="type">GLdouble</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/cl/m_modelview //apple_ref/c/cl/m_modelview //apple_ref/c/tdef/m_modelview //apple_ref/c/tag/m_modelview //apple_ref/c/econst/m_modelview //apple_ref/c/struct/m_modelview //apple_ref/c/clconst/m_modelview" --><font class="type">m_modelview</font><!-- /a -->[<font class="number">16</font>], |
||
| 200 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">scale</font>); </pre></blockquote> |
||
| 201 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 202 | <blockquote> |
||
| 203 | <dl> |
||
| 204 | <dt><code><i>para</i></code></dt><dd>Pointer to 3x4 matrix array of doubles which specify the |
||
| 205 | position of an ARToolKit marker, as returned by arGetTransMat().</dd> |
||
| 206 | <dt><code><i>m_modelview</i></code></dt><dd>Pointer to a array of 16 GLdoubles, which will be filled |
||
| 207 | out with a modelview matrix suitable for passing to OpenGL. The matrix |
||
| 208 | is specified in column major order.</dd> |
||
| 209 | <dt><code><i>scale</i></code></dt><dd>Specifies a scaling between ARToolKit's |
||
| 210 | units (usually millimeters) and OpenGL's coordinate system units. |
||
| 211 | What you pass for the scalefactor parameter depends on what units you |
||
| 212 | want to do your OpenGL drawing in. If you use a scalefactor of 1.0, then<br> |
||
| 213 | To use different OpenGL units, e.g. metres, then you would pass 0.001.</li></ol></dd> |
||
| 214 | </dl> |
||
| 215 | </blockquote> |
||
| 216 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>Use this function to create a matrix suitable for passing to OpenGL |
||
| 217 | to set the viewing transformation of the virtual camera. |
||
| 218 | </p> |
||
| 219 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68. |
||
| 220 | </dd> |
||
| 221 | </dl> |
||
| 222 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglCameraViewRH; name=arglCameraViewRH --> |
||
| 223 | <a name="//apple_ref/doc/compositePage/c/func/arglCameraViewRH"></a> |
||
| 224 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglCameraViewRH">arglCameraViewRH</a></h3> |
||
| 225 | </td></tr></table><hr><dl></dl><p>(description) |
||
| 226 | </p> |
||
| 227 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglCameraViewRH //apple_ref/c/clm/arglCameraViewRH //apple_ref/c/intfcm/arglCameraViewRH //apple_ref/c/func/arglCameraViewRH //apple_ref/c/ftmplt/arglCameraViewRH //apple_ref/c/defn/arglCameraViewRH //apple_ref/c/macro/arglCameraViewRH" --><font class="function">arglCameraViewRH</font><!-- /a -->( |
||
| 228 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/cl/para //apple_ref/c/cl/para //apple_ref/c/tdef/para //apple_ref/c/tag/para //apple_ref/c/econst/para //apple_ref/c/struct/para //apple_ref/c/clconst/para" --><font class="type">para</font><!-- /a -->[<font class="number">3</font>][<font class="number">4</font>], |
||
| 229 | <!-- a logicalPath="//apple_ref/c/cl/GLdouble //apple_ref/c/cl/GLdouble //apple_ref/c/tdef/GLdouble //apple_ref/c/tag/GLdouble //apple_ref/c/econst/GLdouble //apple_ref/c/struct/GLdouble //apple_ref/c/clconst/GLdouble" --><font class="type">GLdouble</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/cl/m_modelview //apple_ref/c/cl/m_modelview //apple_ref/c/tdef/m_modelview //apple_ref/c/tag/m_modelview //apple_ref/c/econst/m_modelview //apple_ref/c/struct/m_modelview //apple_ref/c/clconst/m_modelview" --><font class="type">m_modelview</font><!-- /a -->[<font class="number">16</font>], |
||
| 230 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">scale</font>); </pre></blockquote> |
||
| 231 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 232 | <blockquote> |
||
| 233 | <dl> |
||
| 234 | <dt><code><i>(name)</i></code></dt><dd>(description)</dd> |
||
| 235 | </dl> |
||
| 236 | </blockquote> |
||
| 237 | <dl><dt><i>function result</i></dt><dd>(description) |
||
| 238 | </dd> |
||
| 239 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>(description) |
||
| 240 | </p> |
||
| 241 | </dl> |
||
| 242 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglCleanup; name=arglCleanup --> |
||
| 243 | <a name="//apple_ref/doc/compositePage/c/func/arglCleanup"></a> |
||
| 244 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglCleanup">arglCleanup</a></h3> |
||
| 245 | </td></tr></table><hr><dl></dl><p>Free memory used by gsub_lite associated with the specified context. |
||
| 246 | </p> |
||
| 247 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglCleanup //apple_ref/c/clm/arglCleanup //apple_ref/c/intfcm/arglCleanup //apple_ref/c/func/arglCleanup //apple_ref/c/ftmplt/arglCleanup //apple_ref/c/defn/arglCleanup //apple_ref/c/macro/arglCleanup" --><font class="function">arglCleanup</font><!-- /a -->( |
||
| 248 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>); </pre></blockquote> |
||
| 249 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 250 | <blockquote> |
||
| 251 | <dl> |
||
| 252 | <dt><code><i>contextSettings</i></code></dt><dd>A reference to ARGL's settings for an OpenGL |
||
| 253 | context, as returned by arglSetupForCurrentContext().</dd> |
||
| 254 | </dl> |
||
| 255 | </blockquote> |
||
| 256 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>Should be called after no more argl* functions are needed, in order |
||
| 257 | to prevent memory leaks etc. |
||
| 258 | <br><br> |
||
| 259 | The library can be setup again for the context at a later time by calling |
||
| 260 | arglSetupForCurrentContext() again. |
||
| 261 | </p> |
||
| 262 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68. |
||
| 263 | </dd> |
||
| 264 | </dl> |
||
| 265 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglDispImage; name=arglDispImage --> |
||
| 266 | <a name="//apple_ref/doc/compositePage/c/func/arglDispImage"></a> |
||
| 267 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglDispImage">arglDispImage</a></h3> |
||
| 268 | </td></tr></table><hr><dl></dl><p>Display an ARVideo image, by drawing it using OpenGL. |
||
| 269 | </p> |
||
| 270 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglDispImage //apple_ref/c/clm/arglDispImage //apple_ref/c/intfcm/arglDispImage //apple_ref/c/func/arglDispImage //apple_ref/c/ftmplt/arglDispImage //apple_ref/c/defn/arglDispImage //apple_ref/c/macro/arglDispImage" --><font class="function">arglDispImage</font><!-- /a -->( |
||
| 271 | <!-- a logicalPath="//apple_ref/c/cl/ARUint8 //apple_ref/c/cl/ARUint8 //apple_ref/c/tdef/ARUint8 //apple_ref/c/tag/ARUint8 //apple_ref/c/econst/ARUint8 //apple_ref/c/struct/ARUint8 //apple_ref/c/clconst/ARUint8" --><font class="type">ARUint8</font><!-- /a --> *<font class="param">image</font>, |
||
| 272 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/ARParam //apple_ref/c/cl/ARParam //apple_ref/c/tdef/ARParam //apple_ref/c/tag/ARParam //apple_ref/c/econst/ARParam //apple_ref/c/struct/ARParam //apple_ref/c/clconst/ARParam" --><font class="type">ARParam</font><!-- /a --> *<font class="param">cparam</font>, |
||
| 273 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">zoom</font>, |
||
| 274 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>); </pre></blockquote> |
||
| 275 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 276 | <blockquote> |
||
| 277 | <dl> |
||
| 278 | <dt><code><i>image</i></code></dt><dd>Pointer to the tightly-packed image data (as returned by |
||
| 279 | arVideoGetImage()). The horizontal and vertical dimensions of the image |
||
| 280 | data must exactly match the values specified in the fields cparam->xsize |
||
| 281 | and cparam->ysize (see below). |
||
| 282 | <br><br> |
||
| 283 | The first byte of image data corresponds to the first component of the |
||
| 284 | top-left-most pixel in the image. The data continues with the remaining |
||
| 285 | pixels of the first row, followed immediately by the pixels of the second |
||
| 286 | row, and so on to the last byte of the image data, which corresponds to |
||
| 287 | the last component of the bottom-right-most pixel.</dd> |
||
| 288 | <dt><code><i>cparam</i></code></dt><dd>Pointer to a set of ARToolKit camera parameters for the |
||
| 289 | current video source. The size of the source image is taken from the |
||
| 290 | fields xsize and ysize of the ARParam structure pointed to. Also, when |
||
| 291 | the draw mode is AR_DRAW_BY_TEXTURE_MAPPING (see the documentation for |
||
| 292 | the global variable arglDrawMode) the field dist_factor of the ARParam |
||
| 293 | structure pointed to will be taken as the amount to un-warp the supplied |
||
| 294 | image.</dd> |
||
| 295 | <dt><code><i>zoom</i></code></dt><dd>The amount to scale the video image up or down. To draw the video |
||
| 296 | image double size, use a zoom value of 2.0. To draw the video image |
||
| 297 | half size use a zoom value of 0.5.</dd> |
||
| 298 | <dt><code><i>contextSettings</i></code></dt><dd>A reference to ARGL's settings for the current OpenGL |
||
| 299 | context, as returned by arglSetupForCurrentContext() for this context. It |
||
| 300 | is the callers responsibility to make sure that the current context at the |
||
| 301 | time arglDisplayImage() is called matches that under which contextSettings |
||
| 302 | was created.</dd> |
||
| 303 | </dl> |
||
| 304 | </blockquote> |
||
| 305 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>This function draws an image from an ARVideo source to the current |
||
| 306 | OpenGL context. This operation is most useful in video see-through |
||
| 307 | augmented reality applications for drawing the camera view as a |
||
| 308 | background image, but can also be used in other ways. |
||
| 309 | <br><br> |
||
| 310 | An undistorted image is drawn with the lower-left corner of the |
||
| 311 | bottom-left-most pixel at OpenGL screen coordinates (0,0), and the |
||
| 312 | upper-right corner of the top-right-most pixel at OpenGL screen |
||
| 313 | coodinates (x * zoom, y * zoom), where x and y are the values of the |
||
| 314 | fields cparam->xsize and cparam->ysize (see below) and zoom is the |
||
| 315 | value of the parameter zoom (also see below). If cparam->dist_factor |
||
| 316 | indicates that an un-warping correction should be applied, the actual |
||
| 317 | coordinates will differ from the values specified here. |
||
| 318 | <br><br> |
||
| 319 | OpenGL state: Drawing is performed with depth testing and lighting |
||
| 320 | disabled, and thus leaves the the depth buffer (if any) unmodified. If |
||
| 321 | pixel transfer is by texturing (see documentation for arglDrawMode), |
||
| 322 | the drawing is done in replacement texture environment mode. |
||
| 323 | The depth test enable and lighting enable state and the texture |
||
| 324 | environment mode are restored before the function returns. |
||
| 325 | </p> |
||
| 326 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68. |
||
| 327 | </dd> |
||
| 328 | </dl> |
||
| 329 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglDispImageStateful; name=arglDispImageStateful --> |
||
| 330 | <a name="//apple_ref/doc/compositePage/c/func/arglDispImageStateful"></a> |
||
| 331 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglDispImageStateful">arglDispImageStateful</a></h3> |
||
| 332 | </td></tr></table><hr><dl></dl><p>Display an ARVideo image, by drawing it using OpenGL, using and modifying current OpenGL state. |
||
| 333 | </p> |
||
| 334 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglDispImageStateful //apple_ref/c/clm/arglDispImageStateful //apple_ref/c/intfcm/arglDispImageStateful //apple_ref/c/func/arglDispImageStateful //apple_ref/c/ftmplt/arglDispImageStateful //apple_ref/c/defn/arglDispImageStateful //apple_ref/c/macro/arglDispImageStateful" --><font class="function">arglDispImageStateful</font><!-- /a -->( |
||
| 335 | <!-- a logicalPath="//apple_ref/c/cl/ARUint8 //apple_ref/c/cl/ARUint8 //apple_ref/c/tdef/ARUint8 //apple_ref/c/tag/ARUint8 //apple_ref/c/econst/ARUint8 //apple_ref/c/struct/ARUint8 //apple_ref/c/clconst/ARUint8" --><font class="type">ARUint8</font><!-- /a --> *<font class="param">image</font>, |
||
| 336 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/ARParam //apple_ref/c/cl/ARParam //apple_ref/c/tdef/ARParam //apple_ref/c/tag/ARParam //apple_ref/c/econst/ARParam //apple_ref/c/struct/ARParam //apple_ref/c/clconst/ARParam" --><font class="type">ARParam</font><!-- /a --> *<font class="param">cparam</font>, |
||
| 337 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/double //apple_ref/c/cl/double //apple_ref/c/tdef/double //apple_ref/c/tag/double //apple_ref/c/econst/double //apple_ref/c/struct/double //apple_ref/c/clconst/double" --><font class="type">double</font><!-- /a --> <font class="param">zoom</font>, |
||
| 338 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>); </pre></blockquote> |
||
| 339 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>This function is identical to arglDispImage except that whereas |
||
| 340 | arglDispImage sets an orthographic 2D projection and the OpenGL state |
||
| 341 | prior to drawing, this function does not. It also does not restore any |
||
| 342 | changes made to OpenGL state. |
||
| 343 | <br><br> |
||
| 344 | This allows you to do effects with your image, other than just drawing it |
||
| 345 | 2D and with the lower-left corner of the bottom-left-most pixel attached |
||
| 346 | to the bottom-left (0,0) of the window. For example, you might use a |
||
| 347 | perspective projection instead of an orthographic projection with a |
||
| 348 | glLoadIdentity() / glTranslate() on the modelview matrix to place the |
||
| 349 | lower-left corner of the bottom-left-most pixel somewhere other than 0,0 |
||
| 350 | and leave depth-testing enabled. |
||
| 351 | <br><br> |
||
| 352 | See the documentation for arglDispImage() for more information. |
||
| 353 | </p> |
||
| 354 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68.2. |
||
| 355 | </dd> |
||
| 356 | </dl> |
||
| 357 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglDistortionCompensationGet; name=arglDistortionCompensationGet --> |
||
| 358 | <a name="//apple_ref/doc/compositePage/c/func/arglDistortionCompensationGet"></a> |
||
| 359 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglDistortionCompensationGet">arglDistortionCompensationGet</a></h3> |
||
| 360 | </td></tr></table><hr><dl></dl><p>Enquire as to the enable state of camera lens distortion compensation in arglDispImage. |
||
| 361 | </p> |
||
| 362 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglDistortionCompensationGet //apple_ref/c/clm/arglDistortionCompensationGet //apple_ref/c/intfcm/arglDistortionCompensationGet //apple_ref/c/func/arglDistortionCompensationGet //apple_ref/c/ftmplt/arglDistortionCompensationGet //apple_ref/c/defn/arglDistortionCompensationGet //apple_ref/c/macro/arglDistortionCompensationGet" --><font class="function">arglDistortionCompensationGet</font><!-- /a -->( |
||
| 363 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 364 | <!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> *<font class="param">enable</font>); </pre></blockquote> |
||
| 365 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 366 | <blockquote> |
||
| 367 | <dl> |
||
| 368 | <dt><code><i>contextSettings</i></code></dt><dd>A reference to ARGL's settings for the current OpenGL |
||
| 369 | context, as returned by arglSetupForCurrentContext() for this context.</dd> |
||
| 370 | <dt><code><i>enable</i></code></dt><dd>Pointer to an integer value which will be set to TRUE if distortion |
||
| 371 | compensation is enabled in the specified context, or FALSE if it is disabled.</dd> |
||
| 372 | </dl> |
||
| 373 | </blockquote> |
||
| 374 | <dl><dt><i>function result</i></dt><dd>TRUE if the distortion value was retreived, FALSE if an error occurred. |
||
| 375 | </dd> |
||
| 376 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>By default, arglDispImage compensates for the distortion of the camera's |
||
| 377 | acquired image caused by the lens when it draws. This function enquires |
||
| 378 | as to whether arglDispImage is currently doing compensation or not. |
||
| 379 | </p> |
||
| 380 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.71. |
||
| 381 | </dd> |
||
| 382 | </dl> |
||
| 383 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglDistortionCompensationSet; name=arglDistortionCompensationSet --> |
||
| 384 | <a name="//apple_ref/doc/compositePage/c/func/arglDistortionCompensationSet"></a> |
||
| 385 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglDistortionCompensationSet">arglDistortionCompensationSet</a></h3> |
||
| 386 | </td></tr></table><hr><dl></dl><p>Set compensation for camera lens distortion in arglDispImage to off or on. |
||
| 387 | </p> |
||
| 388 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglDistortionCompensationSet //apple_ref/c/clm/arglDistortionCompensationSet //apple_ref/c/intfcm/arglDistortionCompensationSet //apple_ref/c/func/arglDistortionCompensationSet //apple_ref/c/ftmplt/arglDistortionCompensationSet //apple_ref/c/defn/arglDistortionCompensationSet //apple_ref/c/macro/arglDistortionCompensationSet" --><font class="function">arglDistortionCompensationSet</font><!-- /a -->( |
||
| 389 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 390 | <!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <font class="param">enable</font>); </pre></blockquote> |
||
| 391 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 392 | <blockquote> |
||
| 393 | <dl> |
||
| 394 | <dt><code><i>contextSettings</i></code></dt><dd>A reference to ARGL's settings for the current OpenGL |
||
| 395 | context, as returned by arglSetupForCurrentContext() for this context.</dd> |
||
| 396 | <dt><code><i>enable</i></code></dt><dd>TRUE to enabled distortion compensation, FALSE to disable it. |
||
| 397 | The default state for new contexts is enable = TRUE.</dd> |
||
| 398 | </dl> |
||
| 399 | </blockquote> |
||
| 400 | <dl><dt><i>function result</i></dt><dd>TRUE if the distortion value was set, FALSE if an error occurred. |
||
| 401 | </dd> |
||
| 402 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>By default, arglDispImage compensates for the distortion of the camera's |
||
| 403 | acquired image caused by the lens when it draws. By calling this function |
||
| 404 | with enabled = FALSE, this compensation will be disabled in the specified |
||
| 405 | drawing context. It may be re-enabled at any time. |
||
| 406 | This function is useful if you need to draw an image, but do not know the |
||
| 407 | extent of the camera's lens distortion (such as during distortion calibration). |
||
| 408 | While distortion compensation is disabled, the dist_factor[] array in a |
||
| 409 | the camera cparam structure passed to arglDispImage is ignored. |
||
| 410 | </p> |
||
| 411 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.71. |
||
| 412 | </dd> |
||
| 413 | </dl> |
||
| 414 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglDrawModeGet; name=arglDrawModeGet --> |
||
| 415 | <a name="//apple_ref/doc/compositePage/c/func/arglDrawModeGet"></a> |
||
| 416 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglDrawModeGet">arglDrawModeGet</a></h3> |
||
| 417 | </td></tr></table><hr><dl></dl><p>Get method by which arglDispImage() is transfering pixels. |
||
| 418 | </p> |
||
| 419 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglDrawModeGet //apple_ref/c/clm/arglDrawModeGet //apple_ref/c/intfcm/arglDrawModeGet //apple_ref/c/func/arglDrawModeGet //apple_ref/c/ftmplt/arglDrawModeGet //apple_ref/c/defn/arglDrawModeGet //apple_ref/c/macro/arglDrawModeGet" --><font class="function">arglDrawModeGet</font><!-- /a -->( |
||
| 420 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>); </pre></blockquote> |
||
| 421 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>Enquires as to the current method by which arglDispImage() is |
||
| 422 | transferring pixels to OpenGL for display. See arglDrawModeSet() for |
||
| 423 | more information. |
||
| 424 | </p> |
||
| 425 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.72. |
||
| 426 | </dd> |
||
| 427 | </dl> |
||
| 428 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglDrawModeSet; name=arglDrawModeSet --> |
||
| 429 | <a name="//apple_ref/doc/compositePage/c/func/arglDrawModeSet"></a> |
||
| 430 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglDrawModeSet">arglDrawModeSet</a></h3> |
||
| 431 | </td></tr></table><hr><dl></dl><p>Set method by which arglDispImage() will transfer pixels. |
||
| 432 | </p> |
||
| 433 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglDrawModeSet //apple_ref/c/clm/arglDrawModeSet //apple_ref/c/intfcm/arglDrawModeSet //apple_ref/c/func/arglDrawModeSet //apple_ref/c/ftmplt/arglDrawModeSet //apple_ref/c/defn/arglDrawModeSet //apple_ref/c/macro/arglDrawModeSet" --><font class="function">arglDrawModeSet</font><!-- /a -->( |
||
| 434 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 435 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <font class="param">mode</font>); </pre></blockquote> |
||
| 436 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>This setting determines the method by which arglDispImage transfers pixels |
||
| 437 | of an image to OpenGL for display. Setting this |
||
| 438 | variable to a value of AR_DRAW_BY_GL_DRAW_PIXELS specifies the use of the |
||
| 439 | OpenGL DrawPixels functions to do the transfer. Setting this variable to a value of |
||
| 440 | AR_DRAW_BY_TEXTURE_MAPPING specifies the use of OpenGL TexImage2D functions to do the |
||
| 441 | transfer. The DrawPixels method is guaranteed to be available on all |
||
| 442 | implementations, but arglDispImage does not correct the image |
||
| 443 | for camera lens distortion under this method. In contrast, TexImage2D is only |
||
| 444 | available on some implementations, but allows arglDispImage() to apply a correction |
||
| 445 | for camera lens distortion, and additionally offers greater potential for |
||
| 446 | accelerated drawing on some implementations. |
||
| 447 | <br><br> |
||
| 448 | The initial value is AR_DRAW_BY_TEXTURE_MAPPING. |
||
| 449 | </p> |
||
| 450 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.72. |
||
| 451 | </dd> |
||
| 452 | </dl> |
||
| 453 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglPixelFormatGet; name=arglPixelFormatGet --> |
||
| 454 | <a name="//apple_ref/doc/compositePage/c/func/arglPixelFormatGet"></a> |
||
| 455 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglPixelFormatGet">arglPixelFormatGet</a></h3> |
||
| 456 | </td></tr></table><hr><dl></dl><p>Get the format of pixel data in which arglDispImage*() is expecting data to be passed. |
||
| 457 | </p> |
||
| 458 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglPixelFormatGet //apple_ref/c/clm/arglPixelFormatGet //apple_ref/c/intfcm/arglPixelFormatGet //apple_ref/c/func/arglPixelFormatGet //apple_ref/c/ftmplt/arglPixelFormatGet //apple_ref/c/defn/arglPixelFormatGet //apple_ref/c/macro/arglPixelFormatGet" --><font class="function">arglPixelFormatGet</font><!-- /a -->( |
||
| 459 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 460 | <!-- a logicalPath="//apple_ref/c/cl/AR_PIXEL_FORMAT //apple_ref/c/cl/AR_PIXEL_FORMAT //apple_ref/c/tdef/AR_PIXEL_FORMAT //apple_ref/c/tag/AR_PIXEL_FORMAT //apple_ref/c/econst/AR_PIXEL_FORMAT //apple_ref/c/struct/AR_PIXEL_FORMAT //apple_ref/c/clconst/AR_PIXEL_FORMAT" --><font class="type">AR_PIXEL_FORMAT</font><!-- /a --> *<font class="param">format</font>, |
||
| 461 | <!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> *<font class="param">size</font>); </pre></blockquote> |
||
| 462 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 463 | <blockquote> |
||
| 464 | <dl> |
||
| 465 | <dt><code><i>contextSettings</i></code></dt><dd>A reference to ARGL's settings for the current OpenGL |
||
| 466 | context, as returned by arglSetupForCurrentContext() for this context.</dd> |
||
| 467 | <dt><code><i>format</i></code></dt><dd>A symbolic constant for the pixel format in use. See |
||
| 468 | AR_PIXEL_FORMAT in ar.h for a list of all possible formats.</dd> |
||
| 469 | <dt><code><i>size</i></code></dt><dd>The number of bytes of memory occupied per pixel, for the given format.</dd> |
||
| 470 | </dl> |
||
| 471 | </blockquote> |
||
| 472 | <dl><dt><i>function result</i></dt><dd>TRUE if the pixel format and size values were retreived, FALSE if an error occurred. |
||
| 473 | </dd> |
||
| 474 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>This function enquires as to the current format of pixel data being |
||
| 475 | expected by the arglDispImage*() functions. The default format is determined by |
||
| 476 | the value of AR_DEFAULT_PIXEL_FORMAT at the time the library was built. |
||
| 477 | </p> |
||
| 478 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.71. |
||
| 479 | </dd> |
||
| 480 | </dl> |
||
| 481 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglPixelFormatSet; name=arglPixelFormatSet --> |
||
| 482 | <a name="//apple_ref/doc/compositePage/c/func/arglPixelFormatSet"></a> |
||
| 483 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglPixelFormatSet">arglPixelFormatSet</a></h3> |
||
| 484 | </td></tr></table><hr><dl></dl><p>Set the format of pixel data which will be passed to arglDispImage*() |
||
| 485 | </p> |
||
| 486 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglPixelFormatSet //apple_ref/c/clm/arglPixelFormatSet //apple_ref/c/intfcm/arglPixelFormatSet //apple_ref/c/func/arglPixelFormatSet //apple_ref/c/ftmplt/arglPixelFormatSet //apple_ref/c/defn/arglPixelFormatSet //apple_ref/c/macro/arglPixelFormatSet" --><font class="function">arglPixelFormatSet</font><!-- /a -->( |
||
| 487 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 488 | <!-- a logicalPath="//apple_ref/c/cl/AR_PIXEL_FORMAT //apple_ref/c/cl/AR_PIXEL_FORMAT //apple_ref/c/tdef/AR_PIXEL_FORMAT //apple_ref/c/tag/AR_PIXEL_FORMAT //apple_ref/c/econst/AR_PIXEL_FORMAT //apple_ref/c/struct/AR_PIXEL_FORMAT //apple_ref/c/clconst/AR_PIXEL_FORMAT" --><font class="type">AR_PIXEL_FORMAT</font><!-- /a --> <font class="param">format</font>); </pre></blockquote> |
||
| 489 | <h5><font face="Lucida Grande,Helvetica,Arial">Parameter Descriptions</font></h5> |
||
| 490 | <blockquote> |
||
| 491 | <dl> |
||
| 492 | <dt><code><i>contextSettings</i></code></dt><dd>A reference to ARGL's settings for the current OpenGL |
||
| 493 | context, as returned by arglSetupForCurrentContext() for this context.</dd> |
||
| 494 | <dt><code><i>format</i></code></dt><dd>A symbolic constant for the pixel format being set. See |
||
| 495 | AR_PIXEL_FORMAT in ar.h for a list of all possible formats.</dd> |
||
| 496 | </dl> |
||
| 497 | </blockquote> |
||
| 498 | <dl><dt><i>function result</i></dt><dd>TRUE if the pixel format value was set, FALSE if an error occurred. |
||
| 499 | </dd> |
||
| 500 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>(description) |
||
| 501 | In gsub_lite, the format of the pixels (i.e. the arrangement of components |
||
| 502 | within each pixel) can be changed at runtime. Use this function to inform |
||
| 503 | gsub_lite the format the pixels being passed to arglDispImage*() functions |
||
| 504 | are in. This setting applies only to the context passed in parameter |
||
| 505 | contextSettings. The default format is determined by |
||
| 506 | the value of AR_DEFAULT_PIXEL_FORMAT at the time the library was built. |
||
| 507 | Usually, image data is passed in directly from images generated by ARVideo, |
||
| 508 | and so you should ensure that ARVideo is generating pixels of the same format. |
||
| 509 | </p> |
||
| 510 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.71. |
||
| 511 | </dd> |
||
| 512 | </dl> |
||
| 513 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglSetupForCurrentContext; name=arglSetupForCurrentContext --> |
||
| 514 | <a name="//apple_ref/doc/compositePage/c/func/arglSetupForCurrentContext"></a> |
||
| 515 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglSetupForCurrentContext">arglSetupForCurrentContext</a></h3> |
||
| 516 | </td></tr></table><hr><dl></dl><p>Initialise the gsub_lite library for the current OpenGL context. |
||
| 517 | </p> |
||
| 518 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglSetupForCurrentContext //apple_ref/c/clm/arglSetupForCurrentContext //apple_ref/c/intfcm/arglSetupForCurrentContext //apple_ref/c/func/arglSetupForCurrentContext //apple_ref/c/ftmplt/arglSetupForCurrentContext //apple_ref/c/defn/arglSetupForCurrentContext //apple_ref/c/macro/arglSetupForCurrentContext" --><font class="function">arglSetupForCurrentContext</font><!-- /a -->( |
||
| 519 | <font class="param">void</font>); </pre></blockquote> |
||
| 520 | <dl><dt><i>function result</i></dt><dd>An ARGL_CONTEXT_SETTINGS_REF. See the documentation for this type for more info. |
||
| 521 | </dd> |
||
| 522 | <h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>This function performs required setup of the gsub_lite library |
||
| 523 | for the current OpenGL context and must be called before any other argl*() |
||
| 524 | functions are called for this context. |
||
| 525 | <br><br> |
||
| 526 | An OpenGL context holds all of the state of the OpenGL machine, including |
||
| 527 | textures and display lists etc. There will usually be one OpenGL context |
||
| 528 | for each window displaying OpenGL content. |
||
| 529 | <br><br> |
||
| 530 | Other argl*() functions whose operation depends on OpenGL state will |
||
| 531 | require an ARGL_CONTEXT_SETTINGS_REF. This is just so that |
||
| 532 | they can keep track of per-context variables. |
||
| 533 | <br><br> |
||
| 534 | You should call arglCleanup() passing in the ARGL_CONTEXT_SETTINGS_REF |
||
| 535 | when you have finished with the library for this context. |
||
| 536 | </p> |
||
| 537 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68. |
||
| 538 | </dd> |
||
| 539 | </dl> |
||
| 540 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglTexmapModeGet; name=arglTexmapModeGet --> |
||
| 541 | <a name="//apple_ref/doc/compositePage/c/func/arglTexmapModeGet"></a> |
||
| 542 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglTexmapModeGet">arglTexmapModeGet</a></h3> |
||
| 543 | </td></tr></table><hr><dl></dl><p>Enquire whether full or half-resolution TexImage2D pixel-transfer is being used in arglDispImage(). |
||
| 544 | </p> |
||
| 545 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglTexmapModeGet //apple_ref/c/clm/arglTexmapModeGet //apple_ref/c/intfcm/arglTexmapModeGet //apple_ref/c/func/arglTexmapModeGet //apple_ref/c/ftmplt/arglTexmapModeGet //apple_ref/c/defn/arglTexmapModeGet //apple_ref/c/macro/arglTexmapModeGet" --><font class="function">arglTexmapModeGet</font><!-- /a -->( |
||
| 546 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>); </pre></blockquote> |
||
| 547 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>Enquires as to the current value of the TexmapMode setting. See arglTexmapModeSet() |
||
| 548 | for more info. |
||
| 549 | </p> |
||
| 550 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.72. |
||
| 551 | </dd> |
||
| 552 | </dl> |
||
| 553 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglTexmapModeSet; name=arglTexmapModeSet --> |
||
| 554 | <a name="//apple_ref/doc/compositePage/c/func/arglTexmapModeSet"></a> |
||
| 555 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglTexmapModeSet">arglTexmapModeSet</a></h3> |
||
| 556 | </td></tr></table><hr><dl></dl><p>Determines use of full or half-resolution TexImage2D pixel-transfer in arglDispImage(). |
||
| 557 | </p> |
||
| 558 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglTexmapModeSet //apple_ref/c/clm/arglTexmapModeSet //apple_ref/c/intfcm/arglTexmapModeSet //apple_ref/c/func/arglTexmapModeSet //apple_ref/c/ftmplt/arglTexmapModeSet //apple_ref/c/defn/arglTexmapModeSet //apple_ref/c/macro/arglTexmapModeSet" --><font class="function">arglTexmapModeSet</font><!-- /a -->( |
||
| 559 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 560 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <font class="param">mode</font>); </pre></blockquote> |
||
| 561 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>When arglDrawModeSet(AR_DRAW_BY_TEXTURE_MAPPING) has been called, the value of this |
||
| 562 | setting determines whether full or half-resolution data is transferred to the |
||
| 563 | texture. Calling this function with a mode value of AR_DRAW_TEXTURE_FULL_IMAGE |
||
| 564 | uses all available pixels in the source image data. A value of |
||
| 565 | AR_DRAW_TEXTURE_HALF_IMAGE discards every second row |
||
| 566 | in the source image data, defining a half-height texture which is then drawn stretched |
||
| 567 | vertically to double its height. |
||
| 568 | <br><br> |
||
| 569 | The latter method is well-suited to drawing interlaced images, as would be obtained |
||
| 570 | from DV camera sources in interlaced mode or composite video sources. |
||
| 571 | <br><br> |
||
| 572 | The initial value is AR_DRAW_TEXTURE_FULL_IMAGE. |
||
| 573 | </p> |
||
| 574 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.72. |
||
| 575 | </dd> |
||
| 576 | </dl> |
||
| 577 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglTexRectangleGet; name=arglTexRectangleGet --> |
||
| 578 | <a name="//apple_ref/doc/compositePage/c/func/arglTexRectangleGet"></a> |
||
| 579 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglTexRectangleGet">arglTexRectangleGet</a></h3> |
||
| 580 | </td></tr></table><hr><dl></dl><p>Enquire as to use of rectangular TexImage2D pixel-transfer in arglDispImage(). |
||
| 581 | </p> |
||
| 582 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglTexRectangleGet //apple_ref/c/clm/arglTexRectangleGet //apple_ref/c/intfcm/arglTexRectangleGet //apple_ref/c/func/arglTexRectangleGet //apple_ref/c/ftmplt/arglTexRectangleGet //apple_ref/c/defn/arglTexRectangleGet //apple_ref/c/macro/arglTexRectangleGet" --><font class="function">arglTexRectangleGet</font><!-- /a -->( |
||
| 583 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>); </pre></blockquote> |
||
| 584 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>Enquires as to the current value of the TexRectangle setting. See arglTexRectangleSet() |
||
| 585 | for more info. |
||
| 586 | </p> |
||
| 587 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.72. |
||
| 588 | </dd> |
||
| 589 | </dl> |
||
| 590 | <hr><!-- headerDoc=func; uid=//apple_ref/doc/compositePage/c/func/arglTexRectangleSet; name=arglTexRectangleSet --> |
||
| 591 | <a name="//apple_ref/doc/compositePage/c/func/arglTexRectangleSet"></a> |
||
| 592 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="arglTexRectangleSet">arglTexRectangleSet</a></h3> |
||
| 593 | </td></tr></table><hr><dl></dl><p>Determines use of rectangular TexImage2D pixel-transfer in arglDispImage(). |
||
| 594 | </p> |
||
| 595 | <blockquote><pre><!-- a logicalPath="//apple_ref/c/cl/void //apple_ref/c/cl/void //apple_ref/c/tdef/void //apple_ref/c/tag/void //apple_ref/c/econst/void //apple_ref/c/struct/void //apple_ref/c/clconst/void" --><font class="type">void</font><!-- /a --> <!-- a logicalPath="//apple_ref/c/instm/arglTexRectangleSet //apple_ref/c/clm/arglTexRectangleSet //apple_ref/c/intfcm/arglTexRectangleSet //apple_ref/c/func/arglTexRectangleSet //apple_ref/c/ftmplt/arglTexRectangleSet //apple_ref/c/defn/arglTexRectangleSet //apple_ref/c/macro/arglTexRectangleSet" --><font class="function">arglTexRectangleSet</font><!-- /a -->( |
||
| 596 | <!-- a logicalPath="//apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/cl/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tdef/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/tag/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/econst/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/struct/ARGL_CONTEXT_SETTINGS_REF //apple_ref/c/clconst/ARGL_CONTEXT_SETTINGS_REF" --><font class="type">ARGL_CONTEXT_SETTINGS_REF</font><!-- /a --> <font class="param">contextSettings</font>, |
||
| 597 | <font class="keyword">const</font> <!-- a logicalPath="//apple_ref/c/cl/int //apple_ref/c/cl/int //apple_ref/c/tdef/int //apple_ref/c/tag/int //apple_ref/c/econst/int //apple_ref/c/struct/int //apple_ref/c/clconst/int" --><font class="type">int</font><!-- /a --> <font class="param">state</font>); </pre></blockquote> |
||
| 598 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>On implementations which support the OpenGL extension for rectangular textures (of |
||
| 599 | non power-of-two size), and when arglDrawMode is set to AR_DRAW_BY_TEXTURE_MAPPING, |
||
| 600 | the value of this variable determines whether rectangular textures or ordinary |
||
| 601 | (power-of-two) textures are used by arglDispImage(). A value of TRUE specifies the |
||
| 602 | use of rectangluar textures. A value of FALSE specifies the use of ordinary textures. |
||
| 603 | <br><br> |
||
| 604 | If the OpenGL driver available at runtime does not support for rectangular textures, |
||
| 605 | changing the value of this setting to TRUE will result calls to arglDispImage |
||
| 606 | performing no drawing. |
||
| 607 | </p> |
||
| 608 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.72. |
||
| 609 | </dd> |
||
| 610 | </dl> |
||
| 611 | <h2>Typedefs</h2> |
||
| 612 | <hr><!-- headerDoc=tdef; uid=//apple_ref/doc/compositePage/c/tdef/ARGL_CONTEXT_SETTINGS_REF; name=ARGL_CONTEXT_SETTINGS_REF --> |
||
| 613 | <a name="//apple_ref/doc/compositePage/c/tdef/ARGL_CONTEXT_SETTINGS_REF"></a> |
||
| 614 | <table border="0" cellpadding="2" cellspacing="2" width="300"><tr><td valign="top" height="12" colspan="5"><h3><a name="ARGL_CONTEXT_SETTINGS_REF">ARGL_CONTEXT_SETTINGS_REF</a></h3> |
||
| 615 | </td></tr></table><hr><dl></dl><p>Opaque type to hold ARGL settings for a given OpenGL context. |
||
| 616 | </p> |
||
| 617 | <blockquote><pre><font class="keyword">typedef</font> <font class="keyword">struct</font> <!-- a logicalPath="//apple_ref/c/cl/_ARGL_CONTEXT_SETTINGS //apple_ref/c/cl/_ARGL_CONTEXT_SETTINGS //apple_ref/c/tdef/_ARGL_CONTEXT_SETTINGS //apple_ref/c/tag/_ARGL_CONTEXT_SETTINGS //apple_ref/c/econst/_ARGL_CONTEXT_SETTINGS //apple_ref/c/struct/_ARGL_CONTEXT_SETTINGS //apple_ref/c/clconst/_ARGL_CONTEXT_SETTINGS" --><font class="type">_ARGL_CONTEXT_SETTINGS</font><!-- /a --> <font class="type">*</font><font class="var">ARGL_CONTEXT_SETTINGS_REF</font>; </pre></blockquote> |
||
| 618 | <dl><h5><font face="Lucida Grande,Helvetica,Arial">Discussion</font></h5><p>An OpenGL context is an implementation-defined structure which |
||
| 619 | keeps track of OpenGL state, including textures and display lists. |
||
| 620 | Typically, individual OpenGL windows will have distinct OpenGL |
||
| 621 | contexts assigned to them by the host operating system. |
||
| 622 | <br><br> |
||
| 623 | As gsub_lite uses textures and display lists, it must be able to |
||
| 624 | track which OpenGL context a given texture or display list it is using |
||
| 625 | belongs to. This is especially important when gsub_lite is being used to |
||
| 626 | draw into more than one window (and therefore more than one context.) |
||
| 627 | <br><br> |
||
| 628 | Basically, functions which depend on OpenGL state, will require an |
||
| 629 | ARGL_CONTEXT_SETTINGS_REF to be passed to them. An ARGL_CONTEXT_SETTINGS_REF |
||
| 630 | is generated by setting the current OpenGL context (e.g. if using GLUT, |
||
| 631 | you might call glutSetWindow()) and then calling arglSetupForCurrentContext(). |
||
| 632 | When you have finished using ARGL in a given context, you should call |
||
| 633 | arglCleanup(), passing in an ARGL_CONTEXT_SETTINGS_REF, to free the |
||
| 634 | memory used by the settings structure. |
||
| 635 | </p> |
||
| 636 | <dt><i>Availability</i></dt><dd>First appeared in ARToolKit 2.68. |
||
| 637 | </dd> |
||
| 638 | </dl> |
||
| 639 | <p><p>© 2003-2006 Philip Lamb |
||
| 640 | (Last Updated June 23, 2006) |
||
| 641 | </p></body></html> |