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

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

?? shapefil.h

?? 對文件中的中文做編碼轉(zhuǎn)換
?? H
?? 第 1 頁 / 共 2 頁
字號:
/* -------------------------------------------------------------------- */
/*      SHPObject - represents on shape (without attributes) read       */
/*      from the .shp file.                                             */
/* -------------------------------------------------------------------- */
typedef struct
{
    int		nSHPType;

    int		nShapeId; /* -1 is unknown/unassigned */

    int		nParts;
    int		*panPartStart;
    int		*panPartType;
    
    int		nVertices;
    double	*padfX;
    double	*padfY;
    double	*padfZ;
    double	*padfM;

    double	dfXMin;
    double	dfYMin;
    double	dfZMin;
    double	dfMMin;

    double	dfXMax;
    double	dfYMax;
    double	dfZMax;
    double	dfMMax;
} SHPObject;

/* -------------------------------------------------------------------- */
/*      SHP API Prototypes                                              */
/* -------------------------------------------------------------------- */
SHPHandle SHPAPI_CALL
      SHPOpen( const char * pszShapeFile, const char * pszAccess );
SHPHandle SHPAPI_CALL
      SHPCreate( const char * pszShapeFile, int nShapeType );
void SHPAPI_CALL
      SHPGetInfo( SHPHandle hSHP, int * pnEntities, int * pnShapeType,
                  double * padfMinBound, double * padfMaxBound );

SHPObject SHPAPI_CALL1(*)
      SHPReadObject( SHPHandle hSHP, int iShape );
int SHPAPI_CALL
      SHPWriteObject( SHPHandle hSHP, int iShape, SHPObject * psObject );

void SHPAPI_CALL
      SHPDestroyObject( SHPObject * psObject );
void SHPAPI_CALL
      SHPComputeExtents( SHPObject * psObject );
SHPObject SHPAPI_CALL1(*)
      SHPCreateObject( int nSHPType, int nShapeId,
                       int nParts, int * panPartStart, int * panPartType,
                       int nVertices, double * padfX, double * padfY,
                       double * padfZ, double * padfM );
SHPObject SHPAPI_CALL1(*)
      SHPCreateSimpleObject( int nSHPType, int nVertices,
                             double * padfX, double * padfY, double * padfZ );

int SHPAPI_CALL
      SHPRewindObject( SHPHandle hSHP, SHPObject * psObject );

void SHPAPI_CALL
      SHPClose( SHPHandle hSHP );

const char SHPAPI_CALL1(*)
      SHPTypeName( int nSHPType );
const char SHPAPI_CALL1(*)
      SHPPartTypeName( int nPartType );

/* -------------------------------------------------------------------- */
/*      Shape quadtree indexing API.                                    */
/* -------------------------------------------------------------------- */

/* this can be two or four for binary or quad tree */
#define MAX_SUBNODE	4

typedef struct shape_tree_node
{
    /* region covered by this node */
    double	adfBoundsMin[4];
    double	adfBoundsMax[4];

    /* list of shapes stored at this node.  The papsShapeObj pointers
       or the whole list can be NULL */
    int		nShapeCount;
    int		*panShapeIds;
    SHPObject   **papsShapeObj;

    int		nSubNodes;
    struct shape_tree_node *apsSubNode[MAX_SUBNODE];
    
} SHPTreeNode;

typedef struct
{
    SHPHandle   hSHP;
    
    int		nMaxDepth;
    int		nDimension;
    
    SHPTreeNode	*psRoot;
} SHPTree;

SHPTree SHPAPI_CALL1(*)
      SHPCreateTree( SHPHandle hSHP, int nDimension, int nMaxDepth,
                     double *padfBoundsMin, double *padfBoundsMax );
void    SHPAPI_CALL
      SHPDestroyTree( SHPTree * hTree );

int	SHPAPI_CALL
      SHPWriteTree( SHPTree *hTree, const char * pszFilename );
SHPTree SHPAPI_CALL
      SHPReadTree( const char * pszFilename );

int	SHPAPI_CALL
      SHPTreeAddObject( SHPTree * hTree, SHPObject * psObject );
int	SHPAPI_CALL
      SHPTreeAddShapeId( SHPTree * hTree, SHPObject * psObject );
int	SHPAPI_CALL
      SHPTreeRemoveShapeId( SHPTree * hTree, int nShapeId );

void 	SHPAPI_CALL
      SHPTreeTrimExtraNodes( SHPTree * hTree );

int    SHPAPI_CALL1(*)
      SHPTreeFindLikelyShapes( SHPTree * hTree,
                               double * padfBoundsMin,
                               double * padfBoundsMax,
                               int * );
int     SHPAPI_CALL
      SHPCheckBoundsOverlap( double *, double *, double *, double *, int );

/************************************************************************/
/*                             DBF Support.                             */
/************************************************************************/
typedef	struct
{
    FILE	*fp;

    int         nRecords;

    int		nRecordLength;
    int		nHeaderLength;
    int		nFields;
    int		*panFieldOffset;
    int		*panFieldSize;
    int		*panFieldDecimals;
    char	*pachFieldType;

    char	*pszHeader;

    int		nCurrentRecord;
    int		bCurrentRecordModified;
    char	*pszCurrentRecord;
    
    int		bNoHeader;
    int		bUpdated;
} DBFInfo;

