⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gdal__alg_8h.html

📁 gdal库的学习文档
💻 HTML
📖 第 1 页 / 共 5 页
字号:
          <td>(</td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>nGCPCount</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">const <a class="el" href="structGDAL__GCP.html">GDAL_GCP</a> *&nbsp;</td>          <td class="paramname"> <em>pasGCPList</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>nReqOrder</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>bReversed</em></td><td>&nbsp;</td>        </tr>        <tr>          <td></td>          <td>)</td>          <td></td><td></td><td width="100%"></td>        </tr>      </table></div><div class="memdoc"><p>Create GCP based polynomial transformer.<p>Computes least squares fit polynomials from a provided set of GCPs, and stores the coefficients for later transformation of points between pixel/line and georeferenced coordinates.<p>The return value should be used as a TransformArg in combination with the transformation function GDALGCPTransform which fits the GDALTransformerFunc signature. The returned transform argument should be deallocated with GDALDestroyGCPTransformer when no longer needed.<p>This function may fail (returning NULL) if the provided set of GCPs are inadequate for the requested order, the determinate is zero or they are otherwise "ill conditioned".<p>Note that 2nd order requires at least 6 GCPs, and 3rd order requires at least 10 gcps. If nReqOrder is 0 the highest order possible with the provided gcp count will be used.<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>nGCPCount</em>&nbsp;</td><td>the number of GCPs in pasGCPList. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>pasGCPList</em>&nbsp;</td><td>an array of GCPs to be used as input. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>nReqOrder</em>&nbsp;</td><td>the requested polynomial order. It should be 1, 2 or 3.</td></tr>  </table></dl><dl class="return" compact><dt><b>Returns:</b></dt><dd>the transform argument or NULL if creation fails. </dd></dl></div></div><p><a class="anchor" name="7671696d085085a0bfba3c3df9ffcc0a"></a><!-- doxytag: member="gdal_alg.h::GDALCreateGenImgProjTransformer" ref="7671696d085085a0bfba3c3df9ffcc0a" args="(GDALDatasetH hSrcDS, const char *pszSrcWKT, GDALDatasetH hDstDS, const char *pszDstWKT, int bGCPUseOK, double dfGCPErrorThreshold, int nOrder)" --><div class="memitem"><div class="memproto">      <table class="memname">        <tr>          <td class="memname">void* GDALCreateGenImgProjTransformer           </td>          <td>(</td>          <td class="paramtype">GDALDatasetH&nbsp;</td>          <td class="paramname"> <em>hSrcDS</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">const char *&nbsp;</td>          <td class="paramname"> <em>pszSrcWKT</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">GDALDatasetH&nbsp;</td>          <td class="paramname"> <em>hDstDS</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">const char *&nbsp;</td>          <td class="paramname"> <em>pszDstWKT</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>bGCPUseOK</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">double&nbsp;</td>          <td class="paramname"> <em>dfGCPErrorThreshold</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>nOrder</em></td><td>&nbsp;</td>        </tr>        <tr>          <td></td>          <td>)</td>          <td></td><td></td><td width="100%"></td>        </tr>      </table></div><div class="memdoc"><p>Create image to image transformer.<p>This function creates a transformation object that maps from pixel/line coordinates on one image to pixel/line coordinates on another image. The images may potentially be georeferenced in different coordinate systems, and may used GCPs to map between their pixel/line coordinates and georeferenced coordinates (as opposed to the default assumption that their geotransform should be used).<p>This transformer potentially performs three concatenated transformations.<p>The first stage is from source image pixel/line coordinates to source image georeferenced coordinates, and may be done using the geotransform, or if not defined using a polynomial model derived from GCPs. If GCPs are used this stage is accomplished using <a class="el" href="gdal__alg_8h.html#9acdfd7db1541c1df5e29a031994d61b">GDALGCPTransform()</a>.<p>The second stage is to change projections from the source coordinate system to the destination coordinate system, assuming they differ. This is accomplished internally using <a class="el" href="gdal__alg_8h.html#f00f74e03c57842b359130ca73857521">GDALReprojectionTransform()</a>.<p>The third stage is converting from destination image georeferenced coordinates to destination image coordinates. This is done using the destination image geotransform, or if not available, using a polynomial model derived from GCPs. If GCPs are used this stage is accomplished using <a class="el" href="gdal__alg_8h.html#9acdfd7db1541c1df5e29a031994d61b">GDALGCPTransform()</a>. This stage is skipped if hDstDS is NULL when the transformation is created.<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>hSrcDS</em>&nbsp;</td><td>source dataset, or NULL. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>pszSrcWKT</em>&nbsp;</td><td>the coordinate system for the source dataset. If NULL, it will be read from the dataset itself. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>hDstDS</em>&nbsp;</td><td>destination dataset (or NULL). </td></tr>    <tr><td valign="top"></td><td valign="top"><em>pszDstWKT</em>&nbsp;</td><td>the coordinate system for the destination dataset. If NULL, and hDstDS not NULL, it will be read from the destination dataset. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>bGCPUseOK</em>&nbsp;</td><td>TRUE if GCPs should be used if the geotransform is not available on the source dataset (not destination). </td></tr>    <tr><td valign="top"></td><td valign="top"><em>dfGCPErrorThreshold</em>&nbsp;</td><td>the maximum error allowed for the GCP model to be considered valid. Exact semantics not yet defined. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>nOrder</em>&nbsp;</td><td>the maximum order to use for GCP derived polynomials if possible. Use 0 to autoselect, or -1 for thin plate splines.</td></tr>  </table></dl><dl class="return" compact><dt><b>Returns:</b></dt><dd>handle suitable for use <a class="el" href="gdal__alg_8h.html#109c26234c2f934164e29649353532b6">GDALGenImgProjTransform()</a>, and to be deallocated with <a class="el" href="gdal__alg_8h.html#5fb383c4e5197e8e37ae1265cca8124d">GDALDestroyGenImgProjTransformer()</a>. </dd></dl></div></div><p><a class="anchor" name="dce63548b884096e55d1685d4bbd7e63"></a><!-- doxytag: member="gdal_alg.h::GDALCreateReprojectionTransformer" ref="dce63548b884096e55d1685d4bbd7e63" args="(const char *pszSrcWKT, const char *pszDstWKT)" --><div class="memitem"><div class="memproto">      <table class="memname">        <tr>          <td class="memname">void* GDALCreateReprojectionTransformer           </td>          <td>(</td>          <td class="paramtype">const char *&nbsp;</td>          <td class="paramname"> <em>pszSrcWKT</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">const char *&nbsp;</td>          <td class="paramname"> <em>pszDstWKT</em></td><td>&nbsp;</td>        </tr>        <tr>          <td></td>          <td>)</td>          <td></td><td></td><td width="100%"></td>        </tr>      </table></div><div class="memdoc"><p>Create reprojection transformer.<p>Creates a callback data structure suitable for use with GDALReprojectionTransformation() to represent a transformation from one geographic or projected coordinate system to another. On input the coordinate systems are described in OpenGIS WKT format.<p>Internally the OGRCoordinateTransformation object is used to implement the reprojection.<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>pszSrcWKT</em>&nbsp;</td><td>the coordinate system for the source coordinate system. </td></tr>    <tr><td valign="top"></td><td valign="top"><em>pszDstWKT</em>&nbsp;</td><td>the coordinate system for the destination coordinate system.</td></tr>  </table></dl><dl class="return" compact><dt><b>Returns:</b></dt><dd>Handle for use with <a class="el" href="gdal__alg_8h.html#f00f74e03c57842b359130ca73857521">GDALReprojectionTransform()</a>, or NULL if the system fails to initialize the reprojection. </dd></dl></div></div><p><a class="anchor" name="245802b88a8126c138d24febe6c9822a"></a><!-- doxytag: member="gdal_alg.h::GDALCreateTPSTransformer" ref="245802b88a8126c138d24febe6c9822a" args="(int nGCPCount, const GDAL_GCP *pasGCPList, int bReversed)" --><div class="memitem"><div class="memproto">      <table class="memname">        <tr>          <td class="memname">void* GDALCreateTPSTransformer           </td>          <td>(</td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>nGCPCount</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">const <a class="el" href="structGDAL__GCP.html">GDAL_GCP</a> *&nbsp;</td>          <td class="paramname"> <em>pasGCPList</em>, </td>        </tr>        <tr>          <td class="paramkey"></td>          <td></td>          <td class="paramtype">int&nbsp;</td>          <td class="paramname"> <em>bReversed</em></td><td>&nbsp;</td>        </tr>        <tr>          <td></td>          <td>)</td>          <td></td><td></td><td width="100%"></td>        </tr>      </table></div><div class="memdoc"><p>Create Thin Plate Spline transformer from GCPs.<p>The thin plate spline transformer produces exact transformation at all control points and smoothly varying transformations between control points with greatest influence from local control points. It is suitable for for many applications not well modelled by polynomial transformations.<p>Creating the TPS transformer involves solving systems of linear equations related to the number of control points involved. This solution is computed within this function call. It can be quite an expensive operation for large numbers of GCPs. For instance, for reference, it takes on the order of 10s for 400 GCPs on a 2GHz Athlon processor.<p>TPS Transformers are serializable.<p>The GDAL Thin Plate Spline transformer is based on code provided by Gilad Ronnen on behalf of VIZRT Inc (<a href="http://www.visrt.com">http://www.visrt.com</a>). Incorporation of the algorithm into GDAL was supported by the Centro di Ecologia Alpina (<a href="http://www.cealp.it">http://www.cealp.it</a>).<p><dl compact><dt><b>Parameters:</b></dt><dd>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -