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

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

?? ogrs57layer.cpp

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? CPP
字號:
/****************************************************************************** * $Id: ogrs57layer.cpp 10646 2007-01-18 02:38:10Z warmerdam $ * * Project:  S-57 Translator * Purpose:  Implements OGRS57Layer class. * Author:   Frank Warmerdam, warmerdam@pobox.com * ****************************************************************************** * Copyright (c) 1999, Frank Warmerdam * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. ****************************************************************************/#include "ogr_s57.h"#include "cpl_conv.h"#include "cpl_string.h"CPL_CVSID("$Id: ogrs57layer.cpp 10646 2007-01-18 02:38:10Z warmerdam $");/************************************************************************//*                            OGRS57Layer()                             *//*                                                                      *//*      Note that the OGRS57Layer assumes ownership of the passed       *//*      OGRFeatureDefn object.                                          *//************************************************************************/OGRS57Layer::OGRS57Layer( OGRS57DataSource *poDSIn,                          OGRFeatureDefn * poDefnIn,                          int nFeatureCountIn,                          int nOBJLIn){    poDS = poDSIn;    nFeatureCount = nFeatureCountIn;    poFeatureDefn = poDefnIn;    nOBJL = nOBJLIn;    nNextFEIndex = 0;    nCurrentModule = -1;    if( EQUAL(poDefnIn->GetName(),OGRN_VI) )        nRCNM = RCNM_VI;    else if( EQUAL(poDefnIn->GetName(),OGRN_VC) )        nRCNM = RCNM_VC;    else if( EQUAL(poDefnIn->GetName(),OGRN_VE) )        nRCNM = RCNM_VE;    else if( EQUAL(poDefnIn->GetName(),OGRN_VF) )        nRCNM = RCNM_VF;    else if( EQUAL(poDefnIn->GetName(),"DSID") )        nRCNM = RCNM_DSID;    else         nRCNM = 100;  /* feature */}/************************************************************************//*                           ~OGRS57Layer()                           *//************************************************************************/OGRS57Layer::~OGRS57Layer(){    if( m_nFeaturesRead > 0 && poFeatureDefn != NULL )    {        CPLDebug( "S57", "%d features read on layer '%s'.",                  (int) m_nFeaturesRead,                   poFeatureDefn->GetName() );    }    poFeatureDefn->Release();}/************************************************************************//*                            ResetReading()                            *//************************************************************************/void OGRS57Layer::ResetReading(){    nNextFEIndex = 0;    nCurrentModule = -1;}/************************************************************************//*                      GetNextUnfilteredFeature()                      *//************************************************************************/OGRFeature *OGRS57Layer::GetNextUnfilteredFeature(){    OGRFeature  *poFeature = NULL;    /* -------------------------------------------------------------------- *//*      Are we out of modules to request features from?                 *//* -------------------------------------------------------------------- */    if( nCurrentModule >= poDS->GetModuleCount() )        return NULL;/* -------------------------------------------------------------------- *//*      Set the current position on the current module and fetch a      *//*      feature.                                                        *//* -------------------------------------------------------------------- */    S57Reader   *poReader = poDS->GetModule(nCurrentModule);        if( poReader != NULL )    {        poReader->SetNextFEIndex( nNextFEIndex, nRCNM );        poFeature = poReader->ReadNextFeature( poFeatureDefn );        nNextFEIndex = poReader->GetNextFEIndex( nRCNM );    }/* -------------------------------------------------------------------- *//*      If we didn't get a feature we need to move onto the next file.  *//* -------------------------------------------------------------------- */    if( poFeature == NULL )    {        nCurrentModule++;        poReader = poDS->GetModule(nCurrentModule);        if( poReader != NULL && poReader->GetModule() == NULL )        {            if( !poReader->Open( FALSE ) )                return NULL;        }        return GetNextUnfilteredFeature();    }    else    {        m_nFeaturesRead++;        if( poFeature->GetGeometryRef() != NULL )            poFeature->GetGeometryRef()->assignSpatialReference(                GetSpatialRef() );    }        return poFeature;}/************************************************************************//*                           GetNextFeature()                           *//************************************************************************/OGRFeature *OGRS57Layer::GetNextFeature(){    OGRFeature  *poFeature = NULL;/* -------------------------------------------------------------------- *//*      Read features till we find one that satisfies our current       *//*      spatial criteria.                                               *//* -------------------------------------------------------------------- */    while( TRUE )    {        poFeature = GetNextUnfilteredFeature();        if( poFeature == NULL )            break;        if( (m_poFilterGeom == NULL             || FilterGeometry(poFeature->GetGeometryRef()) )            && (m_poAttrQuery == NULL                || m_poAttrQuery->Evaluate( poFeature )) )            break;        delete poFeature;    }    return poFeature;}/************************************************************************//*                           TestCapability()                           *//************************************************************************/int OGRS57Layer::TestCapability( const char * pszCap ){    if( EQUAL(pszCap,OLCRandomRead) )        return FALSE;    else if( EQUAL(pszCap,OLCSequentialWrite) )        return TRUE;    else if( EQUAL(pszCap,OLCRandomWrite) )        return FALSE;    else if( EQUAL(pszCap,OLCFastFeatureCount) )        return TRUE;    else if( EQUAL(pszCap,OLCFastGetExtent) )    {        OGREnvelope oEnvelope;        return GetExtent( &oEnvelope, FALSE ) == OGRERR_NONE;    }    else if( EQUAL(pszCap,OLCFastSpatialFilter) )        return FALSE;    else         return FALSE;}/************************************************************************//*                           GetSpatialRef()                            *//************************************************************************/OGRSpatialReference *OGRS57Layer::GetSpatialRef(){    return poDS->GetSpatialRef();}/************************************************************************//*                             GetExtent()                              *//************************************************************************/OGRErr OGRS57Layer::GetExtent( OGREnvelope *psExtent, int bForce ){    return poDS->GetDSExtent( psExtent, bForce );}/************************************************************************//*                          GetFeatureCount()                           *//************************************************************************/int OGRS57Layer::GetFeatureCount (int bForce){        if( m_poFilterGeom != NULL || m_poAttrQuery != NULL         || nFeatureCount == -1 )        return OGRLayer::GetFeatureCount( bForce );    else        return nFeatureCount;}/************************************************************************//*                             GetFeature()                             *//************************************************************************/OGRFeature *OGRS57Layer::GetFeature( long nFeatureId ){    S57Reader   *poReader = poDS->GetModule(0); // not multi-reader aware    if( poReader != NULL )    {        OGRFeature      *poFeature;        poFeature = poReader->ReadFeature( nFeatureId, poFeatureDefn );        if( poFeature != NULL &&  poFeature->GetGeometryRef() != NULL )            poFeature->GetGeometryRef()->assignSpatialReference(                GetSpatialRef() );        return poFeature;    }    else        return NULL;}/************************************************************************//*                           CreateFeature()                            *//************************************************************************/OGRErr OGRS57Layer::CreateFeature( OGRFeature *poFeature ){/* -------------------------------------------------------------------- *//*      Set RCNM if not already set.                                    *//* -------------------------------------------------------------------- */    int iRCNMFld = poFeature->GetFieldIndex( "RCNM" );    if( iRCNMFld != -1 )    {        if( !poFeature->IsFieldSet( iRCNMFld ) )            poFeature->SetField( iRCNMFld, nRCNM );        else            CPLAssert( poFeature->GetFieldAsInteger( iRCNMFld ) == nRCNM );    }/* -------------------------------------------------------------------- *//*      Set OBJL if not already set.                                    *//* -------------------------------------------------------------------- */    if( nOBJL != -1 )    {        int iOBJLFld = poFeature->GetFieldIndex( "OBJL" );        if( !poFeature->IsFieldSet( iOBJLFld ) )            poFeature->SetField( iOBJLFld, nOBJL );        else            CPLAssert( poFeature->GetFieldAsInteger( iOBJLFld ) == nOBJL );    }/* -------------------------------------------------------------------- *//*      Create the isolated node feature.                               *//* -------------------------------------------------------------------- */    if( poDS->GetWriter()->WriteCompleteFeature( poFeature ) )        return OGRERR_NONE;    else        return OGRERR_FAILURE;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆国产福利精品| 韩国女主播一区二区三区| 国产成人在线网站| 久久久国产一区二区三区四区小说| 另类小说视频一区二区| 日韩精品一区二区三区视频在线观看| 秋霞成人午夜伦在线观看| 91麻豆精品久久久久蜜臀 | 日本一二三不卡| 国产精品一区二区91| 中文字幕精品一区二区三区精品| jizzjizzjizz欧美| 亚洲自拍偷拍麻豆| 欧美大胆人体bbbb| 成人网在线播放| 亚洲影院在线观看| 日韩欧美国产精品| 成人一区二区三区中文字幕| 有坂深雪av一区二区精品| 欧美乱熟臀69xxxxxx| 国产麻豆视频精品| 综合激情网...| 日韩一区二区三区三四区视频在线观看 | 欧美精品一区视频| 91视频com| 青青草91视频| 亚洲欧美在线观看| 日韩亚洲欧美成人一区| 不卡av免费在线观看| 日本不卡在线视频| 亚洲日本中文字幕区| 91精品欧美福利在线观看| 风间由美一区二区av101| 亚洲国产综合在线| 国产精品污网站| 这里是久久伊人| 91网站最新地址| 久久激五月天综合精品| 日韩欧美成人一区二区| 高清国产一区二区三区| 亚洲免费成人av| 精品免费国产一区二区三区四区| 成人精品视频一区二区三区 | 国产成人一级电影| 亚洲精品成人天堂一二三| 欧美一级午夜免费电影| 国产69精品久久久久777| 亚洲国产毛片aaaaa无费看| 久久青草欧美一区二区三区| 一本久久a久久精品亚洲| 日韩av一二三| 国产精品久久久久久户外露出 | 成人免费高清在线观看| 婷婷久久综合九色综合伊人色| 久久久久久亚洲综合影院红桃| 在线观看www91| 国产精品中文有码| 亚洲电影一区二区三区| 亚洲国产精品t66y| 欧美一区中文字幕| 91年精品国产| 久久99精品久久久久久国产越南| 亚洲卡通欧美制服中文| 精品欧美一区二区三区精品久久| 日本道色综合久久| 成人午夜伦理影院| 久久成人久久鬼色| 亚洲成人午夜电影| 亚洲手机成人高清视频| 日韩一区二区免费高清| 欧美区视频在线观看| 成人黄色a**站在线观看| 美日韩黄色大片| 五月婷婷综合网| 亚洲精品国产视频| 中文成人综合网| 欧美精品一区二区久久久| 欧美精品123区| 在线观看一区二区视频| 91丨九色porny丨蝌蚪| 国产69精品久久久久777| 韩国毛片一区二区三区| 毛片av一区二区| 热久久久久久久| 亚洲亚洲精品在线观看| 一区二区三区在线看| 亚洲男人都懂的| 亚洲特黄一级片| 亚洲同性同志一二三专区| 中文字幕av资源一区| 久久网站最新地址| 久久久久久久久岛国免费| 26uuu久久天堂性欧美| 日韩亚洲欧美成人一区| 欧美一区二区三区爱爱| 欧美一区二区三区成人| 在线播放欧美女士性生活| 欧美在线免费观看视频| 欧美亚洲综合色| 欧美精品在线一区二区三区| 欧美日韩国产美女| 3d成人动漫网站| 亚洲精品在线网站| 国产日韩av一区| 亚洲少妇最新在线视频| 亚洲一区视频在线| 亚洲成a人片在线观看中文| 亚洲成av人片www| 日韩1区2区日韩1区2区| 美国十次了思思久久精品导航| 久久电影网电视剧免费观看| 国产精品亚洲综合一区在线观看| 国产成人欧美日韩在线电影| 93久久精品日日躁夜夜躁欧美| 色噜噜狠狠成人网p站| 欧美日韩国产bt| 精品久久久久久最新网址| 久久久久久9999| 日韩一区在线看| 亚洲国产cao| 国产乱国产乱300精品| 91年精品国产| 日韩欧美国产综合| 中文字幕亚洲电影| 亚洲成人第一页| a级高清视频欧美日韩| 色综合一个色综合| 日韩精品一区二区三区视频在线观看 | 国产精品剧情在线亚洲| 亚洲午夜精品久久久久久久久| 奇米精品一区二区三区四区| 国产91精品露脸国语对白| 欧美色图一区二区三区| 久久视频一区二区| 亚洲已满18点击进入久久| 久久爱www久久做| 91丝袜呻吟高潮美腿白嫩在线观看| 成人美女视频在线观看| 欧美视频一区在线观看| 欧美成va人片在线观看| 国产精品久久久久毛片软件| 美女脱光内衣内裤视频久久影院| av一区二区三区在线| 欧美一区二区视频在线观看2020| 国产区在线观看成人精品| 亚洲成人激情自拍| 99久久精品情趣| 欧美哺乳videos| 亚洲妇女屁股眼交7| 国产一区二区三区在线看麻豆| av电影在线观看一区| 国产午夜精品久久久久久久| 日韩有码一区二区三区| 99re在线视频这里只有精品| 日韩欧美一级二级| 亚洲h精品动漫在线观看| 成人午夜免费av| 精品动漫一区二区三区在线观看| 一区二区三区毛片| 成人亚洲一区二区一| 欧美电影免费观看高清完整版在| 亚洲精品欧美在线| 懂色av一区二区三区免费看| 精品美女被调教视频大全网站| 五月天久久比比资源色| 在线一区二区三区四区| 国产精品久久久久久久午夜片| 国产激情精品久久久第一区二区 | 久久精品一二三| 日韩高清不卡一区二区| 色天天综合久久久久综合片| 精品日韩一区二区三区| 日韩电影一区二区三区| 欧美日韩三级一区二区| 亚洲欧美日韩国产另类专区| 国产成人精品亚洲午夜麻豆| 精品国产乱码久久久久久1区2区 | 国产精品小仙女| 精品国产免费人成电影在线观看四季 | 日韩限制级电影在线观看| 亚洲最色的网站| 国产精品一区二区久久不卡 | 欧洲激情一区二区| 亚洲精品免费播放| 色成人在线视频| 亚洲视频一区二区在线| 在线视频一区二区免费| 夜夜操天天操亚洲| 欧美影视一区在线| 亚洲国产aⅴ成人精品无吗| 欧美剧情电影在线观看完整版免费励志电影 | 美国欧美日韩国产在线播放| 欧美一级在线视频| 麻豆精品视频在线| 亚洲精品一区二区三区蜜桃下载| 黄色精品一二区| 中文一区二区完整视频在线观看 | 国产欧美精品一区二区三区四区 | 国产一区二区精品在线观看| 欧美国产日产图区|