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

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

?? ogrfeature.cpp

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

OGRGeometry *OGRFeature::StealGeometry()

{
    OGRGeometry *poReturn = poGeometry;
    poGeometry = NULL;
    return poReturn;
}

/************************************************************************/
/*                           GetGeometryRef()                           */
/************************************************************************/

/**
 * \fn OGRGeometry *OGRFeature::GetGeometryRef();
 *
 * Fetch pointer to feature geometry.
 *
 * This method is the same as the C function OGR_F_GetGeometryRef().
 *
 * @return pointer to internal feature geometry.  This object should
 * not be modified.
 */

/************************************************************************/
/*                        OGR_F_GetGeometryRef()                        */
/************************************************************************/

/**
 * Fetch an handle to feature geometry.
 *
 * This function is the same as the C++ method OGRFeature::GetGeometryRef().
 *
 * @param hFeat handle to the feature to get geometry from.
 * @return an handle to internal feature geometry.  This object should
 * not be modified.
 */

OGRGeometryH OGR_F_GetGeometryRef( OGRFeatureH hFeat )

{
    return ((OGRFeature *) hFeat)->GetGeometryRef();
}

/************************************************************************/
/*                               Clone()                                */
/************************************************************************/

/**
 * Duplicate feature.
 *
 * The newly created feature is owned by the caller, and will have it's own
 * reference to the OGRFeatureDefn.
 *
 * This method is the same as the C function OGR_F_Clone().
 *
 * @return new feature, exactly matching this feature.
 */

OGRFeature *OGRFeature::Clone()

{
    OGRFeature  *poNew = new OGRFeature( poDefn );

    poNew->SetGeometry( poGeometry );

    for( int i = 0; i < poDefn->GetFieldCount(); i++ )
    {
        poNew->SetField( i, pauFields + i );
    }

    if( GetStyleString() != NULL )
        poNew->SetStyleString(GetStyleString());

    poNew->SetFID( GetFID() );

    return poNew;
}

/************************************************************************/
/*                            OGR_F_Clone()                             */
/************************************************************************/

/**
 * Duplicate feature.
 *
 * The newly created feature is owned by the caller, and will have it's own
 * reference to the OGRFeatureDefn.
 *
 * This function is the same as the C++ method OGRFeature::Clone().
 *
 * @param hFeat handle to the feature to clone.
 * @return an handle to the new feature, exactly matching this feature.
 */

OGRFeatureH OGR_F_Clone( OGRFeatureH hFeat )

{
    return (OGRFeatureH) ((OGRFeature *) hFeat)->Clone();
}

/************************************************************************/
/*                           GetFieldCount()                            */
/************************************************************************/

/**
 * \fn int OGRFeature::GetFieldCount();
 *
 * Fetch number of fields on this feature.  This will always be the same
 * as the field count for the OGRFeatureDefn.
 *
 * This method is the same as the C function OGR_F_GetFieldCount().
 *
 * @return count of fields.
 */

/************************************************************************/
/*                        OGR_F_GetFieldCount()                         */
/************************************************************************/

/**
 * Fetch number of fields on this feature.  This will always be the same
 * as the field count for the OGRFeatureDefn.
 *
 * This function is the same as the C++ method OGRFeature::GetFieldCount().
 *
 * @param hFeat handle to the feature to get the fields count from.
 * @return count of fields.
 */

int OGR_F_GetFieldCount( OGRFeatureH hFeat )

{
    return ((OGRFeature *) hFeat)->GetFieldCount();
}

/************************************************************************/
/*                          GetFieldDefnRef()                           */
/************************************************************************/

/**
 * \fn OGRFieldDefn *OGRFeature::GetFieldDefnRef( int iField );
 *
 * Fetch definition for this field.
 *
 * This method is the same as the C function OGR_F_GetFieldDefnRef().
 *
 * @param iField the field to fetch, from 0 to GetFieldCount()-1.
 *
 * @return the field definition (from the OGRFeatureDefn).  This is an
 * internal reference, and should not be deleted or modified.
 */

/************************************************************************/
/*                       OGR_F_GetFieldDefnRef()                        */
/************************************************************************/

/**
 * Fetch definition for this field.
 *
 * This function is the same as the C++ method OGRFeature::GetFieldDefnRef().
 *
 * @param hFeat handle to the feature on which the field is found.
 * @param i the field to fetch, from 0 to GetFieldCount()-1.
 *
 * @return an handle to the field definition (from the OGRFeatureDefn).
 * This is an internal reference, and should not be deleted or modified.
 */

