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

📄 tabfeaturesymbol.cpp

📁 linux下一款GIS程序源码
💻 CPP
字号:
// tabfeaturesymbol.cpp: implementation of the TABFeatureSymbol class.////////////////////////////////////////////////////////////////////////#include "tabfeaturesymbol.h"#include "ugk_string.h"/********************************************************************** *                   TABFeatureSymbol::TABFeatureSymbol() **********************************************************************/TABFeatureSymbol::TABFeatureSymbol(){    static const TABSymbolDef csDefaultSymbol = MITAB_SYMBOL_DEFAULT;    m_nSymbolDefIndex=-1;    m_sSymbolDef = csDefaultSymbol;}/********************************************************************** *                   TABFeatureSymbol::~TABFeatureSymbol() **********************************************************************/TABFeatureSymbol::~TABFeatureSymbol(){}/********************************************************************** *                   ITABFeatureSymbol::GetSymbolStyleString() * *  Return a Symbol() string. All representations info for the Symbol are here. **********************************************************************/const char *TABFeatureSymbol::GetSymbolStyleString(double dfAngle){    const char *pszStyle = NULL;    int    nUGKStyle  = 1;    char szPattern[20];    int nAngle = 0;        szPattern[0] = '\0';        if (m_sSymbolDef.nSymbolNo == 31)      nUGKStyle = 0;    else if (m_sSymbolDef.nSymbolNo == 32)      nUGKStyle = 6;    else if (m_sSymbolDef.nSymbolNo == 33)    {        nAngle = 45;        nUGKStyle = 6;    }    else if (m_sSymbolDef.nSymbolNo == 34)      nUGKStyle = 4;    else if (m_sSymbolDef.nSymbolNo == 35)      nUGKStyle = 10;    else if (m_sSymbolDef.nSymbolNo == 36)      nUGKStyle = 8;    else if (m_sSymbolDef.nSymbolNo == 37)    {        nAngle = 180;        nUGKStyle = 8;    }    else if (m_sSymbolDef.nSymbolNo == 38)      nUGKStyle = 5;    else if (m_sSymbolDef.nSymbolNo == 39)    {        nAngle = 45;        nUGKStyle = 5;    }    else if (m_sSymbolDef.nSymbolNo == 40)      nUGKStyle = 3;    else if (m_sSymbolDef.nSymbolNo == 41)      nUGKStyle = 9;    else if (m_sSymbolDef.nSymbolNo == 42)      nUGKStyle = 7;    else if (m_sSymbolDef.nSymbolNo == 43)    {        nAngle = 180;        nUGKStyle = 7;    }    else if (m_sSymbolDef.nSymbolNo == 44)      nUGKStyle = 6;    else if (m_sSymbolDef.nSymbolNo == 45)      nUGKStyle = 8;    else if (m_sSymbolDef.nSymbolNo == 46)      nUGKStyle = 4;    else if (m_sSymbolDef.nSymbolNo == 49)      nUGKStyle = 1;    else if (m_sSymbolDef.nSymbolNo == 50)      nUGKStyle = 2;    nAngle += (int)dfAngle;        pszStyle=UGKSPrintf("SYMBOL(a:%d,c:#%6.6x,s:%dpt,id:\"mapinfo-sym-%d.ogr-sym-%d\")",                        nAngle,                        m_sSymbolDef.rgbColor,                        m_sSymbolDef.nPointSize,                        m_sSymbolDef.nSymbolNo,                        nUGKStyle);         return pszStyle;    }  /********************************************************************** *                   ITABFeatureSymbol::DumpSymbolDef() * * Dump Symbol definition information. **********************************************************************/void TABFeatureSymbol::DumpSymbolDef(FILE *fpOut /*=NULL*/){    if (fpOut == NULL)        fpOut = stdout;    fprintf(fpOut, "  m_nSymbolDefIndex       = %d\n", m_nSymbolDefIndex);    fprintf(fpOut, "  m_sSymbolDef.nRefCount  = %d\n", m_sSymbolDef.nRefCount);    fprintf(fpOut, "  m_sSymbolDef.nSymbolNo  = %d\n", m_sSymbolDef.nSymbolNo);    fprintf(fpOut, "  m_sSymbolDef.nPointSize = %d\n",m_sSymbolDef.nPointSize);    fprintf(fpOut, "  m_sSymbolDef._unknown_  = %d\n",                                             (int)m_sSymbolDef._nUnknownValue_);    fprintf(fpOut, "  m_sSymbolDef.rgbColor   = 0x%6.6x (%d)\n",                                m_sSymbolDef.rgbColor, m_sSymbolDef.rgbColor);    fflush(fpOut);}

⌨️ 快捷键说明

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