typedef DBFInfo * DBFHandle;

typedef enum {
  FTString,
  FTInteger,
  FTDouble,
  FTLogical,
  FTInvalid
} DBFFieldType;

#define XBASE_FLDHDR_SZ       32

DBFHandle SHPAPI_CALL
      DBFOpen( const char * pszDBFFile, const char * pszAccess );
DBFHandle SHPAPI_CALL
      DBFCreate( const char * pszDBFFile );

int	SHPAPI_CALL
      DBFGetFieldCount( DBFHandle psDBF );
int	SHPAPI_CALL
      DBFGetRecordCount( DBFHandle psDBF );
int	SHPAPI_CALL
      DBFAddField( DBFHandle hDBF, const char * pszFieldName,
                   DBFFieldType eType, int nWidth, int nDecimals );

DBFFieldType SHPAPI_CALL
      DBFGetFieldInfo( DBFHandle psDBF, int iField, 
                       char * pszFieldName, int * pnWidth, int * pnDecimals );

int SHPAPI_CALL
      DBFGetFieldIndex(DBFHandle psDBF, const char *pszFieldName);

int 	SHPAPI_CALL
      DBFReadIntegerAttribute( DBFHandle hDBF, int iShape, int iField );
double 	SHPAPI_CALL
      DBFReadDoubleAttribute( DBFHandle hDBF, int iShape, int iField );
const char SHPAPI_CALL1(*)
      DBFReadStringAttribute( DBFHandle hDBF, int iShape, int iField );
const char SHPAPI_CALL1(*)
      DBFReadLogicalAttribute( DBFHandle hDBF, int iShape, int iField );
int     SHPAPI_CALL
      DBFIsAttributeNULL( DBFHandle hDBF, int iShape, int iField );

int SHPAPI_CALL
      DBFWriteIntegerAttribute( DBFHandle hDBF, int iShape, int iField, 
                                int nFieldValue );
int SHPAPI_CALL
      DBFWriteDoubleAttribute( DBFHandle hDBF, int iShape, int iField,
                               double dFieldValue );
int SHPAPI_CALL
      DBFWriteStringAttribute( DBFHandle hDBF, int iShape, int iField,
                               const char * pszFieldValue );
int SHPAPI_CALL
     DBFWriteNULLAttribute( DBFHandle hDBF, int iShape, int iField );

int SHPAPI_CALL
     DBFWriteLogicalAttribute( DBFHandle hDBF, int iShape, int iField,
			       const char lFieldValue);
int SHPAPI_CALL
     DBFWriteAttributeDirectly(DBFHandle psDBF, int hEntity, int iField,
                               void * pValue );
const char SHPAPI_CALL1(*)
      DBFReadTuple(DBFHandle psDBF, int hEntity );
int SHPAPI_CALL
      DBFWriteTuple(DBFHandle psDBF, int hEntity, void * pRawTuple );

DBFHandle SHPAPI_CALL
      DBFCloneEmpty(DBFHandle psDBF, const char * pszFilename );
 
void	SHPAPI_CALL
      DBFClose( DBFHandle hDBF );
char    SHPAPI_CALL
      DBFGetNativeFieldType( DBFHandle hDBF, int iField );

/*static*/ int DBFWriteAttribute(DBFHandle psDBF, int hEntity, int iField,
			     void * pValue );

#ifdef __cplusplus
}
#endif

