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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tigerfilebase.cpp

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
{    const char *pszFieldValue = GetField( pachRecord, nStart, nEnd );    if( pszFieldValue[0] == '\0' )        return;    poFeature->SetField( pszField, pszFieldValue );}/************************************************************************//*                             WriteField()                             *//*                                                                      *//*      Write a field into a record buffer with the indicated           *//*      formatting, or leave blank if not found.                        *//************************************************************************/int TigerFileBase::WriteField( OGRFeature *poFeature, const char *pszField,                                char *pachRecord, int nStart, int nEnd,                                char chFormat, char chType ){    int         iField = poFeature->GetFieldIndex( pszField );    char        szValue[512], szFormat[32];    CPLAssert( nEnd - nStart + 1 < (int) sizeof(szValue)-1 );    if( iField < 0 || !poFeature->IsFieldSet( iField ) )        return FALSE;    if( chType == 'N' && chFormat == 'L' )    {        sprintf( szFormat, "%%0%dd", nEnd - nStart + 1 );        sprintf( szValue, szFormat, poFeature->GetFieldAsInteger( iField ) );    }    else if( chType == 'N' && chFormat == 'R' )    {        sprintf( szFormat, "%%%dd", nEnd - nStart + 1 );        sprintf( szValue, szFormat, poFeature->GetFieldAsInteger( iField ) );    }    else if( chType == 'A' && chFormat == 'L' )    {        strncpy( szValue, poFeature->GetFieldAsString( iField ),                  sizeof(szValue) - 1 );        if( (int) strlen(szValue) < nEnd - nStart + 1 )            memset( szValue + strlen(szValue), ' ',                     nEnd - nStart + 1 - strlen(szValue) );    }    else if( chType == 'A' && chFormat == 'R' )    {        sprintf( szFormat, "%%%ds", nEnd - nStart + 1 );        sprintf( szValue, szFormat, poFeature->GetFieldAsString( iField ) );    }    else    {        CPLAssert( FALSE );        return FALSE;    }    strncpy( pachRecord + nStart - 1, szValue, nEnd - nStart + 1 );    return TRUE;}/************************************************************************//*                             WritePoint()                             *//************************************************************************/int TigerFileBase::WritePoint( char *pachRecord, int nStart,                                double dfX, double dfY ){    char        szTemp[20];    if( dfX == 0.0 && dfY == 0.0 )    {        strncpy( pachRecord + nStart - 1, "+000000000+00000000", 19 );    }    else    {        sprintf( szTemp, "%+10d%+9d",                  (int) floor(dfX * 1000000 + 0.5),                 (int) floor(dfY * 1000000 + 0.5) );        strncpy( pachRecord + nStart - 1, szTemp, 19 );    }    return TRUE;}/************************************************************************//*                            WriteRecord()                             *//************************************************************************/int TigerFileBase::WriteRecord( char *pachRecord, int nRecLen,                                 const char *pszType, FILE * fp ){    if( fp == NULL )        fp = fpPrimary;    pachRecord[0] = *pszType;    /*     * Prior to TIGER_2002, type 5 files lacked the version.  So write     * the version in the record iff we're using TIGER_2002 or higher,     * or if this is not type "5"     */    if ( (poDS->GetVersion() >= TIGER_2002) ||         (!EQUAL(pszType, "5")) )    {        char    szVersion[5];        sprintf( szVersion, "%04d", poDS->GetVersionCode() );        strncpy( pachRecord + 1, szVersion, 4 );    }    VSIFWrite( pachRecord, nRecLen, 1, fp );    VSIFWrite( (void *) "\r\n", 2, 1, fp );    return TRUE;}/************************************************************************//*                           SetWriteModule()                           *//*                                                                      *//*      Setup our access to be to the module indicated in the feature.  *//************************************************************************/int TigerFileBase::SetWriteModule( const char *pszExtension, int nRecLen,                                   OGRFeature *poFeature ){/* -------------------------------------------------------------------- *//*      Work out what module we should be writing to.                   *//* -------------------------------------------------------------------- */    const char *pszTargetModule = poFeature->GetFieldAsString( "MODULE" );    char        szFullModule[30];    /* TODO/notdef: eventually more logic based on FILE and STATE/COUNTY can        be inserted here. */    if( pszTargetModule == NULL )        return FALSE;    sprintf( szFullModule, "%s.RT", pszTargetModule );/* -------------------------------------------------------------------- *//*      Is this our current module?                                     *//* -------------------------------------------------------------------- */    if( pszModule != NULL && EQUAL(szFullModule,pszModule) )        return TRUE;/* -------------------------------------------------------------------- *//*      Cleanup the previous file, if any.                              *//* -------------------------------------------------------------------- */    if( fpPrimary != NULL )    {        VSIFClose( fpPrimary );        fpPrimary = NULL;    }    if( pszModule != NULL )    {        CPLFree( pszModule );        pszModule = NULL;    }/* -------------------------------------------------------------------- *//*      Is this a module we have never written to before?  If so, we    *//*      will try to blow away any existing files in this file set.      *//* -------------------------------------------------------------------- */    if( !poDS->CheckModule( szFullModule ) )    {        poDS->DeleteModuleFiles( szFullModule );        poDS->AddModule( szFullModule );    }    /* -------------------------------------------------------------------- *//*      Does this file already exist?                                   *//* -------------------------------------------------------------------- */    const char *pszFilename;    pszFilename = poDS->BuildFilename( szFullModule, pszExtension );    fpPrimary = VSIFOpen( pszFilename, "ab" );    if( fpPrimary == NULL )        return FALSE;    pszModule = CPLStrdup( szFullModule );    return TRUE;}/************************************************************************//*                           AddFieldDefns()                            *//************************************************************************/void TigerFileBase::AddFieldDefns(TigerRecordInfo *psRTInfo,                                  OGRFeatureDefn  *poFeatureDefn){    OGRFieldDefn        oField("",OFTInteger);    int i, bLFieldHack;    bLFieldHack =         CSLTestBoolean( CPLGetConfigOption( "TIGER_LFIELD_AS_STRING", "NO" ) );        for (i=0; i<psRTInfo->nFieldCount; ++i) {        if (psRTInfo->pasFields[i].bDefine) {            OGRFieldType eFT = psRTInfo->pasFields[i].OGRtype;            if( bLFieldHack                 && psRTInfo->pasFields[i].cFmt == 'L'                 && psRTInfo->pasFields[i].cType == 'N' )                eFT = OFTString;            oField.Set( psRTInfo->pasFields[i].pszFieldName, eFT,                         psRTInfo->pasFields[i].nLen );            poFeatureDefn->AddFieldDefn( &oField );        }    }}/************************************************************************//*                             SetFields()                              *//************************************************************************/void TigerFileBase::SetFields(TigerRecordInfo *psRTInfo,                              OGRFeature      *poFeature,                              char            *achRecord){  int i;  for (i=0; i<psRTInfo->nFieldCount; ++i) {    if (psRTInfo->pasFields[i].bSet) {      SetField( poFeature,                psRTInfo->pasFields[i].pszFieldName,                achRecord,                 psRTInfo->pasFields[i].nBeg,                psRTInfo->pasFields[i].nEnd );    }  }}/************************************************************************//*                             WriteField()                             *//************************************************************************/void TigerFileBase::WriteFields(TigerRecordInfo *psRTInfo,                                OGRFeature      *poFeature,                                char            *szRecord){  int i;  for (i=0; i<psRTInfo->nFieldCount; ++i) {    if (psRTInfo->pasFields[i].bWrite) {      WriteField( poFeature,                  psRTInfo->pasFields[i].pszFieldName,                  szRecord,                   psRTInfo->pasFields[i].nBeg,                  psRTInfo->pasFields[i].nEnd,                  psRTInfo->pasFields[i].cFmt,                  psRTInfo->pasFields[i].cType );    }  }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
春色校园综合激情亚洲| 在线中文字幕不卡| 91麻豆蜜桃一区二区三区| 欧美日韩国产美| 国产精品久久久久久亚洲毛片 | 综合激情成人伊人| 蜜臀av性久久久久蜜臀aⅴ| 91在线观看污| xnxx国产精品| 日韩电影在线免费观看| 91啪在线观看| 国产校园另类小说区| 青青青爽久久午夜综合久久午夜| 日本高清不卡一区| 久久精品在这里| 奇米色一区二区三区四区| 在线一区二区三区四区五区 | 精品国产乱码久久久久久影片| 亚洲柠檬福利资源导航| 国产成人午夜视频| 精品国产不卡一区二区三区| 日韩和欧美的一区| 91.xcao| 亚洲国产日产av| 95精品视频在线| 中文av一区二区| 国产精品一级片在线观看| 久久午夜免费电影| 国产呦萝稀缺另类资源| 日韩欧美国产麻豆| 秋霞电影网一区二区| 欧美一级高清片在线观看| 亚洲国产日韩a在线播放| 欧美色涩在线第一页| 一区二区免费看| 91精品办公室少妇高潮对白| 一区二区三区中文字幕在线观看| 在线观看一区日韩| 亚洲大片免费看| 日韩欧美精品在线| 国产真实乱对白精彩久久| 久久久久久夜精品精品免费| 国产精品 日产精品 欧美精品| 久久夜色精品国产噜噜av| 国产精品一二一区| 亚洲乱码国产乱码精品精小说| 91在线观看美女| 一级做a爱片久久| 欧美日韩另类一区| 久久草av在线| 国产精品久久久久久户外露出| 99re这里只有精品首页| 亚洲成a人片在线不卡一二三区| 7777女厕盗摄久久久| 久久99精品国产麻豆婷婷洗澡| 久久久久久久电影| 99久久久无码国产精品| 亚洲成精国产精品女| 日韩欧美视频一区| 不卡一区二区三区四区| 一个色在线综合| 久久亚洲精华国产精华液| 97se狠狠狠综合亚洲狠狠| 青青草97国产精品免费观看无弹窗版| 亚洲精品一区二区三区四区高清| 国产成人精品影院| 亚洲综合丝袜美腿| 久久天天做天天爱综合色| 色婷婷激情久久| 久久66热re国产| 亚洲精品欧美激情| 国产偷国产偷精品高清尤物| 在线亚洲欧美专区二区| 久久精品国产亚洲aⅴ| 1区2区3区国产精品| 91精品国产手机| 91国偷自产一区二区三区成为亚洲经典| 男女视频一区二区| 亚洲人成网站色在线观看| 精品1区2区在线观看| 欧美综合一区二区| 国产成人精品网址| 蜜桃视频一区二区三区| 亚洲丝袜制服诱惑| 久久精品视频网| 欧美一区二区三区免费大片| 91在线观看高清| 福利视频网站一区二区三区| 日韩激情视频网站| 亚洲一级二级在线| 亚洲欧洲av在线| 久久久精品免费免费| 日韩午夜激情免费电影| 在线观看视频欧美| av电影天堂一区二区在线观看| 激情综合亚洲精品| 日韩av中文字幕一区二区 | 国产精品进线69影院| 亚洲精品在线免费播放| 91精品欧美一区二区三区综合在| 色综合天天性综合| 成人激情文学综合网| 国内精品写真在线观看| 蜜桃精品在线观看| 午夜免费欧美电影| 亚洲成人动漫在线观看| 亚洲国产日韩a在线播放性色| 亚洲日本在线天堂| 亚洲视频免费在线观看| 日韩一区在线播放| 中文字幕在线播放不卡一区| 国产欧美一区视频| 中文幕一区二区三区久久蜜桃| 久久综合久久久久88| 久久婷婷国产综合国色天香| 久久综合久久99| 精品国产精品网麻豆系列| 欧美一级片在线观看| 日韩精品资源二区在线| 久久伊人中文字幕| 国产欧美精品日韩区二区麻豆天美| 欧美极品aⅴ影院| 中文字幕精品三区| 成人免费在线视频观看| 夜夜精品视频一区二区| 五月天一区二区| 奇米777欧美一区二区| 久久99精品国产.久久久久久| 精品无人码麻豆乱码1区2区 | 91久久免费观看| 欧美视频自拍偷拍| 日韩女优毛片在线| 国产调教视频一区| 亚洲欧美激情视频在线观看一区二区三区 | 国产精品国产三级国产| 亚洲六月丁香色婷婷综合久久| 亚洲综合久久久| 天堂影院一区二区| 国产成人av一区二区三区在线| 成人性生交大片免费看视频在线 | 亚洲日本在线天堂| 亚洲国产视频网站| 国产一区二区三区视频在线播放| 粉嫩av一区二区三区粉嫩| 在线看不卡av| 久久色.com| 亚洲成人资源网| 国产精品一品二品| 欧美日精品一区视频| 精品国精品国产尤物美女| 一区精品在线播放| 毛片av一区二区| 97精品超碰一区二区三区| 日韩视频在线一区二区| 中文字幕一区二区三区四区不卡| 亚洲国产aⅴ天堂久久| 国产成人综合在线观看| 欧美三级视频在线播放| 国产网红主播福利一区二区| 亚洲第一av色| 91小视频免费观看| 精品99999| 同产精品九九九| 北岛玲一区二区三区四区| 日韩亚洲欧美综合| 亚洲男人的天堂av| 国产精品一品视频| 日韩精品一区二区三区视频在线观看| 最近日韩中文字幕| 国产成人在线色| 日韩精品一区二区三区中文不卡| 亚洲国产日韩一区二区| av电影天堂一区二区在线 | 欧美一级二级三级乱码| 最新不卡av在线| 国产白丝网站精品污在线入口| 欧美日韩你懂得| 一级精品视频在线观看宜春院| 不卡av电影在线播放| 久久午夜羞羞影院免费观看| 日本成人中文字幕| 欧美区在线观看| 亚洲一区二区三区不卡国产欧美| a级精品国产片在线观看| 久久人人超碰精品| 久久er99热精品一区二区| 欧美精品日韩精品| 五月天激情小说综合| 欧美四级电影在线观看| 樱桃国产成人精品视频| 97超碰欧美中文字幕| 中文字幕一区在线观看| 99视频国产精品| 国产精品麻豆久久久| 高清在线成人网| 国产精品理伦片| proumb性欧美在线观看| 国产精品久久毛片av大全日韩| 国产成人精品一区二区三区网站观看| 久久久久久久综合日本|