OGRFieldDefnH OGR_F_GetFieldDefnRef( OGRFeatureH hFeat, int i )

{
    return (OGRFieldDefnH) ((OGRFeature *) hFeat)->GetFieldDefnRef(i);
}

/************************************************************************/
/*                           GetFieldIndex()                            */
/************************************************************************/

/**
 * \fn int OGRFeature::GetFieldIndex( const char * pszName );
 * 
 * Fetch the field index given field name.
 *
 * This is a cover for the OGRFeatureDefn::GetFieldIndex() method. 
 *
 * This method is the same as the C function OGR_F_GetFieldIndex().
 *
 * @param pszName the name of the field to search for. 
 *
 * @return the field index, or -1 if no matching field is found.
 */

/************************************************************************/
/*                        OGR_F_GetFieldIndex()                         */
/************************************************************************/

/**
 * Fetch the field index given field name.
 *
 * This is a cover for the OGRFeatureDefn::GetFieldIndex() method. 
 *
 * This function is the same as the C++ method OGRFeature::GetFieldIndex().
 *
 * @param hFeat handle to the feature on which the field is found.
 * @param pszName the name of the field to search for. 
 *
 * @return the field index, or -1 if no matching field is found.
 */

int OGR_F_GetFieldIndex( OGRFeatureH hFeat, const char *pszName )

{
    return ((OGRFeature *) hFeat)->GetFieldIndex( pszName );
}

/************************************************************************/
/*                             IsFieldSet()                             */
/************************************************************************/

/**
 * \fn int OGRFeature::IsFieldSet( int iField );
 *
 * Test if a field has ever been assigned a value or not.
 *
 * This method is the same as the C function OGR_F_IsFieldSet().
 *
 * @param iField the field to test.
 *
 * @return TRUE if the field has been set, otherwise false.
 */

/************************************************************************/
/*                          OGR_F_IsFieldSet()                          */
/************************************************************************/

/**
 * Test if a field has ever been assigned a value or not.
 *
 * This function is the same as the C++ method OGRFeature::IsFieldSet().
 *
 * @param hFeat handle to the feature on which the field is.
 * @param iField the field to test.
 *
 * @return TRUE if the field has been set, otherwise false.
 */

int OGR_F_IsFieldSet( OGRFeatureH hFeat, int iField )

{
    return ((OGRFeature *)hFeat)->IsFieldSet( iField );
}

/************************************************************************/
/*                             UnsetField()                             */
/************************************************************************/

/**
 * Clear a field, marking it as unset.
 *
 * This method is the same as the C function OGR_F_UnsetField().
 *
 * @param iField the field to unset.
 */

void OGRFeature::UnsetField( int iField )

{
    OGRFieldDefn        *poFDefn = poDefn->GetFieldDefn( iField );

    CPLAssert( poFDefn != NULL || iField == -1 );
    if( poFDefn == NULL || !IsFieldSet(iField) )
        return;
    
    switch( poFDefn->GetType() )
    {
      case OFTRealList:
      case OFTIntegerList:
        CPLFree( pauFields[iField].IntegerList.paList );
        break;

      case OFTStringList:
        CSLDestroy( pauFields[iField].StringList.paList );
        break;

      case OFTString:
        CPLFree( pauFields[iField].String );
        break;

      case OFTBinary:
        CPLFree( pauFields[iField].Binary.paData );
        break;

      default:
        break;
    }

    pauFields[iField].Set.nMarker1 = OGRUnsetMarker;
    pauFields[iField].Set.nMarker2 = OGRUnsetMarker;
}

/************************************************************************/
/*                          OGR_F_UnsetField()                          */
/************************************************************************/

/**
 * Clear a field, marking it as unset.
 *
 * This function is the same as the C++ method OGRFeature::UnsetField().
 *
 * @param hFeat handle to the feature on which the field is.
 * @param iField the field to unset.
 */

void OGR_F_UnsetField( OGRFeatureH hFeat, int iField )

{
    ((OGRFeature *) hFeat)->UnsetField( iField );
}

/************************************************************************/
/*                           GetRawFieldRef()                           */
/************************************************************************/

