⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ugkglobal.h

📁 linux下一款GIS程序源码
💻 H
📖 第 1 页 / 共 2 页
字号:
    double      adProjParams[6];   // params in same order as in .MIF COORDSYS    double      dDatumShiftX;    double      dDatumShiftY;    double      dDatumShiftZ;    double      adDatumParams[5];    // Affine parameters only in .map version 500 and up    UGKByte       nAffineFlag;    // 0=No affine param, 1=Affine params       UGKByte       nAffineUnits;    double      dAffineParamA;  // Affine params    double      dAffineParamB;    double      dAffineParamC;    double      dAffineParamD;    double      dAffineParamE;    double      dAffineParamF;} TABProjInfo;/*--------------------------------------------------------------------- * TABMAPCoordSecHdr * struct used in the TABMAPCoordBlock to store info about the coordinates * for a section of a PLINE MULTIPLE or a REGION. * 结构体,在TABMAPCoordBlock类中用来保存一个PLINE MULTIPLE或REGION * 的坐标信息 *--------------------------------------------------------------------*/typedef struct TABMAPCoordSecHdr_t{    UGKInt32      numVertices;   //顶点数    UGKInt16      numHoles;      //孔的个数    UGKInt32      nXMin;         //******    UGKInt32      nYMin;         // 边界    UGKInt32      nXMax;    UGKInt32      nYMax;         //********    UGKInt32      nDataOffset;   //?    int         nVertexOffset; //?} TABMAPCoordSecHdr;/*--------------------------------------------------------------------- * struct TABMAPIndexEntry - Entries found in type 1 blocks of .MAP files * * We will use this struct to rebuild the geographic index in memory *--------------------------------------------------------------------*/typedef struct TABMAPIndexEntry_t{    // These members refer to the info we find in the file    UGKInt32      XMin;    UGKInt32      YMin;    UGKInt32      XMax;    UGKInt32      YMax;    UGKInt32      nBlockPtr;}TABMAPIndexEntry;#define TAB_MAX_ENTRIES_INDEX_BLOCK     ((512-4)/20)/*--------------------------------------------------------------------- * TABVertex  *--------------------------------------------------------------------*/typedef struct TABVertex_t{    double x;    double y;} TABVertex;/*--------------------------------------------------------------------- * TABFontDef - Font Name information *--------------------------------------------------------------------*/typedef struct TABFontDef_t{    UGKInt32      nRefCount;    char        szFontName[33];} TABFontDef;#define MITAB_FONT_DEFAULT {0, "Arial"}/*--------------------------------------------------------------------- * TABPenDef - Pen definition information *--------------------------------------------------------------------*/typedef struct TABPenDef_t{    UGKInt32      nRefCount;    UGKByte       nPixelWidth;    UGKByte       nLinePattern;    int         nPointWidth;    UGKInt32      rgbColor;} TABPenDef;#define MITAB_PEN_DEFAULT {0, 1, 2, 0, 0x000000}/*--------------------------------------------------------------------- * TABBrushDef - Brush definition information *--------------------------------------------------------------------*/typedef struct TABBrushDef_t{    UGKInt32      nRefCount;    UGKByte       nFillPattern;    UGKByte       bTransparentFill; // 1 = Transparent    UGKInt32      rgbFGColor;    UGKInt32      rgbBGColor;} TABBrushDef;#define MITAB_BRUSH_DEFAULT {0, 1, 0, 0, 0xffffff}typedef struct TABSymbolDef_t{    UGKInt32      nRefCount;    UGKInt16      nSymbolNo;    UGKInt16      nPointSize;    UGKByte       _nUnknownValue_;// Style???    UGKInt32      rgbColor;} TABSymbolDef;#define MITAB_SYMBOL_DEFAULT {0, 35, 12, 0, 0x000000}typedef enum TABFontStyle_t     // Can be OR'ed{                               // except box and halo are mutually exclusive    TABFSNone       = 0,    TABFSBold       = 0x0001,    TABFSItalic     = 0x0002,    TABFSUnderline  = 0x0004,    TABFSStrikeout  = 0x0008,    TABFSOutline    = 0x0010,    TABFSShadow     = 0x0020,    TABFSInverse    = 0x0040,    TABFSBlink      = 0x0080,    TABFSBox        = 0x0100,   // See note about box vs halo below.    TABFSHalo       = 0x0200,   // MIF uses 256, see MIF docs, App.A    TABFSAllCaps    = 0x0400,   // MIF uses 512    TABFSExpanded   = 0x0800    // MIF uses 1024} TABFontStyle;/*--------------------------------------------------------------------- * Codes for the feature classes *--------------------------------------------------------------------*/typedef enum{    TABFCNoGeomFeature = 0,    TABFCPoint = 1,    TABFCFontPoint = 2,    TABFCCustomPoint = 3,    TABFCText = 4,    TABFCPolyline = 5,    TABFCArc = 6,    TABFCRegion = 7,    TABFCRectangle = 8,    TABFCEllipse = 9,    TABFCMultiPoint = 10,    TABFCCollection = 11,    TABFCDebugFeature} TABFeatureClass;typedef enum{    TABFUnknown = 0,    TABFChar,    TABFInteger,    TABFSmallInt,    TABFDecimal,    TABFFloat,    TABFDate,    TABFLogical} TABFieldType;  /*--------------------------------------------------------------------- * TABTableType - Attribute table format *--------------------------------------------------------------------*/typedef enum{    TABTableNative,     // The default    TABTableDBF,    TABTableAccess} TABTableType;/*--------------------------------------------------------------------- * TABDATFieldDef *--------------------------------------------------------------------*/typedef struct TABDATFieldDef_t{    char        szName[11];    char        cType;    UGKByte       byLength;    UGKByte       byDecimals;    TABFieldType eTABType;  // 字段类型 $zgq} TABDATFieldDef;/*--------------------------------------------------------------------- * Definitions for text attributes *--------------------------------------------------------------------*/typedef enum TABTextJust_t{    TABTJLeft = 0,      // Default: Left Justification    TABTJCenter,    TABTJRight} TABTextJust;typedef enum TABTextSpacing_t{    TABTSSingle = 0,    // Default: Single spacing    TABTS1_5,           // 1.5    TABTSDouble} TABTextSpacing;typedef enum TABTextLineType_t{    TABTLNoLine = 0,    // Default: No line    TABTLSimple,    TABTLArrow} TABTextLineType;typedef enum TABCustSymbStyle_t // Can be OR'ed{     TABCSNone       = 0,        // Transparent BG, use default colors    TABCSBGOpaque   = 0x01,     // White pixels are opaque    TABCSApplyColor = 0x02      // non-white pixels drawn using symbol color} TABCustSymbStyle;#define TABFIELDTYPE_2_STRING(type)     \   (type == TABFChar ? "Char" :         \    type == TABFInteger ? "Integer" :   \    type == TABFSmallInt ? "SmallInt" : \    type == TABFDecimal ? "Decimal" :   \    type == TABFFloat ? "Float" :       \    type == TABFDate ? "Date" :         \    type == TABFLogical ? "Logical" :   \    "Unknown field type"   )/*--------------------------------------------------------------------- * The following are used for coordsys bounds lookup *--------------------------------------------------------------------*/typedef struct{    TABProjInfo sProj;          /* Projection/datum definition */    double      dXMin;          /* Default bounds for that coordsys */    double      dYMin;    double      dXMax;    double      dYMax;} MapInfoBoundsInfo;  /* 坐标系的边界  $zgq */	   #define COLOR_R(color) ((color&0xff0000)/0x10000)#define COLOR_G(color) ((color&0xff00)/0x100)#define COLOR_B(color) (color&0xff)/* -------------------------------------------------------------------- *//* -------------------------------------------------------------------- */#define OLCRandomRead          "RandomRead"#define OLCSequentialWrite     "SequentialWrite"#define OLCRandomWrite         "RandomWrite"#define OLCFastSpatialFilter   "FastSpatialFilter"#define OLCFastFeatureCount    "FastFeatureCount"#define OLCFastGetExtent       "FastGetExtent"#define OLCCreateField         "CreateField"#define OLCTransactions        "Transactions"#define OLCDeleteFeature       "DeleteFeature"#define OLCFastSetNextByIndex  "FastSetNextByIndex"#define ODsCCreateLayer        "CreateLayer"#define ODsCDeleteLayer        "DeleteLayer"#define ODrCCreateDataSource   "CreateDataSource"#define ODrCDeleteDataSource   "DeleteDataSource"/*********************************************************///                全局函数UGKBool TABAdjustFilenameExtension(char *pszFname);char *TABGetBasename(const char *pszFname);char *TABCleanFieldName(const char *pszSrcName);char *TABEscapeString(char *pszString);char *TABUnEscapeString(char *pszString, UGKBool bSrcIsConst);UGKBool   MITABLookupCoordSysBounds(TABProjInfo *psCS,                                  double &dXMin, double &dYMin,                                  double &dXMax, double &dYMax);void   SwapHighLow4Byte(double &val);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -