亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ogrutils.cpp

?? mitab,讀取MapInfo的地圖文件
?? CPP
?? 第 1 頁 / 共 3 頁
字號:

            if( *ppadfZ != NULL )
            {
                *ppadfZ = (double *)
                    CPLRealloc(*ppadfZ, sizeof(double) * *pnMaxPoints);
            }
        }

/* -------------------------------------------------------------------- */
/*      Add point to list.                                              */
/* -------------------------------------------------------------------- */
        (*ppaoPoints)[*pnPointsRead].x = atof(szTokenX);
        (*ppaoPoints)[*pnPointsRead].y = atof(szTokenY);

/* -------------------------------------------------------------------- */
/*      Do we have a Z coordinate?                                      */
/* -------------------------------------------------------------------- */
        pszInput = OGRWktReadToken( pszInput, szDelim );

        if( isdigit(szDelim[0]) || szDelim[0] == '-' || szDelim[0] == '.' )
        {
            if( *ppadfZ == NULL )
            {
                *ppadfZ = (double *) CPLCalloc(sizeof(double),*pnMaxPoints);
            }

            (*ppadfZ)[*pnPointsRead] = atof(szDelim);
            
            pszInput = OGRWktReadToken( pszInput, szDelim );
        }
        
        (*pnPointsRead)++;

/* -------------------------------------------------------------------- */
/*      Do we have a M coordinate?                                      */
/*      If we do, just skip it.                                         */
/* -------------------------------------------------------------------- */
        if( isdigit(szDelim[0]) || szDelim[0] == '-' || szDelim[0] == '.' )
        {
            pszInput = OGRWktReadToken( pszInput, szDelim );
        }
        
/* -------------------------------------------------------------------- */
/*      Read next delimeter ... it should be a comma if there are       */
/*      more points.                                                    */
/* -------------------------------------------------------------------- */
        if( szDelim[0] != ')' && szDelim[0] != ',' )
        {
            CPLDebug( "OGR",
                      "Corrupt input in OGRWktReadPoints()\n"
                      "Got `%s' when expecting `,' or `)', near `%s' in %s.\n",
                      szDelim, pszInput, pszOrigInput );
            return NULL;
        }
        
    } while( szDelim[0] == ',' );

    return pszInput;
}

/************************************************************************/
/*                             OGRMalloc()                              */
/*                                                                      */
/*      Cover for CPLMalloc()                                           */
/************************************************************************/

void *OGRMalloc( size_t size )

{
    return CPLMalloc( size );
}

/************************************************************************/
/*                             OGRCalloc()                              */
/*                                                                      */
/*      Cover for CPLCalloc()                                           */
/************************************************************************/

void * OGRCalloc( size_t count, size_t size )

{
    return CPLCalloc( count, size );
}

/************************************************************************/
/*                             OGRRealloc()                             */
/*                                                                      */
/*      Cover for CPLRealloc()                                          */
/************************************************************************/

void *OGRRealloc( void * pOld, size_t size )

{
    return CPLRealloc( pOld, size );
}

/************************************************************************/
/*                              OGRFree()                               */
/*                                                                      */
/*      Cover for CPLFree().                                            */
/************************************************************************/

void OGRFree( void * pMemory )

{
    CPLFree( pMemory );
}

/**
 * General utility option processing.
 *
 * This function is intended to provide a variety of generic commandline 
 * options for all OGR commandline utilities.  It takes care of the following
 * commandline options:
 *  
 *  --formats: report all format drivers configured.
 *  --format [format]: report details of one format driver. 
 *  --optfile filename: expand an option file into the argument list. 
 *  --config key value: set system configuration option. 
 *  --debug [on/off/value]: set debug level.
 *  --help-general: report detailed help on general options. 
 *
 * The argument array is replaced "in place" and should be freed with 
 * CSLDestroy() when no longer needed.  The typical usage looks something
 * like the following.  Note that the formats should be registered so that
 * the --formats and --format options will work properly.
 *
 *  int main( int argc, char ** argv )
 *  { 
 *    OGRAllRegister();
 *
 *    argc = OGRGeneralCmdLineProcessor( argc, &argv, 0 );
 *    if( argc < 1 )
 *        exit( -argc );
 *
 * @param nArgc number of values in the argument list.
 * @param Pointer to the argument list array (will be updated in place). 
 *
 * @return updated nArgc argument count.  Return of 0 requests terminate 
 * without error, return of -1 requests exit with error code.
 */

int OGRGeneralCmdLineProcessor( int nArgc, char ***ppapszArgv, int nOptions )