/**
 * \fn OGRField *OGRFeature::GetRawFieldRef( int iField );
 *
 * Fetch a pointer to the internal field value given the index.  
 *
 * This method is the same as the C function OGR_F_GetRawFieldRef().
 *
 * @param iField the field to fetch, from 0 to GetFieldCount()-1.
 *
 * @return the returned pointer is to an internal data structure, and should
 * not be freed, or modified. 
 */

/************************************************************************/
/*                        OGR_F_GetRawFieldRef()                        */
/************************************************************************/

/**
 * Fetch an handle to the internal field value given the index.  
 *
 * This function is the same as the C++ method OGRFeature::GetRawFieldRef().
 *
 * @param hFeat handle to the feature on which field is found.
 * @param iField the field to fetch, from 0 to GetFieldCount()-1.
 *
 * @return the returned handle is to an internal data structure, and should
 * not be freed, or modified. 
 */

OGRField *OGR_F_GetRawFieldRef( OGRFeatureH hFeat, int iField )

{
    return ((OGRFeature *)hFeat)->GetRawFieldRef( iField );
}

/************************************************************************/
/*                         GetFieldAsInteger()                          */
/************************************************************************/

/**
 * Fetch field value as integer.
 *
 * OFTString features will be translated using atoi().  OFTReal fields
 * will be cast to integer.   Other field types, or errors will result in
 * a return value of zero.
 *
 * This method is the same as the C function OGR_F_GetFieldAsInteger().
 *
 * @param iField the field to fetch, from 0 to GetFieldCount()-1.
 *
 * @return the field value.
 */

int OGRFeature::GetFieldAsInteger( int iField )

