Quantcast
Channel: Product Communities
Viewing all articles
Browse latest Browse all 105279

Forum Post: Re: mdlRaster_fileExport Error

$
0
0

Hi Mike,

The problem is that you are passing a list of color and compression modes, not the actual value you want to use.

Here is a corrected version of your code. Notice the similar pattern use to get the color and compression mode as the image type.

long  imageType = IMAGEFILE_CIT;

        long  colorMode = COLORMODE_MONOCHROME;

        long  compressMode = COMPRESSTYPE_CCITTFAX4;

        long  nImageTypeListHandle;

        long  nImageTypeIterator;

        long  nColorModeListHandle;        

        long  ncolorModeIterator;

        long  ncompressModeListHandle;

        long  ncompressModeIterator;

        RasterExtendedInfo       rasterExtendedInfo;

        int  status;

        DgnRasterP rasterHandle;

        StatusInt exportStatus;

        status=mdlRaster_fileOpen(&rasterHandle,"E:\\Images\\GeoTIFF\\8G00S0\\ae.tif",mdlModelRef_getActive(),FILE_ACCESSMODE_READ ,EVENT_UPDATE);

        if(status==SUCCESS)

        {

         mdlRaster_extendedInfoGet(&rasterExtendedInfo,rasterHandle);

          rasterExtendedInfo.attachMode=ATTACH_REFERENCE;

         mdlRaster_extendedInfoSet(&rasterExtendedInfo,rasterHandle,EVENT_SILENT);

         /* get the list of supported image format */

         nImageTypeListHandle = mdlRaster_fileFormatTypesGet ();

         /* get an iterator on file format */

         nImageTypeIterator = mdlCntr_mapIteratorCreate (&imageType, nImageTypeListHandle);

         /* get an iterator on supported color mode */

         nColorModeListHandle =  mdlRaster_fileFormatSupportedColorModesGet   (FILE_ACCESSMODE_CREATE, IMAGEFILE_CIT);          

         ncolorModeIterator = mdlCntr_mapIteratorCreate (&colorMode, nColorModeListHandle );

         /* get an iterator on compression mode*/

         ncompressModeListHandle = mdlRaster_fileFormatSupportedCompressionModesGet  (FILE_ACCESSMODE_CREATE , imageType,  colorMode);

         ncompressModeIterator = mdlCntr_mapIteratorCreate (&compressMode, ncompressModeListHandle );

         exportStatus=mdlRaster_fileExport("E:\\BeCommunities\\TIFprogramming\\out.cit",     /*const char * filename, */

               nImageTypeIterator,  /*long fileTypeItor, */

               GEOREF_SISTERFILE_NONE, /*int sisterFile, */

               ncolorModeIterator,  /*long colorModeItor, */

               NULL,      /*unsigned maxColor, */

               ncompressModeIterator, /*long compressModeItor,*/

               0,      /*unsigned char compressionLevel,*/

               TILE_NO,     /*int tile, */

               1.0,      /*double gamma, */

               FALSE,      /*int invert, */

               FALSE,      /*int resize, */

               NULL,      /*Dpoint2d * newSize, */

               NULL,      /*RasterGeotiffInfo * geotiffInfo, */

               FALSE,      /*int resample, */

               rasterHandle);

        }

Also as Jon said it would be better not opening the source file with the create access mode.

Thanks,

Mathieu


Viewing all articles
Browse latest Browse all 105279

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>