{
    char **papszReturn = NULL;
    int  iArg;
    char **papszArgv = *ppapszArgv;

    (void) nOptions;
    
/* -------------------------------------------------------------------- */
/*      Preserve the program name.                                      */
/* -------------------------------------------------------------------- */
    papszReturn = CSLAddString( papszReturn, papszArgv[0] );

/* ==================================================================== */
/*      Loop over all arguments.                                        */
/* ==================================================================== */
    for( iArg = 1; iArg < nArgc; iArg++ )
    {

/* -------------------------------------------------------------------- */
/*      --config                                                        */
/* -------------------------------------------------------------------- */
        if( EQUAL(papszArgv[iArg],"--config") )
        {
            if( iArg + 2 >= nArgc )
            {
                CPLError( CE_Failure, CPLE_AppDefined, 
                          "--config option given without a key and value argument." );
                CSLDestroy( papszReturn );
                return -1;
            }

            CPLSetConfigOption( papszArgv[iArg+1], papszArgv[iArg+2] );

            iArg += 2;
        }

/* -------------------------------------------------------------------- */
/*      --mempreload                                                    */
/* -------------------------------------------------------------------- */
        else if( EQUAL(papszArgv[iArg],"--mempreload") )
        {
            int i;

            if( iArg + 1 >= nArgc )
            {
                CPLError( CE_Failure, CPLE_AppDefined, 
                          "--mempreload option given without directory path.");
                CSLDestroy( papszReturn );
                return -1;
            }
            
            char **papszFiles = CPLReadDir( papszArgv[iArg+1] );
            if( CSLCount(papszFiles) == 0 )
            {
                CPLError( CE_Failure, CPLE_AppDefined, 
                          "--mempreload given invalid or empty directory.");
                CSLDestroy( papszReturn );
                return -1;
            }
                
            for( i = 0; papszFiles[i] != NULL; i++ )
            {
                CPLString osOldPath, osNewPath;
                
                if( EQUAL(papszFiles[i],".") || EQUAL(papszFiles[i],"..") )
                    continue;

                osOldPath = CPLFormFilename( papszArgv[iArg+1], 
                                             papszFiles[i], NULL );
                osNewPath.Printf( "/vsimem/%s", papszFiles[i] );

                CPLDebug( "VSI", "Preloading %s to %s.", 
                          osOldPath.c_str(), osNewPath.c_str() );

                if( CPLCopyFile( osNewPath, osOldPath ) != 0 )
                    return -1;
            }
            
            CSLDestroy( papszFiles );
            iArg += 1;
        }

/* -------------------------------------------------------------------- */
/*      --debug                                                         */
/* -------------------------------------------------------------------- */
        else if( EQUAL(papszArgv[iArg],"--debug") )
        {
            if( iArg + 1 >= nArgc )
            {
                CPLError( CE_Failure, CPLE_AppDefined, 
                          "--debug option given without debug level." );
                CSLDestroy( papszReturn );
                return -1;
            }

            CPLSetConfigOption( "CPL_DEBUG", papszArgv[iArg+1] );
            iArg += 1;
        }

/* -------------------------------------------------------------------- */
/*      --optfile                                                       */
/*                                                                      */
/*      Annoyingly the options inserted by --optfile will *not* be      */
/*      processed properly if they are general options.                 */
/* -------------------------------------------------------------------- */
        else if( EQUAL(papszArgv[iArg],"--optfile") )
        {
            const char *pszLine;
            FILE *fpOptFile;

            if( iArg + 1 >= nArgc )
            {
                CPLError( CE_Failure, CPLE_AppDefined, 
                          "--optfile option given without filename." );
                CSLDestroy( papszReturn );
                return -1;
            }

            fpOptFile = VSIFOpen( papszArgv[iArg+1], "rb" );

            if( fpOptFile == NULL )
            {
                CPLError( CE_Failure, CPLE_AppDefined, 
                          "Unable to open optfile '%s'.\n%s",

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产91久久久久久最新毛片| 亚洲最大成人网4388xx| 亚洲视频在线一区二区| 视频一区视频二区在线观看| 国产美女精品在线| 欧美日韩国产精品成人| 1024精品合集| 国产精品亚洲视频| 欧美mv和日韩mv国产网站| 婷婷久久综合九色综合绿巨人| 91香蕉视频污在线| 久久精品欧美一区二区三区不卡 | 欧美丰满高潮xxxx喷水动漫| 亚洲国产精品99久久久久久久久 | 亚洲国产婷婷综合在线精品| 成人av电影在线播放| 久久久www成人免费毛片麻豆 | 懂色av中文字幕一区二区三区| 91精品国产综合久久蜜臀| 亚洲综合激情另类小说区| 波多野结衣视频一区| 国产午夜精品理论片a级大结局| 久久国产剧场电影| 精品蜜桃在线看| 极品少妇一区二区| 精品日韩av一区二区| 久草热8精品视频在线观看| 欧美一二三区精品| 毛片av一区二区| 久久久综合精品| 国产福利电影一区二区三区| 国产日韩欧美高清在线| 国产成人午夜精品5599| 欧美韩日一区二区三区| 成人丝袜18视频在线观看| 亚洲欧洲精品一区二区精品久久久 | 免费在线观看精品| 欧美一区二区三区免费| 蜜桃视频在线一区| 国产偷国产偷亚洲高清人白洁| 国产福利一区二区三区| 中文字幕一区二区三区精华液| 91在线精品一区二区三区| 亚洲欧美激情小说另类| 欧美区在线观看| 美女久久久精品| 国产欧美日韩不卡| 99riav一区二区三区| 亚洲一区二区三区三| 欧美一级欧美三级在线观看| 国产资源精品在线观看| 国产精品高清亚洲| 欧美美女喷水视频| 国产自产视频一区二区三区| 最新久久zyz资源站| 欧美巨大另类极品videosbest | 亚洲影院久久精品| 欧美一级午夜免费电影| 国产精品456| 亚洲一区二区av在线| 欧美大尺度电影在线| www.亚洲精品| 日本三级亚洲精品| 国产精品入口麻豆原神| 欧美丝袜第三区| 国产乱子伦视频一区二区三区 | 亚洲激情欧美激情| 日韩午夜电影av| 色综合久久88色综合天天| 美女视频黄频大全不卡视频在线播放| 久久久五月婷婷| 欧美男生操女生| 97精品久久久午夜一区二区三区| 视频一区二区欧美| 亚洲品质自拍视频| 久久久.com| 日韩午夜三级在线| 欧美综合天天夜夜久久| 国产成人8x视频一区二区| 日本亚洲天堂网| 亚洲已满18点击进入久久| 久久精品一区二区三区不卡| 91.xcao| 一本一道久久a久久精品综合蜜臀| 韩国一区二区三区| 日日欢夜夜爽一区| 亚洲乱码国产乱码精品精可以看| 久久久久久久久蜜桃| 91精品国产91久久综合桃花| 色婷婷综合久久久中文一区二区 | 极品少妇一区二区三区精品视频| 亚洲成av人片在www色猫咪| 亚洲国产精品成人综合色在线婷婷| 欧美一区二区三区公司| 在线观看三级视频欧美| 99久久精品国产网站| 国产ts人妖一区二区| 蜜桃av一区二区| 日本va欧美va欧美va精品| 亚洲一区二区三区四区在线| 亚洲乱码中文字幕| 自拍视频在线观看一区二区| 国产精品欧美一级免费| 中文一区一区三区高中清不卡| 久久久久久免费| 久久综合久色欧美综合狠狠| 日韩丝袜美女视频| 精品免费视频.| 久久久久国产精品人| 久久精品亚洲乱码伦伦中文| 久久在线免费观看| 国产女主播视频一区二区| 中文字幕国产精品一区二区| 中文字幕第一区第二区| 国产精品天美传媒沈樵| 综合久久久久综合| 亚洲欧美福利一区二区| 亚洲精选一二三| 亚洲大型综合色站| 日韩av一区二区三区| 免费精品视频最新在线| 激情另类小说区图片区视频区| 国产自产高清不卡| 福利电影一区二区| 99精品黄色片免费大全| 欧美怡红院视频| 欧美成人一区二区三区在线观看| 久久综合久久99| 国产精品妹子av| 亚洲欧美日韩久久| 日本 国产 欧美色综合| 国产美女主播视频一区| 99国产精品久久久久久久久久 | 蜜臀av性久久久久蜜臀aⅴ流畅| 蜜臀av性久久久久蜜臀av麻豆| 国产伦精品一区二区三区免费迷 | 日本一区二区久久| 一区二区三区日韩在线观看| 日韩影院免费视频| 国产福利一区二区三区在线视频| 91视频观看免费| 欧美一区二区三区小说| 欧美国产日韩精品免费观看| 亚洲精选视频免费看| 久久精品久久综合| 99精品欧美一区二区蜜桃免费| 91精品国产品国语在线不卡| 国产精品人妖ts系列视频| 偷偷要91色婷婷| 国产成人亚洲综合色影视| 91丨国产丨九色丨pron| 日韩色视频在线观看| 日韩毛片精品高清免费| 美女一区二区久久| 91美女在线视频| 2021久久国产精品不只是精品| 一区二区三区欧美在线观看| 久久国产人妖系列| 欧美在线一二三四区| 国产视频在线观看一区二区三区| 亚洲国产裸拍裸体视频在线观看乱了| 国产精品一区在线观看乱码| 色婷婷综合中文久久一本| 国产欧美日韩久久| 麻豆精品在线播放| 欧美三日本三级三级在线播放| 久久精品亚洲精品国产欧美| 日韩影视精彩在线| 欧美亚洲日本国产| 亚洲色图欧洲色图婷婷| 国产乱淫av一区二区三区| 日韩一区二区三区免费看| 亚洲人成在线观看一区二区| 国产91在线观看丝袜| 日韩一级大片在线| 天天av天天翘天天综合网| 99精品在线观看视频| 欧美激情一区在线观看| 久草在线在线精品观看| 日韩视频中午一区| 日韩成人精品视频| 3d动漫精品啪啪| 婷婷综合在线观看| 欧美三区在线观看| 亚洲一区二区三区在线看| 一本大道综合伊人精品热热| 国产精品乱码妇女bbbb| 国产激情视频一区二区三区欧美 | 91亚洲国产成人精品一区二三| 欧美激情资源网| 国产久卡久卡久卡久卡视频精品| 欧美一区二区视频观看视频 | 99这里只有久久精品视频| 国产日韩精品一区二区三区在线| 精品一区二区三区香蕉蜜桃| 精品美女被调教视频大全网站| 久久国产婷婷国产香蕉| 欧美精品一区二区久久婷婷| 韩国女主播一区| 日本一区二区三区四区|