Subversion Repositories AndroidProjects

Rev

Blame | Last modification | View Log | RSS feed

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
        <head>
                <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
                <title>ARToolKit API Documentation</title>
                <link href="doxygen.css" rel="stylesheet" type="text/css">
        </head>
        <body>
<!-- Generated by Doxygen 1.4.6 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
    <li id="current"><a href="files.html"><span>Files</span></a></li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    <li><a href="globals.html"><span>Globals</span></a></li>
  </ul></div>
<h1>arMulti.h File Reference</h1>ARToolkit multi pattern subroutines. <a href="#_details">More...</a>
<p>
<code>#include &lt;stdio.h&gt;</code><br>
<code>#include &lt;AR/config.h&gt;</code><br>
<code>#include &lt;<a class="el" href="param_8h.html">AR/param.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="ar_8h.html">AR/ar.h</a>&gt;</code><br>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structARMultiEachMarkerInfoT.html">ARMultiEachMarkerInfoT</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">multi-marker structure  <a href="structARMultiEachMarkerInfoT.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">global multi-marker structure  <a href="structARMultiMarkerInfoT.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="arMulti_8h.html#db0590bceb05c98697aa997c9bf01b9d">arMultiReadConfigFile</a> (const char *filename)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">loading multi-markers description from a file  <a href="#db0590bceb05c98697aa997c9bf01b9d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="arMulti_8h.html#078ec7bb88028842dd6efd788a1f934b">arMultiGetTransMat</a> (<a class="el" href="structARMarkerInfo.html">ARMarkerInfo</a> *marker_info, int marker_num, <a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *config)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">compute camera position in function of the multi-marker patterns (based on detected markers)  <a href="#078ec7bb88028842dd6efd788a1f934b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="arMulti_8h.html#1d313592c277bbfb9352741aba8d031f">arMultiActivate</a> (<a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *config)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">activate a multi-marker pattern on the recognition procedure.  <a href="#1d313592c277bbfb9352741aba8d031f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="arMulti_8h.html#15c56f224029790ec26b33fb414441ca">arMultiDeactivate</a> (<a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *config)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Desactivate a multi-marker pattern on the recognition procedure.  <a href="#15c56f224029790ec26b33fb414441ca"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="arMulti_8h.html#0f33d2031514e1b5af6ba4dfa152633f">arMultiFreeConfig</a> (<a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *config)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">remove a multi-marker pattern from memory.  <a href="#0f33d2031514e1b5af6ba4dfa152633f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec96609a221602c7a64b3057bff58ea1"></a><!-- doxytag: member="arMulti.h::arsMultiGetTransMat" ref="ec96609a221602c7a64b3057bff58ea1" args="(ARMarkerInfo *marker_infoL, int marker_numL, ARMarkerInfo *marker_infoR, int marker_numR, ARMultiMarkerInfoT *config)" -->
double&nbsp;</td><td class="memItemRight" valign="bottom"><b>arsMultiGetTransMat</b> (<a class="el" href="structARMarkerInfo.html">ARMarkerInfo</a> *marker_infoL, int marker_numL, <a class="el" href="structARMarkerInfo.html">ARMarkerInfo</a> *marker_infoR, int marker_numR, <a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *config)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
ARToolkit multi pattern subroutines.
<p>
This file extend ar core routines for multi-pattern tracking. You can obtain position of a local coordinate system based on the estimation of multiple markers tracking (each in relative position)<p>
<dl compact><dt><b>Remarks:</b></dt><dd>more efficient with uniform planar configuration</dd></dl>
History :<p>
<dl compact><dt><b>Author:</b></dt><dd>Hirokazu Kato <a href="mailto:kato@sys.im.hiroshima-cu.ac.jp">kato@sys.im.hiroshima-cu.ac.jp</a> </dd></dl>
<dl compact><dt><b>Version:</b></dt><dd>1.0 </dd></dl>
<dl compact><dt><b>Date:</b></dt><dd>01/09/05 </dd></dl>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="1d313592c277bbfb9352741aba8d031f"></a><!-- doxytag: member="arMulti.h::arMultiActivate" ref="1d313592c277bbfb9352741aba8d031f" args="(ARMultiMarkerInfoT *config)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">int arMultiActivate           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>config</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
activate a multi-marker pattern on the recognition procedure.
<p>
Activate a multi-marker for be checking during the template matching operation. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>pointer to the multi-marker </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 if success, -1 if error </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="15c56f224029790ec26b33fb414441ca"></a><!-- doxytag: member="arMulti.h::arMultiDeactivate" ref="15c56f224029790ec26b33fb414441ca" args="(ARMultiMarkerInfoT *config)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">int arMultiDeactivate           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>config</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Desactivate a multi-marker pattern on the recognition procedure.
<p>
Desactivate a multi-marker for not be checking during the template matching operation. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>pointer to the multi-marker </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 if success, -1 if error </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="0f33d2031514e1b5af6ba4dfa152633f"></a><!-- doxytag: member="arMulti.h::arMultiFreeConfig" ref="0f33d2031514e1b5af6ba4dfa152633f" args="(ARMultiMarkerInfoT *config)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">int arMultiFreeConfig           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>config</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
remove a multi-marker pattern from memory.
<p>
desactivate a pattern and remove it from memory. Post-condition of this function is unavailability of the multi-marker pattern. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>pointer to the multi-marker </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 if success, -1 if error </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="078ec7bb88028842dd6efd788a1f934b"></a><!-- doxytag: member="arMulti.h::arMultiGetTransMat" ref="078ec7bb88028842dd6efd788a1f934b" args="(ARMarkerInfo *marker_info, int marker_num, ARMultiMarkerInfoT *config)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">double arMultiGetTransMat           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="structARMarkerInfo.html">ARMarkerInfo</a> *&nbsp;</td>
          <td class="mdname" nowrap> <em>marker_info</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>marker_num</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a> *&nbsp;</td>
          <td class="mdname" nowrap> <em>config</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
compute camera position in function of the multi-marker patterns (based on detected markers)
<p>
calculate the transformation between the multi-marker patterns and the real camera. Based on confident values of detected markers in the multi-markers patterns, a global position is return.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>marker_info</em>&nbsp;</td><td>list of detected markers (from arDetectMarker) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>marker_num</em>&nbsp;</td><td>number of detected markers </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td></td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="db0590bceb05c98697aa997c9bf01b9d"></a><!-- doxytag: member="arMulti.h::arMultiReadConfigFile" ref="db0590bceb05c98697aa997c9bf01b9d" args="(const char *filename)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="structARMultiMarkerInfoT.html">ARMultiMarkerInfoT</a>* arMultiReadConfigFile           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>filename</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
loading multi-markers description from a file
<p>
Load a configuration file for multi-markers tracking. The configuration file furnishs pointer to each pattern description.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>name of the pattern file </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>a pattern structure, NULL if error </dd></dl>
    </td>
  </tr>
</table>
       
        <small>Generated with <a href="http://www.doxygen.org/index.html">Doxygen</a><br>
        Copyright © 2004-2006. HIT Lab NZ. All Rights Reserved.</small>
        </body>
</html>