#endif /* ndef _SHAPEFILE_H_INCLUDED */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
7777女厕盗摄久久久| 国产一区二区女| 一本大道av一区二区在线播放| 国产精品麻豆欧美日韩ww| av在线一区二区| 亚洲综合久久av| 91精品国产欧美一区二区成人| 捆绑调教一区二区三区| 久久久久九九视频| www.久久精品| 日韩不卡一区二区| 亚洲欧洲成人自拍| 裸体一区二区三区| 国产欧美精品区一区二区三区 | 丁香亚洲综合激情啪啪综合| 国产欧美一区二区精品久导航| 99久久国产免费看| 天天综合网天天综合色| 欧美精品一区二区久久婷婷| aaa国产一区| 日韩中文字幕1| 中文字幕国产精品一区二区| 欧美三级日韩在线| 国产麻豆视频精品| 亚洲午夜久久久久| 精品国产精品一区二区夜夜嗨| 99国产精品一区| 麻豆久久一区二区| 亚洲免费在线看| 欧美成人aa大片| 色激情天天射综合网| 久久国产精品99精品国产| 亚洲女性喷水在线观看一区| 日韩视频在线观看一区二区| 色综合一区二区三区| 狠狠色伊人亚洲综合成人| 亚洲午夜精品网| 国产精品久久免费看| 精品国产免费一区二区三区四区| 在线视频你懂得一区二区三区| 国产乱码精品一区二区三区av| 专区另类欧美日韩| 欧美精品九九99久久| 国产真实乱子伦精品视频| 午夜婷婷国产麻豆精品| 1区2区3区欧美| 中文字幕国产一区| 亚洲精品一线二线三线| 91麻豆精品国产综合久久久久久| 色中色一区二区| 国产成人日日夜夜| 极品美女销魂一区二区三区| 日韩主播视频在线| 亚洲成人av中文| 一区二区三区四区激情| 国产精品少妇自拍| 久久精品一区二区| 亚洲人吸女人奶水| 欧美一区二区三区影视| 欧美色图在线观看| 99这里只有久久精品视频| 韩国女主播一区二区三区| 日韩高清电影一区| 亚洲国产成人高清精品| 亚洲精品国产精品乱码不99| 国产精品丝袜一区| 国产婷婷色一区二区三区在线| 精品国产乱子伦一区| 日韩一区二区麻豆国产| 欧美一区二区成人| 日韩一区二区在线看| 欧美理论电影在线| 欧美精品在线视频| 欧美欧美午夜aⅴ在线观看| 欧美日韩一级视频| 欧美一区在线视频| 91精品国产色综合久久ai换脸| 欧美高清你懂得| 日韩一级高清毛片| 亚洲精品一区二区三区福利| 欧美精品一区二区三| 国产亚洲欧洲997久久综合| 国产日韩精品一区二区三区在线| 国产日韩欧美一区二区三区综合| 国产亚洲精品bt天堂精选| 中文字幕精品一区| 亚洲精品欧美二区三区中文字幕| 亚洲一卡二卡三卡四卡| 日韩精品视频网| 韩国视频一区二区| 成人网在线播放| 在线亚洲免费视频| 69成人精品免费视频| 91精品午夜视频| 2020国产精品自拍| 国产精品麻豆视频| 亚洲电影在线免费观看| 免费观看成人av| 国产成人精品免费| 在线日韩国产精品| 日韩欧美国产小视频| 欧美经典一区二区三区| 亚洲精品欧美激情| 精品福利二区三区| 欧美一区二区三区在线电影| 国产亚洲精品aa午夜观看| 自拍偷拍欧美激情| 日韩高清不卡一区二区| 国产成人精品午夜视频免费| 91啪在线观看| 日韩西西人体444www| 欧美韩国日本综合| 午夜精品久久久久久久久| 国产精品一区二区在线观看不卡 | 精品欧美久久久| 国产精品福利一区| 日本不卡123| 波多野结衣中文字幕一区| 这里只有精品电影| 中文字幕亚洲欧美在线不卡| 日韩国产一二三区| 91视频精品在这里| 欧美成人伊人久久综合网| 亚洲欧美色图小说| 国产一区在线观看麻豆| 欧美日韩另类国产亚洲欧美一级| 久久精品视频一区| 首页国产欧美久久| 91丝袜呻吟高潮美腿白嫩在线观看| 日韩欧美电影在线| 一级女性全黄久久生活片免费| 狠狠色狠狠色综合系列| 欧美日韩精品一区二区三区四区| 欧美激情艳妇裸体舞| 精一区二区三区| 欧美精品一二三| 亚洲人成小说网站色在线| 国产一区二区视频在线| 宅男在线国产精品| 亚洲成av人在线观看| 91天堂素人约啪| 国产精品视频yy9299一区| 国内久久婷婷综合| 欧美一区二区黄色| 亚洲午夜一区二区| 91片黄在线观看| 国产精品短视频| 国产成人综合亚洲网站| 精品日本一线二线三线不卡| 日韩国产欧美视频| 欧美色精品天天在线观看视频| 综合久久久久综合| 成人午夜电影网站| 国产日韩欧美一区二区三区综合 | 国产精品久久久久久福利一牛影视| 久久99精品国产.久久久久久| 欧美三级三级三级爽爽爽| 一级做a爱片久久| 一本到一区二区三区| 一区二区三区中文字幕电影| 97精品久久久午夜一区二区三区| 国产嫩草影院久久久久| 国产99久久精品| 国产精品色噜噜| 成人高清免费观看| 国产精品美女久久久久高潮| 丁香亚洲综合激情啪啪综合| 国产精品麻豆视频| 91社区在线播放| 亚洲精品v日韩精品| 欧美在线三级电影| 亚洲制服丝袜av| 欧美日韩dvd在线观看| 日韩av一二三| 精品三级在线观看| 国产乱色国产精品免费视频| 中文字幕精品—区二区四季| 国产精品毛片久久久久久久| 日韩一区二区中文字幕| 在线观看亚洲精品视频| 国产精品女主播av| 欧美午夜精品免费| 亚洲精品中文字幕乱码三区| 亚洲国产日韩精品| 成人福利视频在线| 欧美高清在线视频| 一区二区三区日韩| 91精品国产91综合久久蜜臀| 日韩黄色免费网站| 精品国产91洋老外米糕| 国产福利视频一区二区三区| 亚洲欧美自拍偷拍色图| 精品视频123区在线观看| 蜜桃一区二区三区四区| 国产日韩欧美电影| 欧美性videosxxxxx| 毛片一区二区三区| 国产精品久久久久永久免费观看| 在线亚洲一区观看| 激情欧美日韩一区二区|