{
    int iSpecialField = iField - poDefn->GetFieldCount();
    if (iSpecialField >= 0)
    {
    // special field value accessors
        switch (iSpecialField)
        {
        case SPF_FID:
            return GetFID();
        default:
            return 0;
        }
    }
    
    OGRFieldDefn        *poFDefn = poDefn->GetFieldDefn( iField );
    
    CPLAssert( poFDefn != NULL || iField == -1 );
    if( poFDefn == NULL )
        return 0;
    
    if( !IsFieldSet(iField) )
        return 0;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区四区在线观看| fc2成人免费人成在线观看播放 | 亚洲尤物视频在线| 国产一区中文字幕| 欧美日韩亚洲丝袜制服| 国产亚洲欧美日韩日本| 亚洲va天堂va国产va久| 成人黄色免费短视频| 欧美一级日韩一级| 亚洲欧美国产三级| 成人理论电影网| 久久免费美女视频| 蜜臀av一级做a爰片久久| 91成人免费在线视频| 中文字幕在线一区| 九九久久精品视频| 日韩一区二区三区三四区视频在线观看 | 欧美日韩视频在线观看一区二区三区| 久久亚洲一区二区三区明星换脸 | 91麻豆精品国产91久久久更新时间| 国产精品理论片在线观看| 久久er精品视频| 91麻豆精品国产91久久久资源速度| 亚洲精品国产一区二区精华液 | 国产一区二区三区免费在线观看| 成人av第一页| 国产精品无码永久免费888| 精品1区2区3区| 午夜电影网亚洲视频| 五月婷婷综合在线| 欧美亚洲禁片免费| 一区二区成人在线| 欧美影院一区二区| 亚洲国产成人高清精品| 欧美日韩美女一区二区| 性久久久久久久久| 欧美高清dvd| 老司机免费视频一区二区| 精品国产乱码久久久久久久久| 精品一区二区三区香蕉蜜桃| 亚洲精品在线三区| 国产成人精品免费视频网站| 成人欧美一区二区三区黑人麻豆| av成人老司机| 亚洲自拍都市欧美小说| 91精品国产综合久久精品app| 日韩av中文在线观看| 欧美白人最猛性xxxxx69交| 精品一区二区三区免费毛片爱| 精品国产三级a在线观看| 国产精品一色哟哟哟| 中文字幕欧美一| 欧美色综合影院| 麻豆精品一区二区av白丝在线| 精品电影一区二区三区| av在线播放一区二区三区| 亚洲一二三专区| 91精品麻豆日日躁夜夜躁| 国产老肥熟一区二区三区| 国产精品色呦呦| 欧美四级电影在线观看| 久久99精品网久久| 欧美精品一区二区精品网| 99久久久久免费精品国产| 亚洲一本大道在线| 久久这里只有精品视频网| 一本一道久久a久久精品| 亚洲一区二区在线播放相泽 | 国产综合成人久久大片91| 欧美激情一区在线观看| 在线观看成人小视频| 麻豆一区二区99久久久久| 国产精品人成在线观看免费| 欧美日韩一区 二区 三区 久久精品| 老司机精品视频一区二区三区| 国产精品久久久久久久久久免费看| 欧美熟乱第一页| 国产成人精品一区二区三区四区| 午夜免费久久看| 亚洲欧美二区三区| 精品欧美乱码久久久久久1区2区| 色综合久久综合网欧美综合网 | 性久久久久久久久| 国产精品初高中害羞小美女文| 欧美一区二区视频观看视频| 北岛玲一区二区三区四区| 奇米综合一区二区三区精品视频| 国产精品乱子久久久久| 精品精品国产高清a毛片牛牛| 91福利视频在线| 不卡影院免费观看| 国产一区二区三区精品欧美日韩一区二区三区 | 狠狠色狠狠色合久久伊人| 一区二区三区四区视频精品免费| 久久久久久久久久久久电影 | 日本午夜一区二区| 一区二区视频在线| 国产精品日韩成人| 精品对白一区国产伦| 欧美一区二区网站| 欧美在线一区二区| 色婷婷亚洲综合| www.亚洲色图| a在线播放不卡| 成人高清视频在线观看| 国产精品综合av一区二区国产馆| 奇米888四色在线精品| 丝袜亚洲精品中文字幕一区| 亚洲国产日韩精品| 亚洲一区二区在线播放相泽| 一区二区三区精品在线观看| 亚洲丝袜制服诱惑| 亚洲欧美日韩小说| 亚洲精品国久久99热| 亚洲一级二级三级| 视频在线观看国产精品| 免费国产亚洲视频| 精品一区中文字幕| 国产99久久久国产精品免费看| 成人一级片在线观看| 不卡一区二区在线| 91丝袜呻吟高潮美腿白嫩在线观看| 不卡视频一二三| 色哟哟在线观看一区二区三区| 不卡的电视剧免费网站有什么| 波多野结衣在线一区| 99免费精品视频| 欧美性受xxxx| 日韩一级片在线播放| 日韩午夜av一区| 久久综合资源网| 国产精品天天摸av网| 成人欧美一区二区三区视频网页 | 在线观看精品一区| 6080亚洲精品一区二区| 精品欧美一区二区久久| 国产精品麻豆网站| 一区二区欧美精品| 日本网站在线观看一区二区三区 | 99久久国产综合精品色伊 | 日韩精品一区第一页| 狠狠色狠狠色综合系列| 成人av在线播放网站| 欧美视频一区二| 久久精品一区二区三区av| 亚洲欧美色图小说| 免费高清视频精品| 99久久免费精品| 欧美一区永久视频免费观看| 国产清纯白嫩初高生在线观看91 | 麻豆一区二区三| 99久久免费视频.com| 欧美一区二区三区免费在线看| 国产亚洲欧美日韩俺去了| 亚洲国产视频a| 国产成人av影院| 欧美精品一二三区| 国产精品网站在线观看| 青青草成人在线观看| 不卡的av电影| 欧美不卡视频一区| 一区二区三区影院| 成人免费视频app| 欧美一区二区三区色| 亚洲人成小说网站色在线| 麻豆免费看一区二区三区| 色94色欧美sute亚洲线路二| 久久久亚洲综合| 日韩电影在线免费| 色哟哟一区二区在线观看| 久久久精品蜜桃| 天堂成人国产精品一区| 99国产欧美另类久久久精品| 欧美成人精精品一区二区频| 亚洲高清视频的网址| 99久久精品国产导航| 国产三级欧美三级日产三级99| 日韩精彩视频在线观看| 91色在线porny| 国产欧美日韩精品a在线观看| 久久国产精品露脸对白| 欧美日韩成人激情| 一区二区高清视频在线观看| 福利一区福利二区| 久久久噜噜噜久噜久久综合| 免费成人深夜小野草| 欧美卡1卡2卡| 亚洲国产精品一区二区久久恐怖片| 91在线你懂得| 国产精品久久久久久久久搜平片 | 亚洲人精品一区| 成人动漫av在线| 欧美激情在线一区二区| 国产综合色产在线精品| 精品久久国产97色综合| 九九国产精品视频| 精品国产免费视频| 精品一区二区三区视频在线观看| 精品99一区二区| 国产毛片一区二区|