<font face="courier new,monospace">Thanks Even,<br>If that is the case, are there other values in psWarpOptions I <i>have</i> to set?  I can&#39;t find docs discussing that.<br><br>kss<br clear="all"></font><br>/**<br> *<br>

 * Kyle Shannon<br> * <a href="mailto:ksshannon@gmail.com" target="_blank">ksshannon@gmail.com</a><br> *<br> */<br><br><br>
<br><br><div class="gmail_quote">On Thu, May 5, 2011 at 12:21, Even Rouault <span dir="ltr">&lt;<a href="mailto:even.rouault@mines-paris.org">even.rouault@mines-paris.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

Le mercredi 04 mai 2011 00:40:42, Kyle Shannon a écrit :<br>
<div class="im">&gt; I am using AutoCreateWarpedVRT to warp a dataset.  I grab the the source<br>
&gt; nodata for a band using<br>
&gt;<br>
&gt; double noData = poBand-&gt;GetNoDataValue( &amp;pbSuccess );<br>
&gt;<br>
&gt; which returns 1.#QNAN00000000... on windows.<br>
&gt;<br>
&gt; I then try to set the INIT_DEST with this using<br>
&gt;<br>
&gt; psWarpOptions-&gt;papszWarpOptions =<br>
&gt;         CSLSetNameValue( psWarpOptions-&gt;papszWarpOptions,<br>
&gt;                  &quot;INIT_DEST&quot;, CPLSPrintf( &quot;%lf&quot;, noData ) );<br>
&gt;<br>
&gt; This works on linux when it returns nan(0x8000000000000), but not on<br>
&gt; windows, is there a different string I need to set in the warp options?<br>
<br>
</div>Those NaN values are generally a nighmare to deal with...<br>
<br>
But a quick look at :<br>
<br>
    const char *pszInitDest = CSLFetchNameValue( psOptions-&gt;papszWarpOptions,<br>
                                                 &quot;INIT_DEST&quot; );<br>
<br>
    if( pszInitDest != NULL &amp;&amp; !EQUAL(pszInitDest, &quot;&quot;) )<br>
    {<br>
        char **papszInitValues =<br>
            CSLTokenizeStringComplex( pszInitDest, &quot;,&quot;, FALSE, FALSE );<br>
        int nInitCount = CSLCount(papszInitValues);<br>
<br>
        for( iBand = 0; iBand &lt; psOptions-&gt;nBandCount; iBand++ )<br>
        {<br>
            double adfInitRealImag[2];<br>
            GByte *pBandData;<br>
            const char *pszBandInit =<br>
papszInitValues[MIN(iBand,nInitCount-1)];<br>
<br>
            if( EQUAL(pszBandInit,&quot;NO_DATA&quot;)<br>
                &amp;&amp; psOptions-&gt;padfDstNoDataReal != NULL )<br>
            {<br>
                adfInitRealImag[0] = psOptions-&gt;padfDstNoDataReal[iBand];<br>
                adfInitRealImag[1] = psOptions-&gt;padfDstNoDataImag[iBand];<br>
            }<br>
            else<br>
            {<br>
                CPLStringToComplex( pszBandInit,<br>
                                    adfInitRealImag + 0, adfInitRealImag + 1);<br>
            }<br>
<br>
Make me believe that one way is to assign the value(s) of the<br>
padfDstNoDataReal[] array of psWarpOptions with the noData (NAN) value and set<br>
INIT_DEST to the &quot;NO_DATA&quot; string.<br>
<div><div></div><div class="h5"><br>
&gt;<br>
&gt; Thanks.<br>
&gt;<br>
&gt;<br>
&gt; /**<br>
&gt;  *<br>
&gt;  * Kyle Shannon<br>
&gt;  * <a href="mailto:ksshannon@gmail.com">ksshannon@gmail.com</a><br>
&gt;  *<br>
&gt;  */<br>
</div></div></blockquote></div><br>