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

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

?? ntf_estlayers.cpp

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
/****************************************************************************** * $Id: ntf_estlayers.cpp 10646 2007-01-18 02:38:10Z warmerdam $ * * Project:  NTF Translator * Purpose:  NTFFileReader methods related to establishing the schemas *           of features that could occur in this product and the functions *           for actually performing the NTFRecord to OGRFeature conversion. * 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 <stdarg.h>#include "ntf.h"#include "cpl_string.h"CPL_CVSID("$Id: ntf_estlayers.cpp 10646 2007-01-18 02:38:10Z warmerdam $");#define MAX_LINK        5000/************************************************************************//*                         TranslateCodePoint()                         *//*                                                                      *//*      Used for code point, and code point plus.                       *//************************************************************************/static OGRFeature *TranslateCodePoint( NTFFileReader *poReader,                                       OGRNTFLayer *poLayer,                                       NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_POINTREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // POINT_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // Geometry    poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1]));    // Attributes    if( EQUAL(poLayer->GetLayerDefn()->GetName(),"CODE_POINT") )        poReader->ApplyAttributeValues( poFeature, papoGroup,                                        "PC", 1, "PQ", 2, "PR", 3, "TP", 4,                                        "DQ", 5, "RP", 6, "BP", 7, "PD", 8,                                        "MP", 9, "UM", 10, "RV", 11,                                         NULL );    else        poReader->ApplyAttributeValues( poFeature, papoGroup,                                        "PC", 1, "PQ", 2, "PR", 3, "TP", 4,                                        "DQ", 5, "RP", 6, "BP", 7, "PD", 8,                                        "MP", 9, "UM", 10, "RV", 11,                                        "RH", 12, "LH", 13, "CC", 14,                                        "DC", 15, "WC", 16,                                         NULL );    return poFeature;}/************************************************************************//*                       TranslateAddressPoint()                        *//************************************************************************/static OGRFeature *TranslateAddressPoint( NTFFileReader *poReader,                                          OGRNTFLayer *poLayer,                                          NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_POINTREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // POINT_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // CHG_TYPE    poFeature->SetField( 17, papoGroup[0]->GetField( 22, 22 ) );    // CHG_DATE    poFeature->SetField( 18, papoGroup[0]->GetField( 23, 28 ) );    // Geometry    poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1]));    // Attributes    poReader->ApplyAttributeValues( poFeature, papoGroup,                                    "OA", 1, "ON", 2, "DP", 3, "PB", 4,                                    "SB", 5, "BD", 6, "BN", 7, "DR", 8,                                    "TN", 9, "DD", 10, "DL", 11, "PT", 12,                                    "CN", 13, "PC", 14, "SF", 15, "RV", 16,                                    NULL );    return poFeature;}/************************************************************************//*                        TranslateOscarPoint()                         *//*                                                                      *//*      Used for OSCAR Traffic and Asset datasets.                      *//************************************************************************/static OGRFeature *TranslateOscarPoint( NTFFileReader *poReader,                                        OGRNTFLayer *poLayer,                                        NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_POINTREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // POINT_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // Geometry    int         nGeomId;        poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1],                                                             &nGeomId));    poFeature->SetField( 1, nGeomId );    // Attributes    poReader->ApplyAttributeValues( poFeature, papoGroup,                                    "FC", 2, "OD", 3, "JN", 4, "SN", 5,                                    NULL );    return poFeature;}/************************************************************************//*                         TranslateOscarLine()                         *//************************************************************************/static OGRFeature *TranslateOscarLine( NTFFileReader *poReader,                                       OGRNTFLayer *poLayer,                                       NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_LINEREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // LINE_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // Geometry    int         nGeomId;        poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1],                                                             &nGeomId));    poFeature->SetField( 1, nGeomId );    // Attributes    poReader->ApplyAttributeValues( poFeature, papoGroup,                                    "FC", 2, "OD", 3, "PN", 4, "LL", 5,                                    "SC", 6, "FW", 7, "RN", 8, "TR", 9,                                    NULL );    return poFeature;}/************************************************************************//*                      TranslateOscarRoutePoint()                      *//************************************************************************/static OGRFeature *TranslateOscarRoutePoint( NTFFileReader *poReader,                                             OGRNTFLayer *poLayer,                                             NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_POINTREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // POINT_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // Geometry    int         nGeomId;        poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1],                                                             &nGeomId));    poFeature->SetField( 1, nGeomId );    // Attributes    poReader->ApplyAttributeValues( poFeature, papoGroup,                                    "FC", 2, "OD", 3, "JN", 4, "SN", 5,                                    "NP", 6, "RT", 8,                                    NULL );    // PARENT_OSODR    char        **papszTypes, **papszValues;    if( poReader->ProcessAttRecGroup( papoGroup, &papszTypes, &papszValues ) )    {        char    **papszOSODRList = NULL;        for( int i = 0; papszTypes != NULL && papszTypes[i] != NULL; i++ )        {            if( EQUAL(papszTypes[i],"PO") )                papszOSODRList = CSLAddString(papszOSODRList,papszValues[i]);        }        poFeature->SetField( 7, papszOSODRList );        CPLAssert( CSLCount(papszOSODRList) ==                   poFeature->GetFieldAsInteger( 6 ) );        CSLDestroy( papszOSODRList );        CSLDestroy( papszTypes );        CSLDestroy( papszValues );    }    return poFeature;}/************************************************************************//*                      TranslateOscarRouteLine()                       *//************************************************************************/static OGRFeature *TranslateOscarRouteLine( NTFFileReader *poReader,                                            OGRNTFLayer *poLayer,                                            NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_LINEREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // LINE_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // Geometry    int         nGeomId;        poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1],                                                             &nGeomId));    poFeature->SetField( 1, nGeomId );    // Attributes    poReader->ApplyAttributeValues( poFeature, papoGroup,                                    "FC", 2, "OD", 3, "PN", 4, "LL", 5,                                    "RN", 6, "TR", 7, "NP", 8,                                     NULL );    // PARENT_OSODR    char        **papszTypes, **papszValues;    if( poReader->ProcessAttRecGroup( papoGroup, &papszTypes, &papszValues ) )    {        char    **papszOSODRList = NULL;        for( int i = 0; papszTypes != NULL && papszTypes[i] != NULL; i++ )        {            if( EQUAL(papszTypes[i],"PO") )                papszOSODRList = CSLAddString(papszOSODRList,papszValues[i]);        }        poFeature->SetField( 9, papszOSODRList );        CPLAssert( CSLCount(papszOSODRList) ==                   poFeature->GetFieldAsInteger( 8 ) );        CSLDestroy( papszOSODRList );        CSLDestroy( papszTypes );        CSLDestroy( papszValues );    }    return poFeature;}/************************************************************************//*                       TranslateOscarComment()                        *//************************************************************************/static OGRFeature *TranslateOscarComment( NTFFileReader *poReader,                                          OGRNTFLayer *poLayer,                                          NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) != 1         || papoGroup[0]->GetType() != NRT_COMMENT )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // RECORD_TYPE    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 4 )) );    // RECORD_ID    poFeature->SetField( 1, papoGroup[0]->GetField( 5, 17 ) );    // CHANGE_TYPE    poFeature->SetField( 2, papoGroup[0]->GetField( 18, 18 ) );    return poFeature;}/************************************************************************//*                     TranslateOscarNetworkPoint()                     *//************************************************************************/static OGRFeature *TranslateOscarNetworkPoint( NTFFileReader *poReader,                                               OGRNTFLayer *poLayer,                                               NTFRecord **papoGroup ){    if( CSLCount((char **) papoGroup) < 2        || papoGroup[0]->GetType() != NRT_POINTREC        || papoGroup[1]->GetType() != NRT_GEOMETRY )        return NULL;            OGRFeature  *poFeature = new OGRFeature( poLayer->GetLayerDefn() );    // POINT_ID    poFeature->SetField( 0, atoi(papoGroup[0]->GetField( 3, 8 )) );    // Geometry    int         nGeomId;        poFeature->SetGeometryDirectly(poReader->ProcessGeometry(papoGroup[1],                                                             &nGeomId));    poFeature->SetField( 1, nGeomId );

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91一区一区三区| 亚洲午夜精品17c| 天天色 色综合| bt欧美亚洲午夜电影天堂| 2021国产精品久久精品 | 欧美三区在线视频| 中文字幕亚洲一区二区av在线| 国产一区啦啦啦在线观看| 日韩一区二区免费在线电影| 日韩精品乱码免费| 91精品国产综合久久国产大片| 亚洲国产sm捆绑调教视频| 91麻豆免费视频| 亚洲免费在线观看| 欧美日韩中文精品| 午夜在线成人av| 91精品国产欧美日韩| 久久成人综合网| 欧美国产精品v| 99精品欧美一区二区蜜桃免费| 欧美精品一区二区久久婷婷| 国精品**一区二区三区在线蜜桃| 久久夜色精品一区| 99久久精品国产麻豆演员表| 亚洲蜜臀av乱码久久精品| 国产二区国产一区在线观看| 国产精品久久久久久久久果冻传媒| 不卡的av在线播放| 亚洲一区二区在线免费看| 欧美精品一二三区| 精品综合免费视频观看| 国产精品午夜电影| 在线观看日韩一区| 全国精品久久少妇| 国产精品视频线看| 成人毛片老司机大片| 一区二区三区在线观看网站| 欧美喷潮久久久xxxxx| 日韩电影在线一区二区三区| 欧美sm美女调教| 99精品桃花视频在线观看| 亚洲一二三级电影| 日韩区在线观看| 成人不卡免费av| 三级在线观看一区二区 | 天天综合网天天综合色| 精品va天堂亚洲国产| 97se亚洲国产综合自在线观| 婷婷开心激情综合| 日韩限制级电影在线观看| 成人黄色av网站在线| 综合久久一区二区三区| 91精品国产免费| 91蜜桃传媒精品久久久一区二区| 日本不卡一二三| 中文幕一区二区三区久久蜜桃| 欧美裸体bbwbbwbbw| 国产xxx精品视频大全| 亚洲成av人片在线观看无码| 国产精品日日摸夜夜摸av| 久久九九99视频| 欧美一级淫片007| 91国产成人在线| 国产精品亚洲成人| 蜜臀av亚洲一区中文字幕| 亚洲伦在线观看| 国产日产精品1区| 色婷婷综合久色| 国产成人精品影视| 久久国产日韩欧美精品| 亚洲一级二级三级| 综合激情成人伊人| 欧美精品一区二区三区蜜桃| 欧美日本在线一区| 色综合久久综合| 丰满白嫩尤物一区二区| 久久99九九99精品| 亚洲国产日日夜夜| 亚洲精品成a人| 1024亚洲合集| 中文字幕免费一区| 久久综合九色综合欧美98| 日韩欧美国产综合| 69久久夜色精品国产69蝌蚪网| 91丨porny丨中文| 国产成人av电影在线观看| 国产一区 二区 三区一级| 奇米精品一区二区三区在线观看| 一区二区三区不卡视频| 综合久久久久久久| 成人免费在线观看入口| 欧美国产日韩在线观看| 久久久99免费| 久久久久久97三级| 国产欧美在线观看一区| 久久久久久**毛片大全| 国产性做久久久久久| 久久久久久久久蜜桃| 久久一夜天堂av一区二区三区| 精品91自产拍在线观看一区| 精品国产伦一区二区三区观看体验| 欧美一区二区三区在线视频| 欧美一区欧美二区| 精品精品国产高清a毛片牛牛 | 精品视频999| 欧美亚洲高清一区二区三区不卡| 色成人在线视频| 成人avav影音| 色婷婷精品大在线视频 | 国产精品一区免费在线观看| 国产精品亚洲午夜一区二区三区| 国产一区二区精品久久| av在线一区二区| 7777精品伊人久久久大香线蕉经典版下载 | 一本色道久久综合亚洲精品按摩| 欧美日韩三级在线| 亚洲成a人v欧美综合天堂下载| 精品一区二区三区在线视频| caoporm超碰国产精品| 在线播放亚洲一区| 国产精品美女久久久久久久久久久 | 色先锋aa成人| 精品国产一区二区三区av性色| 中文字幕一区二区三| 日韩高清一区在线| 97精品国产露脸对白| 日韩午夜在线观看视频| 亚洲人一二三区| 国产精品一线二线三线| 欧美精三区欧美精三区| 国产精品国产三级国产| 美女高潮久久久| 欧美性生活久久| 国产精品污污网站在线观看| 日日夜夜免费精品视频| av日韩在线网站| 久久女同精品一区二区| 视频一区二区三区入口| 91福利在线播放| 国产精品网友自拍| 激情偷乱视频一区二区三区| 91蜜桃在线免费视频| 国产亚洲精品久| 久久er99精品| 欧美日韩成人综合在线一区二区| 国产精品伦理在线| 国产一区二区三区不卡在线观看 | 男男gaygay亚洲| 91成人免费在线视频| 中文字幕亚洲在| 成人小视频在线观看| xnxx国产精品| 奇米色一区二区| 91精品欧美综合在线观看最新| 亚洲综合视频网| 99精品1区2区| 国产精品久久久久久久蜜臀| 国产一区二区三区观看| 久久综合色播五月| 国内精品国产三级国产a久久| 欧美精品粉嫩高潮一区二区| 亚洲www啪成人一区二区麻豆| 91精彩视频在线| 亚洲美腿欧美偷拍| 色综合咪咪久久| 亚洲卡通动漫在线| 色就色 综合激情| 亚洲六月丁香色婷婷综合久久 | 五月婷婷欧美视频| 欧美日韩精品一区二区三区四区| 亚洲国产三级在线| 3751色影院一区二区三区| 午夜激情综合网| 91精品欧美综合在线观看最新| 日韩国产欧美三级| 欧美一级艳片视频免费观看| 麻豆91在线观看| 久久人人爽爽爽人久久久| 国产伦精品一区二区三区免费| 久久综合成人精品亚洲另类欧美| 久久国产婷婷国产香蕉| 国产亚洲福利社区一区| 9i看片成人免费高清| 亚洲靠逼com| 欧美日韩视频第一区| 美女视频第一区二区三区免费观看网站| 日韩欧美在线观看一区二区三区| 精品一区二区三区在线视频| 国产视频一区二区在线| 92国产精品观看| 午夜伦理一区二区| 欧美成人一区二区| 成人免费av资源| 亚洲午夜日本在线观看| 欧美一区二区三区免费观看视频| 国产精品自拍在线| 亚洲精品v日韩精品| 欧美一区二区在线免费播放 | 天堂影院一区二区| 久久久欧美精品sm网站|