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

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

?? ogravclayer.cpp

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
/****************************************************************************** * $Id: ogravclayer.cpp 10646 2007-01-18 02:38:10Z warmerdam $ * * Project:  OGR * Purpose:  Implements OGRAVCLayer class.  This is the base class for E00 *           and binary coverage layer implementations.  It provides some base *           layer operations, and methods for transforming between OGR  *           features, and the in memory structures of the AVC library. * Author:   Frank Warmerdam, warmerdam@pobox.com * ****************************************************************************** * Copyright (c) 2002, Frank Warmerdam <warmerdam@pobox.com> * * 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_avc.h"#include "cpl_conv.h"#include "cpl_string.h"CPL_CVSID("$Id: ogravclayer.cpp 10646 2007-01-18 02:38:10Z warmerdam $");/************************************************************************//*                           OGRAVCLayer()                           *//************************************************************************/OGRAVCLayer::OGRAVCLayer( AVCFileType eSectionTypeIn,                           OGRAVCDataSource *poDSIn ){    eSectionType = eSectionTypeIn;        poFeatureDefn = NULL;    poDS = poDSIn;}/************************************************************************//*                          ~OGRAVCLayer()                           *//************************************************************************/OGRAVCLayer::~OGRAVCLayer(){    if( m_nFeaturesRead > 0 && poFeatureDefn != NULL )    {        CPLDebug( "AVC", "%d features read on layer '%s'.",                  (int) m_nFeaturesRead,                   poFeatureDefn->GetName() );    }    if( poFeatureDefn != NULL )        poFeatureDefn->Release();}/************************************************************************//*                           TestCapability()                           *//************************************************************************/int OGRAVCLayer::TestCapability( const char * pszCap ){    return FALSE;}/************************************************************************//*                           GetSpatialRef()                            *//************************************************************************/OGRSpatialReference *OGRAVCLayer::GetSpatialRef(){    return poDS->GetSpatialRef();}/************************************************************************//*                       SetupFeatureDefinition()                       *//************************************************************************/int OGRAVCLayer::SetupFeatureDefinition( const char *pszName ){    switch( eSectionType )    {      case AVCFileARC:        {            poFeatureDefn = new OGRFeatureDefn( pszName );            poFeatureDefn->Reference();            poFeatureDefn->SetGeomType( wkbLineString );            OGRFieldDefn	oUserId( "UserId", OFTInteger );            OGRFieldDefn	oFNode( "FNODE_", OFTInteger );            OGRFieldDefn	oTNode( "TNODE_", OFTInteger );            OGRFieldDefn	oLPoly( "LPOLY_", OFTInteger );            OGRFieldDefn	oRPoly( "RPOLY_", OFTInteger );            poFeatureDefn->AddFieldDefn( &oUserId );            poFeatureDefn->AddFieldDefn( &oFNode );            poFeatureDefn->AddFieldDefn( &oTNode );            poFeatureDefn->AddFieldDefn( &oLPoly );            poFeatureDefn->AddFieldDefn( &oRPoly );        }        return TRUE;      case AVCFilePAL:      case AVCFileRPL:        {            poFeatureDefn = new OGRFeatureDefn( pszName );            poFeatureDefn->Reference();            poFeatureDefn->SetGeomType( wkbPolygon );            OGRFieldDefn	oArcIds( "ArcIds", OFTIntegerList );            poFeatureDefn->AddFieldDefn( &oArcIds );        }        return TRUE;      case AVCFileCNT:        {            poFeatureDefn = new OGRFeatureDefn( pszName );            poFeatureDefn->Reference();            poFeatureDefn->SetGeomType( wkbPoint );            OGRFieldDefn	oLabelIds( "LabelIds", OFTIntegerList );            poFeatureDefn->AddFieldDefn( &oLabelIds );        }        return TRUE;      case AVCFileLAB:        {            poFeatureDefn = new OGRFeatureDefn( pszName );            poFeatureDefn->Reference();            poFeatureDefn->SetGeomType( wkbPoint );            OGRFieldDefn	oValueId( "ValueId", OFTInteger );            poFeatureDefn->AddFieldDefn( &oValueId );            OGRFieldDefn	oPolyId( "PolyId", OFTInteger );            poFeatureDefn->AddFieldDefn( &oPolyId );        }        return TRUE;      case AVCFileTXT:      case AVCFileTX6:        {            poFeatureDefn = new OGRFeatureDefn( pszName );            poFeatureDefn->Reference();            poFeatureDefn->SetGeomType( wkbPoint );            OGRFieldDefn	oUserId( "UserId", OFTInteger );            poFeatureDefn->AddFieldDefn( &oUserId );            OGRFieldDefn	oText( "Text", OFTString );            poFeatureDefn->AddFieldDefn( &oText );            OGRFieldDefn	oHeight( "Height", OFTReal );            poFeatureDefn->AddFieldDefn( &oHeight );            OGRFieldDefn	oLevel( "Level", OFTInteger );            poFeatureDefn->AddFieldDefn( &oLevel );        }        return TRUE;      default:        poFeatureDefn = NULL;        return FALSE;    }}/************************************************************************//*                          TranslateFeature()                          *//*                                                                      *//*      Translate the AVC structure for a feature to the the            *//*      corresponding OGR definition.  It is assumed that the passed    *//*      in feature is of a type matching the section type               *//*      established by SetupFeatureDefinition().                        *//************************************************************************/OGRFeature *OGRAVCLayer::TranslateFeature( void *pAVCFeature ){    m_nFeaturesRead++;    switch( eSectionType )    {/* ==================================================================== *//*      ARC                                                             *//* ==================================================================== */      case AVCFileARC:      {          AVCArc *psArc = (AVCArc *) pAVCFeature;/* -------------------------------------------------------------------- *//*      Create feature.                                                 *//* -------------------------------------------------------------------- */          OGRFeature *poOGRFeature = new OGRFeature( GetLayerDefn() );          poOGRFeature->SetFID( psArc->nArcId );/* -------------------------------------------------------------------- *//*      Apply the line geometry.                                        *//* -------------------------------------------------------------------- */          OGRLineString *poLine = new OGRLineString();          poLine->setNumPoints( psArc->numVertices );          for( int iVert = 0; iVert < psArc->numVertices; iVert++ )              poLine->setPoint( iVert,                                 psArc->pasVertices[iVert].x,                                 psArc->pasVertices[iVert].y );          poOGRFeature->SetGeometryDirectly( poLine );/* -------------------------------------------------------------------- *//*      Apply attributes.                                               *//* -------------------------------------------------------------------- */          poOGRFeature->SetField( 0, psArc->nUserId );          poOGRFeature->SetField( 1, psArc->nFNode );          poOGRFeature->SetField( 2, psArc->nTNode );          poOGRFeature->SetField( 3, psArc->nLPoly );          poOGRFeature->SetField( 4, psArc->nRPoly );          return poOGRFeature;      }/* ==================================================================== *//*      PAL (Polygon)                                                   *//*      RPL (Region)                                                    *//* ==================================================================== */      case AVCFilePAL:      case AVCFileRPL:      {          AVCPal *psPAL = (AVCPal *) pAVCFeature;/* -------------------------------------------------------------------- *//*      Create feature.                                                 *//* -------------------------------------------------------------------- */          OGRFeature *poOGRFeature = new OGRFeature( GetLayerDefn() );          poOGRFeature->SetFID( psPAL->nPolyId );/* -------------------------------------------------------------------- *//*      Apply attributes.                                               *//* -------------------------------------------------------------------- */          // Setup ArcId list.           int	       *panArcs, i;          panArcs = (int *) CPLMalloc(sizeof(int) * psPAL->numArcs );          for( i = 0; i < psPAL->numArcs; i++ )              panArcs[i] = psPAL->pasArcs[i].nArcId;          poOGRFeature->SetField( 0, psPAL->numArcs, panArcs );          CPLFree( panArcs );          return poOGRFeature;      }/* ==================================================================== *//*      CNT (Centroid)                                                  *//* ==================================================================== */      case AVCFileCNT:      {          AVCCnt *psCNT = (AVCCnt *) pAVCFeature;/* -------------------------------------------------------------------- *//*      Create feature.                                                 *//* -------------------------------------------------------------------- */          OGRFeature *poOGRFeature = new OGRFeature( GetLayerDefn() );          poOGRFeature->SetFID( psCNT->nPolyId );/* -------------------------------------------------------------------- *//*      Apply Geometry                                                  *//* -------------------------------------------------------------------- */          poOGRFeature->SetGeometryDirectly(               new OGRPoint( psCNT->sCoord.x, psCNT->sCoord.y ) );/* -------------------------------------------------------------------- *//*      Apply attributes.                                               *//* -------------------------------------------------------------------- */          poOGRFeature->SetField( 0, psCNT->numLabels, psCNT->panLabelIds );          return poOGRFeature;      }/* ==================================================================== *//*      LAB (Label)                                                     *//* ==================================================================== */      case AVCFileLAB:      {          AVCLab *psLAB = (AVCLab *) pAVCFeature;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀久久99精品久久久久宅男| 欧美不卡在线视频| 91精品国产91热久久久做人人| 91麻豆精品国产| 久久久久久久久久电影| 亚洲欧美自拍偷拍| 亚洲第一会所有码转帖| 九色porny丨国产精品| 国产乱码精品一区二区三区五月婷 | 日本aⅴ免费视频一区二区三区| 久久66热re国产| 成人av中文字幕| 欧美日韩一本到| 久久久亚洲国产美女国产盗摄| 亚洲视频1区2区| 婷婷中文字幕综合| 大桥未久av一区二区三区中文| 欧美偷拍一区二区| 国产日韩欧美制服另类| 亚洲午夜视频在线观看| 国产精品资源在线观看| 欧美亚洲一区三区| 久久精品人人做人人爽人人| 亚洲国产一区视频| 国产激情一区二区三区四区| 欧美色图免费看| 中文字幕二三区不卡| 青青草成人在线观看| 色综合天天狠狠| 欧美精品一区二区高清在线观看| 亚洲精品福利视频网站| 91国产成人在线| 日韩精品专区在线| 亚洲综合激情小说| 成人午夜av影视| 日韩写真欧美这视频| 一区二区视频在线| 福利一区福利二区| 日韩欧美不卡在线观看视频| 亚洲精品国产一区二区三区四区在线| 精品写真视频在线观看| 欧美色视频在线观看| 国产精品毛片久久久久久久 | 2023国产精品视频| 亚洲一区二区精品3399| 成人免费视频网站在线观看| 欧美成人一区二区| 日韩福利视频导航| 欧美性videosxxxxx| 国产精品乱人伦中文| 国产自产2019最新不卡| 欧美丰满一区二区免费视频| 亚洲同性同志一二三专区| 国产一区二区在线视频| 日韩欧美激情一区| 日韩中文欧美在线| 欧美午夜免费电影| 中文字幕一区二区视频| 国产精品一二三四| 日韩亚洲欧美综合| 奇米四色…亚洲| 欧美日本国产视频| 亚洲五月六月丁香激情| 成人免费黄色在线| 欧美国产成人在线| 国产宾馆实践打屁股91| 久久久三级国产网站| 国产麻豆欧美日韩一区| 精品卡一卡二卡三卡四在线| 免费观看日韩av| 日韩一级免费观看| 男人的天堂久久精品| 日韩一区二区三区视频| 波多野结衣中文一区| 亚洲国产成人在线| 成人免费高清在线观看| 中文字幕第一区二区| 丁香婷婷综合网| 国产精品白丝在线| 91尤物视频在线观看| 日韩一区在线播放| 91视频国产观看| 一区二区三区国产精品| 欧美日韩免费在线视频| 日韩精品亚洲一区二区三区免费| 337p亚洲精品色噜噜噜| 另类小说欧美激情| 2021久久国产精品不只是精品| 国产精品中文有码| 国产精品人成在线观看免费| 99视频一区二区三区| 亚洲美女屁股眼交3| 色伊人久久综合中文字幕| 亚洲福利一二三区| 69堂成人精品免费视频| 麻豆视频观看网址久久| 精品精品国产高清一毛片一天堂| 国产呦精品一区二区三区网站| 久久久久久久久蜜桃| 成人精品视频.| 亚洲精品大片www| 欧美一级艳片视频免费观看| 国内精品在线播放| 国产精品久久久久久久久久久免费看| 91尤物视频在线观看| 午夜免费久久看| 日韩欧美一区二区免费| 高清av一区二区| 亚洲成人午夜影院| 2欧美一区二区三区在线观看视频| 成人手机电影网| 夜夜精品浪潮av一区二区三区| 91精品国产一区二区人妖| 国产精品99精品久久免费| 亚洲视频在线一区二区| 欧美高清视频一二三区 | 精品久久久久久综合日本欧美 | 中文字幕中文字幕在线一区| 欧美日本不卡视频| 国产成人在线看| 亚洲国产一区二区在线播放| 久久久午夜电影| 欧美三级日韩在线| 国产成人啪免费观看软件 | 欧美日韩视频在线一区二区| 国产中文一区二区三区| 亚洲精品国产a| 久久综合av免费| 欧美视频在线一区二区三区| 国产一区三区三区| 亚洲午夜激情网站| 中文字幕精品一区二区三区精品 | 人人超碰91尤物精品国产| 中文字幕电影一区| 日韩欧美中文字幕一区| 99re在线精品| 精品一区二区久久久| 一区二区三区四区国产精品| 久久综合给合久久狠狠狠97色69| 欧美三级日本三级少妇99| 成人污视频在线观看| 免费看欧美女人艹b| 一区二区三区影院| 久久久高清一区二区三区| 91麻豆精品国产无毒不卡在线观看 | 99久精品国产| 久久疯狂做爰流白浆xx| 亚洲资源在线观看| 国产三级精品三级在线专区| 制服丝袜亚洲精品中文字幕| 91伊人久久大香线蕉| 国产精品一区二区在线观看不卡| 五月婷婷久久综合| 亚洲人成网站在线| 国产欧美1区2区3区| 日韩三级在线免费观看| 在线观看欧美黄色| 99久久综合色| 国产精品18久久久久久久网站| 日韩高清一区在线| 亚洲综合久久久久| 亚洲色图另类专区| 国产精品情趣视频| 久久久久久久久久久电影| 欧美成人vps| 538在线一区二区精品国产| 色999日韩国产欧美一区二区| 成人黄色av电影| 国产成人在线色| 国产成人精品免费看| 国产最新精品精品你懂的| 麻豆国产欧美日韩综合精品二区| 五月综合激情婷婷六月色窝| 亚洲一区精品在线| 亚洲综合偷拍欧美一区色| 亚洲激情图片小说视频| 亚洲日本va在线观看| 国产精品久久久久影院亚瑟| 国产午夜精品在线观看| 久久久久国产精品麻豆| 久久丝袜美腿综合| 久久久三级国产网站| 久久精品欧美一区二区三区麻豆 | 国产精品一区二区久久不卡| 精品一区二区三区久久久| 日韩精品一区第一页| 日本不卡高清视频| 琪琪一区二区三区| 免费成人美女在线观看| 麻豆国产精品官网| 国产一区二区免费看| 国产一区二区精品久久| 国产传媒欧美日韩成人| 国产99久久久国产精品免费看| 成人在线综合网| 99精品一区二区三区| 91浏览器打开| 欧美三级三级三级| 欧美一区二区在线不卡| 日韩欧美国产电影|