⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ogrlayer.cpp

📁 用于读取TAB、MIF、SHP文件的类
💻 CPP
📖 第 1 页 / 共 3 页
字号:
}/************************************************************************//*                          OGR_L_GetExtent()                           *//************************************************************************/OGRErr OGR_L_GetExtent( OGRLayerH hLayer, OGREnvelope *psExtent, int bForce ){    return ((OGRLayer *) hLayer)->GetExtent( psExtent, bForce );}/************************************************************************//*                         SetAttributeFilter()                         *//************************************************************************/OGRErr OGRLayer::SetAttributeFilter( const char *pszQuery ){/* -------------------------------------------------------------------- *//*      Are we just clearing any existing query?                        *//* -------------------------------------------------------------------- */    if( pszQuery == NULL || strlen(pszQuery) == 0 )    {        if( m_poAttrQuery )        {            delete m_poAttrQuery;            m_poAttrQuery = NULL;            ResetReading();        }        return OGRERR_NONE;    }/* -------------------------------------------------------------------- *//*      Or are we installing a new query?                               *//* -------------------------------------------------------------------- */    OGRErr      eErr;    if( !m_poAttrQuery )        m_poAttrQuery = new OGRFeatureQuery();    eErr = m_poAttrQuery->Compile( GetLayerDefn(), pszQuery );    if( eErr != OGRERR_NONE )    {        delete m_poAttrQuery;        m_poAttrQuery = NULL;    }    ResetReading();    return eErr;}/************************************************************************//*                      OGR_L_SetAttributeFilter()                      *//************************************************************************/OGRErr OGR_L_SetAttributeFilter( OGRLayerH hLayer, const char *pszQuery ){    return ((OGRLayer *) hLayer)->SetAttributeFilter( pszQuery );}/************************************************************************//*                             GetFeature()                             *//************************************************************************/OGRFeature *OGRLayer::GetFeature( long nFID ){    OGRFeature *poFeature;    ResetReading();    while( (poFeature = GetNextFeature()) != NULL )    {        if( poFeature->GetFID() == nFID )            return poFeature;        else            delete poFeature;    }        return NULL;}/************************************************************************//*                          OGR_L_GetFeature()                          *//************************************************************************/OGRFeatureH OGR_L_GetFeature( OGRLayerH hLayer, long nFeatureId ){    return (OGRFeatureH) ((OGRLayer *)hLayer)->GetFeature( nFeatureId );}/************************************************************************//*                           SetNextByIndex()                           *//************************************************************************/OGRErr OGRLayer::SetNextByIndex( long nIndex ){    OGRFeature *poFeature;    ResetReading();    while( nIndex-- > 0 )    {        poFeature = GetNextFeature();        if( poFeature == NULL )            return OGRERR_FAILURE;        delete poFeature;    }    return OGRERR_NONE;}/************************************************************************//*                        OGR_L_SetNextByIndex()                        *//************************************************************************/OGRErr OGR_L_SetNextByIndex( OGRLayerH hLayer, long nIndex ){    return ((OGRLayer *)hLayer)->SetNextByIndex( nIndex );}/************************************************************************//*                        OGR_L_GetNextFeature()                        *//************************************************************************/OGRFeatureH OGR_L_GetNextFeature( OGRLayerH hLayer ){    return (OGRFeatureH) ((OGRLayer *)hLayer)->GetNextFeature();}/************************************************************************//*                             SetFeature()                             *//************************************************************************/OGRErr OGRLayer::SetFeature( OGRFeature * ){    return OGRERR_UNSUPPORTED_OPERATION;}/************************************************************************//*                          OGR_L_SetFeature()                          *//************************************************************************/OGRErr OGR_L_SetFeature( OGRLayerH hLayer, OGRFeatureH hFeat ){    return ((OGRLayer *)hLayer)->SetFeature( (OGRFeature *) hFeat );}/************************************************************************//*                           CreateFeature()                            *//************************************************************************/OGRErr OGRLayer::CreateFeature( OGRFeature * ){    return OGRERR_UNSUPPORTED_OPERATION;}/************************************************************************//*                        OGR_L_CreateFeature()                         *//************************************************************************/OGRErr OGR_L_CreateFeature( OGRLayerH hLayer, OGRFeatureH hFeat ){    return ((OGRLayer *) hLayer)->CreateFeature( (OGRFeature *) hFeat );}/************************************************************************//*                              GetInfo()                               *//************************************************************************/const char *OGRLayer::GetInfo( const char * pszTag ){    (void) pszTag;    return NULL;}/************************************************************************//*                            CreateField()                             *//************************************************************************/OGRErr OGRLayer::CreateField( OGRFieldDefn * poField, int bApproxOK ){    (void) poField;    (void) bApproxOK;    CPLError( CE_Failure, CPLE_NotSupported,              "CreateField() not supported by this layer.\n" );                  return OGRERR_UNSUPPORTED_OPERATION;}/************************************************************************//*                         OGR_L_CreateField()                          *//************************************************************************/OGRErr OGR_L_CreateField( OGRLayerH hLayer, OGRFieldDefnH hField,                           int bApproxOK ){    return ((OGRLayer *) hLayer)->CreateField( (OGRFieldDefn *) hField,                                                bApproxOK );}/************************************************************************//*                          StartTransaction()                          *//************************************************************************/OGRErr OGRLayer::StartTransaction(){    return OGRERR_NONE;}/************************************************************************//*                       OGR_L_StartTransaction()                       *//************************************************************************/OGRErr OGR_L_StartTransaction( OGRLayerH hLayer ){    return ((OGRLayer *)hLayer)->StartTransaction();}/************************************************************************//*                         CommitTransaction()                          *//************************************************************************/OGRErr OGRLayer::CommitTransaction(){    return OGRERR_NONE;}/************************************************************************//*                       OGR_L_CommitTransaction()                      *//************************************************************************/OGRErr OGR_L_CommitTransaction( OGRLayerH hLayer ){    return ((OGRLayer *)hLayer)->CommitTransaction();}/************************************************************************//*                        RollbackTransaction()                         *//************************************************************************/OGRErr OGRLayer::RollbackTransaction(){    return OGRERR_UNSUPPORTED_OPERATION;}/************************************************************************//*                     OGR_L_RollbackTransaction()                      *//************************************************************************/OGRErr OGR_L_RollbackTransaction( OGRLayerH hLayer ){    return ((OGRLayer *)hLayer)->RollbackTransaction();}/************************************************************************//*                         OGR_L_GetLayerDefn()                         *//************************************************************************/OGRFeatureDefnH OGR_L_GetLayerDefn( OGRLayerH hLayer ){    return (OGRFeatureDefnH) ((OGRLayer *)hLayer)->GetLayerDefn();}/************************************************************************//*                        OGR_L_GetSpatialRef()                         *//************************************************************************/OGRSpatialReferenceH OGR_L_GetSpatialRef( OGRLayerH hLayer ){    return (OGRSpatialReferenceH) ((OGRLayer *) hLayer)->GetSpatialRef();}/************************************************************************//*                        OGR_L_TestCapability()                        *//************************************************************************/int OGR_L_TestCapability( OGRLayerH hLayer, const char *pszCap ){    return ((OGRLayer *) hLayer)->TestCapability( pszCap );}/************************************************************************//*                          GetSpatialFilter()                          *//************************************************************************/OGRGeometry *OGRLayer::GetSpatialFilter(){    return m_poFilterGeom;}/************************************************************************//*                       OGR_L_GetSpatialFilter()                       *//************************************************************************/OGRGeometryH OGR_L_GetSpatialFilter( OGRLayerH hLayer ){    return (OGRGeometryH) ((OGRLayer *) hLayer)->GetSpatialFilter();}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -