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

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

?? geo_normalize.c

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? C
?? 第 1 頁 / 共 5 頁
字號:
/****************************************************************************** * $Id: geo_normalize.c,v 1.45 2005/03/15 16:01:18 fwarmerdam Exp $ * * Project:  libgeotiff * Purpose:  Code to normalize PCS and other composite codes in a GeoTIFF file. * Author:   Frank Warmerdam, warmerda@home.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. ****************************************************************************** * * $Log: geo_normalize.c,v $ * Revision 1.45  2005/03/15 16:01:18  fwarmerdam * zero inv flattening interpreted as sphere * * Revision 1.44  2005/03/04 04:32:37  fwarmerdam * added cylindricalequalarea support * * Revision 1.43  2005/03/04 04:02:40  fwarmerdam * Fixed initialization of dfStdParallel2 for AEA and EC. * * Revision 1.42  2005/02/17 01:21:38  fwarmerdam * fixed handling of ProjFalseOrigin{Easting,Northing}GeoKey * * Revision 1.41  2004/12/01 22:06:42  fwarmerdam * bug 698: GTIFGetGCSInfo should not fail on missing pm if pm info not req. * * Revision 1.40  2004/07/09 17:27:37  warmerda * Added 9122 as an alias for simple degrees. * * Revision 1.39  2004/06/07 12:57:13  warmerda * fallback to using gdal_datum.csv if datum.csv not found * * Revision 1.38  2004/03/19 12:20:40  dron * Initialize projection parameters in GTIFFetchProjParms() before using. * * Revision 1.37  2003/07/08 17:31:30  warmerda * cleanup various warnings * * Revision 1.36  2003/01/28 18:31:58  warmerda * Default dfInDegrees in GTIFAngleToDD(). * * Revision 1.35  2003/01/15 04:39:16  warmerda * Added GTIFDeaccessCSV * * Revision 1.34  2003/01/15 03:37:40  warmerda * added GTIFFreeMemory() * * Revision 1.33  2002/12/05 19:21:01  warmerda * fixed dfInDegrees to actually be in degrees, not radians! * * Revision 1.32  2002/11/30 16:01:11  warmerda * fixed some problems in GTIFGetUOMAngleInfo * * Revision 1.31  2002/11/30 15:44:35  warmerda * fixed GetCTParms EPSG code mappings * * Revision 1.30  2002/11/28 22:27:42  warmerda * preliminary upgrade to EPSG 6.2.2 tables * * Revision 1.29  2002/06/19 03:51:15  warmerda * migrated cpl_csv.h into cpl_serv.h * * Revision 1.28  2002/01/03 21:28:25  warmerda * call CSVDeaccess(NULL) at end of GTIFPrintDefn() * * Revision 1.27  2001/04/17 13:41:10  warmerda * fix memory leaks in GTIFPrintDefn() * * Revision 1.26  2001/04/17 13:23:07  warmerda * added support for reading custom ellipsoid definitions * * Revision 1.25  2001/03/05 04:55:26  warmerda * CVSDeaccess at end of GTIFGetDefn to avoid file leak * * Revision 1.24  2001/03/05 03:26:29  warmerda * fixed memory leaks in GTIFPrintDefn() * * Revision 1.23  2001/02/23 13:49:48  warmerda * Fixed GTIFPrintDefn() to use fprintf( fp ), instead of printf(). * * Revision 1.22  2000/10/13 14:30:57  warmerda * fixed LCC parm order when parameters read directly from geotiff file * * Revision 1.21  2000/09/15 19:30:14  warmerda * report units of linear proj parms * * Revision 1.20  2000/09/15 18:21:07  warmerda * Fixed order of parameters for LCC 2SP.  When parameters * were read from EPSG CSV files the standard parallels and origin * were mixed up.  This affects alot of state plane zones! * * Revision 1.19  2000/06/09 14:05:43  warmerda * added default knowledge of NAD27/NAD83/WGS72/WGS84 * * Revision 1.18  1999/12/10 21:28:12  warmerda * fixed Stereographic to look for ProjCenterLat/Long * * Revision 1.17  1999/12/10 20:06:58  warmerda * fixed up scale geokey used for a couple of projections * * Revision 1.16  1999/12/10 19:50:21  warmerda * Added EquidistantConic support, fixed return of StdParallel2GeoKey for * LCC2, and Albers. * * Revision 1.15  1999/12/10 19:39:26  warmerda * Fixed bug setting the false northing for files with * ProjCenterNorthingGeoKey set in GTIFGetDefn(). * * Revision 1.14  1999/09/17 14:58:37  warmerda * Added ProjRectifiedGridAngleGeoKey(3096) and support for it's * use with Oblique Mercator in geo_normalize.c. * * Revision 1.13  1999/09/17 00:55:26  warmerda * added GTIFGetUOMAngleInfo(), and UOMAngle in GTIFDefn * * Revision 1.12  1999/09/15 18:51:31  warmerda * Map 9808 to TM South Oriented, not TM Modified Alaska. * * Revision 1.11  1999/09/15 16:44:06  warmerda * Change meter to metre to match EPSG database in GTIFGetUOMLengthInfo() * shortcut. * * Revision 1.10  1999/09/15 16:35:15  warmerda * Fixed the fractions of second handling properly in GTIFAngleStringToDD(). * * Revision 1.9  1999/09/15 14:24:17  warmerda * Fixed serious bug in geo_normalize.c with translation of * DD.MMSSsss values.  Return value was seriously off if any * fraction of a second was included in the string. * * Revision 1.8  1999/07/13 03:12:52  warmerda * Make scale a parameter of CT_Stereographic. * * Revision 1.7  1999/05/04 03:13:22  warmerda * fixed a serious bug in parsing DMSmmss.sss values, and a bug in forming DMS strings * * Revision 1.6  1999/05/03 17:50:31  warmerda * avoid warnings on IRIX * * Revision 1.5  1999/04/28 20:04:51  warmerda * Added doxygen style documentation. * Use GTIFPCSToMapSys() and related functions to partially normalize * projections when we don't have the CSV files. * * Revision 1.4  1999/03/18 21:34:59  geotiff * added GTIFDecToDMS * * Revision 1.3  1999/03/17 19:53:15  geotiff * sys includes moved to cpl_serv.h * * Revision 1.2  1999/03/10 18:24:06  geotiff * corrected to use int' * * Revision 1.1  1999/03/09 15:57:04  geotiff * New * * Revision 1.4  1999/03/03 02:29:38  warmerda * Define PI if not already defined. * * Revision 1.3  1999/03/02 21:10:57  warmerda * added lots of projections * * Revision 1.2  1999/02/24 16:24:15  warmerda * Continuing to evolve * * Revision 1.1  1999/02/22 18:51:08  warmerda * New * */ #include "cpl_serv.h"#include "geo_tiffp.h"#include "geovalues.h"#include "geo_normalize.h"#ifndef KvUserDefined#  define KvUserDefined 32767#endif#ifndef PI#  define PI 3.14159265358979323846#endif/* EPSG Codes for projection parameters.  Unfortunately, these bear no   relationship to the GeoTIFF codes even though the names are so similar. */#define EPSGNatOriginLat         8801#define EPSGNatOriginLong        8802#define EPSGNatOriginScaleFactor 8805#define EPSGFalseEasting         8806#define EPSGFalseNorthing        8807#define EPSGProjCenterLat        8811#define EPSGProjCenterLong       8812#define EPSGAzimuth              8813#define EPSGAngleRectifiedToSkewedGrid 8814#define EPSGInitialLineScaleFactor 8815#define EPSGProjCenterEasting    8816#define EPSGProjCenterNorthing   8817#define EPSGPseudoStdParallelLat 8818#define EPSGPseudoStdParallelScaleFactor 8819#define EPSGFalseOriginLat       8821#define EPSGFalseOriginLong      8822#define EPSGStdParallel1Lat      8823#define EPSGStdParallel2Lat      8824#define EPSGFalseOriginEasting   8826#define EPSGFalseOriginNorthing  8827#define EPSGSphericalOriginLat   8828#define EPSGSphericalOriginLong  8829#define EPSGInitialLongitude     8830#define EPSGZoneWidth            8831/************************************************************************//*                           GTIFGetPCSInfo()                           *//************************************************************************/int GTIFGetPCSInfo( int nPCSCode, char **ppszEPSGName,                     short *pnProjOp, short *pnUOMLengthCode,                     short *pnGeogCS ){    char	**papszRecord;    char	szSearchKey[24];    const char	*pszFilename = CSVFilename( "pcs.csv" );    /* -------------------------------------------------------------------- *//*      Search the units database for this unit.  If we don't find      *//*      it return failure.                                              *//* -------------------------------------------------------------------- */    sprintf( szSearchKey, "%d", nPCSCode );    papszRecord = CSVScanFileByName( pszFilename, "COORD_REF_SYS_CODE",                                     szSearchKey, CC_Integer );    if( papszRecord == NULL )        return FALSE;/* -------------------------------------------------------------------- *//*      Get the name, if requested.                                     *//* -------------------------------------------------------------------- */    if( ppszEPSGName != NULL )    {        *ppszEPSGName =            CPLStrdup( CSLGetField( papszRecord,                                    CSVGetFileFieldId(pszFilename,                                                      "COORD_REF_SYS_NAME") ));    }/* -------------------------------------------------------------------- *//*      Get the UOM Length code, if requested.                          *//* -------------------------------------------------------------------- */    if( pnUOMLengthCode != NULL )    {        const char	*pszValue;        pszValue =            CSLGetField( papszRecord,                         CSVGetFileFieldId(pszFilename,"UOM_CODE"));        if( atoi(pszValue) > 0 )            *pnUOMLengthCode = (short) atoi(pszValue);        else            *pnUOMLengthCode = KvUserDefined;    }/* -------------------------------------------------------------------- *//*      Get the UOM Length code, if requested.                          *//* -------------------------------------------------------------------- */    if( pnProjOp != NULL )    {        const char	*pszValue;        pszValue =            CSLGetField( papszRecord,                         CSVGetFileFieldId(pszFilename,"COORD_OP_CODE"));        if( atoi(pszValue) > 0 )            *pnProjOp = (short) atoi(pszValue);        else            *pnUOMLengthCode = KvUserDefined;    }/* -------------------------------------------------------------------- *//*      Get the GeogCS (Datum with PM) code, if requested.		*//* -------------------------------------------------------------------- */    if( pnGeogCS != NULL )    {        const char	*pszValue;        pszValue =            CSLGetField( papszRecord,                         CSVGetFileFieldId(pszFilename,"SOURCE_GEOGCRS_CODE"));        if( atoi(pszValue) > 0 )            *pnGeogCS = (short) atoi(pszValue);        else            *pnGeogCS = KvUserDefined;    }    return TRUE;}/************************************************************************//*                           GTIFAngleToDD()                            *//*                                                                      *//*      Convert a numeric angle to decimal degress.                     *//************************************************************************/double GTIFAngleToDD( double dfAngle, int nUOMAngle ){    if( nUOMAngle == 9110 )		/* DDD.MMSSsss */    {        char	szAngleString[32];        sprintf( szAngleString, "%12.7f", dfAngle );        dfAngle = GTIFAngleStringToDD( szAngleString, nUOMAngle );    }    else    {        double		dfInDegrees = 1.0;                GTIFGetUOMAngleInfo( nUOMAngle, NULL, &dfInDegrees );        dfAngle = dfAngle * dfInDegrees;    }    return( dfAngle );}/************************************************************************/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区的国产在线播放| 国产电影精品久久禁18| 精品粉嫩aⅴ一区二区三区四区| 成人av资源网站| 视频一区中文字幕国产| 亚洲国产岛国毛片在线| 欧美一区二区免费观在线| 成人黄动漫网站免费app| 视频在线观看一区二区三区| 中文字幕一区二区三区四区| 精品国产乱码久久久久久久| 欧美日本乱大交xxxxx| 不卡一卡二卡三乱码免费网站| 日韩电影在线看| 亚洲午夜电影在线| 中文字幕不卡在线观看| 亚洲精品在线电影| 91精品国产91久久久久久一区二区 | 一区二区三区中文免费| 欧美精品一区二区三区蜜桃| 7777女厕盗摄久久久| 91久久香蕉国产日韩欧美9色| 风流少妇一区二区| 国内外精品视频| 捆绑调教一区二区三区| 婷婷夜色潮精品综合在线| 亚洲日本一区二区三区| 欧美国产激情一区二区三区蜜月| 精品国产区一区| 91精品国产丝袜白色高跟鞋| 欧美视频第二页| 在线区一区二视频| 色综合久久久久| 91在线免费看| 91香蕉视频在线| 成人黄色小视频在线观看| 国产.欧美.日韩| 国产美女精品在线| 国内精品久久久久影院薰衣草 | 亚洲国产精品一区二区www| 亚洲桃色在线一区| 亚洲天堂av一区| 亚洲欧美日韩国产另类专区 | 久久国产精品第一页| 日本伊人午夜精品| 日韩成人精品在线| 日韩黄色在线观看| 日本不卡一区二区三区| 日欧美一区二区| 日本欧美一区二区三区乱码| 午夜精品123| 婷婷国产v国产偷v亚洲高清| 日韩精品一二区| 日本不卡不码高清免费观看| 蜜桃一区二区三区四区| 麻豆成人综合网| 国产麻豆视频一区| 成人黄色在线看| 91久久精品国产91性色tv| 欧美视频中文一区二区三区在线观看| 欧美在线一二三四区| 正在播放亚洲一区| 日韩精品一区在线观看| 国产亲近乱来精品视频 | 久久成人av少妇免费| 国产精品一级黄| 91毛片在线观看| 欧美美女网站色| 精品免费一区二区三区| 国产精品天天看| 一区二区三区四区在线免费观看| 日日夜夜免费精品| 国产一区日韩二区欧美三区| 99在线精品观看| 欧美浪妇xxxx高跟鞋交| 精品久久久久久久人人人人传媒 | 久久综合久久综合久久综合| 国产精品入口麻豆原神| 亚洲一区在线播放| 黄色小说综合网站| 色激情天天射综合网| 91精品免费观看| 国产精品久久久久婷婷二区次| 亚洲综合色丁香婷婷六月图片| 精品一区二区日韩| 色欧美日韩亚洲| 久久久一区二区三区| 亚洲日本欧美天堂| 国产一区 二区| 欧美情侣在线播放| 中文字幕一区二区三区不卡| 日韩黄色片在线观看| 成人动漫一区二区在线| 日韩欧美一区在线观看| 一区二区三区在线播放| 国产高清久久久久| 91精品中文字幕一区二区三区| 国产精品美女久久久久aⅴ| 亚洲成人av免费| www.综合网.com| 日韩免费福利电影在线观看| 亚洲人精品午夜| 黄色资源网久久资源365| 欧美蜜桃一区二区三区| **网站欧美大片在线观看| 国内精品不卡在线| 777午夜精品免费视频| 自拍偷在线精品自拍偷无码专区| 久久精品国产精品亚洲红杏| 欧美午夜不卡在线观看免费| 国产精品美女久久久久久久久久久 | 精品久久久久久久久久久久包黑料 | 制服丝袜中文字幕亚洲| 亚洲欧美日韩中文播放| 国产999精品久久| 日韩精品一区二区三区蜜臀| 午夜在线成人av| 欧美中文一区二区三区| 亚洲色图.com| 不卡高清视频专区| 日本一区二区三级电影在线观看 | 奇米一区二区三区| 欧洲精品一区二区三区在线观看| 中文幕一区二区三区久久蜜桃| 韩国精品一区二区| 日韩精品一区二区三区在线播放| 日韩国产高清影视| 欧美高清视频一二三区| 偷拍一区二区三区四区| 欧美日韩在线播放三区四区| 亚洲高清久久久| 欧美性大战久久| 一级日本不卡的影视| 色综合天天综合网天天狠天天| 亚洲欧洲日韩综合一区二区| av电影天堂一区二区在线| 国产精品丝袜黑色高跟| 国产91丝袜在线播放0| 国产午夜亚洲精品羞羞网站| 国产精品一区二区久久不卡| 久久免费看少妇高潮| 高清国产午夜精品久久久久久| 久久青草欧美一区二区三区| 国产一区二区导航在线播放| 久久精品水蜜桃av综合天堂| 国产精品性做久久久久久| 国产日产亚洲精品系列| 不卡一区二区三区四区| 亚洲图片激情小说| 91成人免费在线| 日本最新不卡在线| 精品美女一区二区| 岛国精品一区二区| 亚洲色图另类专区| 欧美精品欧美精品系列| 人禽交欧美网站| 国产欧美日韩在线看| 91网站在线播放| 亚洲成人动漫在线免费观看| 日韩欧美国产不卡| 成人久久视频在线观看| 亚洲伦理在线精品| 欧美电影一区二区三区| 激情文学综合网| 亚洲欧洲国产专区| 51精品国自产在线| 国产成人在线视频网址| 亚洲欧美日韩国产一区二区三区 | 日韩一区二区三区四区五区六区| 久久99久久99| 亚洲日本电影在线| 日韩一区二区在线观看视频 | 91精品国产麻豆国产自产在线| 国模少妇一区二区三区| 亚洲色欲色欲www| 日韩丝袜美女视频| 成人毛片视频在线观看| 视频一区二区中文字幕| 久久久久久9999| 在线观看日韩毛片| 国内偷窥港台综合视频在线播放| 亚洲三级视频在线观看| 精品精品国产高清一毛片一天堂| gogo大胆日本视频一区| 奇米影视一区二区三区小说| 国产精品久久久久一区二区三区共| 欧美人xxxx| av男人天堂一区| 久久精品免费观看| 亚洲男人的天堂在线aⅴ视频| 日韩精品一区二区三区中文精品| 成av人片一区二区| 久久国产视频网| 一区二区免费视频| 国产日韩欧美激情| 欧美一级专区免费大片| 日本精品一区二区三区四区的功能| 韩国欧美国产一区| 日本在线播放一区二区三区| 国产精品超碰97尤物18|