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

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

?? mitab_feature_mif.cpp

?? 支持各種柵格圖像和矢量圖像讀取的庫(kù)
?? CPP
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
        TABGenerateArc(poRing, 45,                        dXMax - dXRadius, dYMax - dYRadius, dXRadius, dYRadius,                       0.0, PI/2.0);        TABGenerateArc(poRing, 45,                        dXMin + dXRadius, dYMax - dYRadius, dXRadius, dYRadius,                       PI/2.0, PI);                               TABCloseRing(poRing);    }    else    {        poRing->addPoint(dXMin, dYMin);        poRing->addPoint(dXMax, dYMin);        poRing->addPoint(dXMax, dYMax);        poRing->addPoint(dXMin, dYMax);        poRing->addPoint(dXMin, dYMin);    }    poPolygon->addRingDirectly(poRing);    SetGeometryDirectly(poPolygon);   while (((pszLine = fp->GetLine()) != NULL) &&           fp->IsValidFeature(pszLine) == FALSE)   {       papszToken = CSLTokenizeStringComplex(pszLine,"() ,",                                             TRUE,FALSE);       if (CSLCount(papszToken) > 1)       {           if (EQUALN(papszToken[0],"PEN",3))           {                      if (CSLCount(papszToken) == 4)               {                      SetPenWidthMIF(atoi(papszToken[1]));                   SetPenPattern(atoi(papszToken[2]));                   SetPenColor(atoi(papszToken[3]));               }                         }           else if (EQUALN(papszToken[0],"BRUSH", 5))           {               if (CSLCount(papszToken) >=3)               {                   SetBrushFGColor(atoi(papszToken[2]));                   SetBrushPattern(atoi(papszToken[1]));                   if (CSLCount(papszToken) == 4)                       SetBrushBGColor(atoi(papszToken[3]));                   else                      SetBrushTransparent(TRUE);               }                         }       }       CSLDestroy(papszToken);       papszToken = NULL;   }    return 0; }    /********************************************************************** * **********************************************************************/int TABRectangle::WriteGeometryToMIFFile(MIDDATAFile *fp){     OGRGeometry         *poGeom;    OGRPolygon          *poPolygon;    OGREnvelope         sEnvelope;         /*-----------------------------------------------------------------     * Fetch and validate geometry     *----------------------------------------------------------------*/    poGeom = GetGeometryRef();    if (poGeom && wkbFlatten(poGeom->getGeometryType()) == wkbPolygon)        poPolygon = (OGRPolygon*)poGeom;    else    {        CPLError(CE_Failure, CPLE_AssertionFailed,                 "TABRectangle: Missing or Invalid Geometry!");        return -1;    }    /*-----------------------------------------------------------------     * Note that we will simply use the rectangle's MBR and don't really      * read the polygon geometry... this should be OK unless the      * polygon geometry was not really a rectangle.     *----------------------------------------------------------------*/    poPolygon->getEnvelope(&sEnvelope);    if (m_bRoundCorners == TRUE)    {        fp->WriteLine("Roundrect %.16g %.16g %.16g %.16g %.16g\n",                       sEnvelope.MinX, sEnvelope.MinY,                      sEnvelope.MaxX, sEnvelope.MaxY, m_dRoundXRadius*2.0);    }    else    {        fp->WriteLine("Rect %.16g %.16g %.16g %.16g\n",                       sEnvelope.MinX, sEnvelope.MinY,                      sEnvelope.MaxX, sEnvelope.MaxY);    }        if (GetPenPattern())      fp->WriteLine("    Pen (%d,%d,%d)\n",GetPenWidthMIF(),GetPenPattern(),                    GetPenColor());    if (GetBrushPattern())    {        if (GetBrushTransparent() == 0)          fp->WriteLine("    Brush (%d,%d,%d)\n",GetBrushPattern(),                        GetBrushFGColor(),GetBrushBGColor());        else          fp->WriteLine("    Brush (%d,%d)\n",GetBrushPattern(),                        GetBrushFGColor());    }    return 0; }/********************************************************************** * **********************************************************************/int TABEllipse::ReadGeometryFromMIFFile(MIDDATAFile *fp){       const char *pszLine;    char **papszToken;    double              dXMin, dYMin, dXMax, dYMax;    OGRPolygon          *poPolygon;    OGRLinearRing       *poRing;    papszToken = CSLTokenizeString2(fp->GetLastLine(),                                     " \t", CSLT_HONOURSTRINGS);    if (CSLCount(papszToken) != 5)    {        CSLDestroy(papszToken);        return -1;    }    dXMin = fp->GetXTrans(atof(papszToken[1]));    dXMax = fp->GetXTrans(atof(papszToken[3]));    dYMin = fp->GetYTrans(atof(papszToken[2]));    dYMax = fp->GetYTrans(atof(papszToken[4]));    CSLDestroy(papszToken);    papszToken = NULL;     /*-----------------------------------------------------------------     * Save info about the ellipse def. inside class members     *----------------------------------------------------------------*/    m_dCenterX = (dXMin + dXMax) / 2.0;    m_dCenterY = (dYMin + dYMax) / 2.0;    m_dXRadius = ABS( (dXMax - dXMin) / 2.0 );    m_dYRadius = ABS( (dYMax - dYMin) / 2.0 );    SetMBR(dXMin, dYMin, dXMax, dYMax);    /*-----------------------------------------------------------------     * Create and fill geometry object     *----------------------------------------------------------------*/    poPolygon = new OGRPolygon;    poRing = new OGRLinearRing();    /*-----------------------------------------------------------------     * For the OGR geometry, we generate an ellipse with 2 degrees line     * segments.     *----------------------------------------------------------------*/    TABGenerateArc(poRing, 180,                    m_dCenterX, m_dCenterY,                   m_dXRadius, m_dYRadius,                   0.0, 2.0*PI);    TABCloseRing(poRing);    poPolygon->addRingDirectly(poRing);    SetGeometryDirectly(poPolygon);    while (((pszLine = fp->GetLine()) != NULL) &&            fp->IsValidFeature(pszLine) == FALSE)    {        papszToken = CSLTokenizeStringComplex(pszLine,"() ,",                                              TRUE,FALSE);                if (CSLCount(papszToken) > 1)        {            if (EQUALN(papszToken[0],"PEN",3))            {                       if (CSLCount(papszToken) == 4)                {                       SetPenWidthMIF(atoi(papszToken[1]));                    SetPenPattern(atoi(papszToken[2]));                   SetPenColor(atoi(papszToken[3]));                }                            }            else if (EQUALN(papszToken[0],"BRUSH", 5))            {                if (CSLCount(papszToken) >= 3)                {                    SetBrushFGColor(atoi(papszToken[2]));                    SetBrushPattern(atoi(papszToken[1]));                                        if (CSLCount(papszToken) == 4)                      SetBrushBGColor(atoi(papszToken[3]));                    else                      SetBrushTransparent(TRUE);                                    }                            }        }        CSLDestroy(papszToken);        papszToken = NULL;    }    return 0; }/********************************************************************** * **********************************************************************/int TABEllipse::WriteGeometryToMIFFile(MIDDATAFile *fp){    OGRGeometry         *poGeom;    OGREnvelope         sEnvelope;     poGeom = GetGeometryRef();    if ( (poGeom && wkbFlatten(poGeom->getGeometryType()) == wkbPolygon ) ||         (poGeom && wkbFlatten(poGeom->getGeometryType()) == wkbPoint )  )        poGeom->getEnvelope(&sEnvelope);    else    {        CPLError(CE_Failure, CPLE_AssertionFailed,                 "TABEllipse: Missing or Invalid Geometry!");        return -1;    }          fp->WriteLine("Ellipse %.16g %.16g %.16g %.16g\n",sEnvelope.MinX, sEnvelope.MinY,                  sEnvelope.MaxX,sEnvelope.MaxY);        if (GetPenPattern())      fp->WriteLine("    Pen (%d,%d,%d)\n",GetPenWidthMIF(),GetPenPattern(),                    GetPenColor());        if (GetBrushPattern())    {               if (GetBrushTransparent() == 0)          fp->WriteLine("    Brush (%d,%d,%d)\n",GetBrushPattern(),                        GetBrushFGColor(),GetBrushBGColor());        else          fp->WriteLine("    Brush (%d,%d)\n",GetBrushPattern(),                        GetBrushFGColor());    }    return 0; }/********************************************************************** * **********************************************************************/int TABArc::ReadGeometryFromMIFFile(MIDDATAFile *fp){    const char          *pszLine;    OGRLineString       *poLine;    char               **papszToken;    double               dXMin,dXMax, dYMin,dYMax;    int                  numPts;        papszToken = CSLTokenizeString2(fp->GetLastLine(),                                     " \t", CSLT_HONOURSTRINGS);    if (CSLCount(papszToken) == 5)    {        dXMin = fp->GetXTrans(atof(papszToken[1]));        dXMax = fp->GetXTrans(atof(papszToken[3]));        dYMin = fp->GetYTrans(atof(papszToken[2]));        dYMax = fp->GetYTrans(atof(papszToken[4]));        CSLDestroy(papszToken);        papszToken = CSLTokenizeString2(fp->GetLine(),                                         " \t", CSLT_HONOURSTRINGS);        if (CSLCount(papszToken) != 2)        {            CSLDestroy(papszToken);            return -1;        }        m_dStartAngle = atof(papszToken[0]);        m_dEndAngle = atof(papszToken[1]);    }    else if (CSLCount(papszToken) == 7)    {        dXMin = fp->GetXTrans(atof(papszToken[1]));        dXMax = fp->GetXTrans(atof(papszToken[3]));        dYMin = fp->GetYTrans(atof(papszToken[2]));        dYMax = fp->GetYTrans(atof(papszToken[4]));        m_dStartAngle = atof(papszToken[5]);        m_dEndAngle = atof(papszToken[6]);    }    else    {        CSLDestroy(papszToken);        return -1;    }    CSLDestroy(papszToken);    papszToken = NULL;    /*-------------------------------------------------------------     * Start/End angles     * Since the angles are specified for integer coordinates, and     * that these coordinates can have the X axis reversed, we have to     * adjust the angle values for the change in the X axis     * direction.     *     * This should be necessary only when X axis is flipped.     * __TODO__ Why is order of start/end values reversed as well???     *------------------------------------------------------------*/    if (fp->GetXMultiplier() <= 0.0)    {        m_dStartAngle = 360.0 - m_dStartAngle;        m_dEndAngle = 360.0 - m_dEndAngle;    }        m_dCenterX = (dXMin + dXMax) / 2.0;    m_dCenterY = (dYMin + dYMax) / 2.0;    m_dXRadius = ABS( (dXMax - dXMin) / 2.0 );    m_dYRadius = ABS( (dYMax - dYMin) / 2.0 );    /*-----------------------------------------------------------------     * Create and fill geometry object     * For the OGR geometry, we generate an arc with 2 degrees line     * segments.     *----------------------------------------------------------------*/    poLine = new OGRLineString;    if (m_dEndAngle < m_dStartAngle)        numPts = (int) ABS( ((m_dEndAngle+360.0)-m_dStartAngle)/2.0 ) + 1;    else        numPts = (int) ABS( (m_dEndAngle-m_dStartAngle)/2.0 ) + 1;    numPts = MAX(2, numPts);    TABGenerateArc(poLine, numPts,                   m_dCenterX, m_dCenterY,                   m_dXRadius, m_dYRadius,                   m_dStartAngle*PI/180.0, m_dEndAngle*PI/180.0);    SetMBR(dXMin, dYMin, dXMax, dYMax);    SetGeometryDirectly(poLine);    while (((pszLine = fp->GetLine()) != NULL) &&            fp->IsValidFeature(pszLine) == FALSE)    {        papszToken = CSLTokenizeStringComplex(pszLine,"() ,",                                              TRUE,FALSE);                if (CSLCount(papszToken) > 1)        {            if (EQUALN(papszToken[0],"PEN",3))            {                                if (CSLCount(papszToken) == 4)                {                        SetPenWidthMIF(atoi(papszToken[1]));                    SetPenPattern(atoi(papszToken[2]));                    SetPenColor(atoi(papszToken[3]));                }                            }        }        CSLDestroy(papszToken);        papszToken = NULL;   }   return 0; }/********************************************************************** * **********************************************************************/int TABArc::WriteGeometryToMIFFile(MIDDATAFile *fp){     /*-------------------------------------------------------------     * Start/End angles     * Since we ALWAYS produce files in quadrant 1 then we can     * ignore the special angle conversion required by flipped axis.     *------------------------------------------------------------*/         // Write the Arc's actual MBR     fp->WriteLine("Arc %.16g %.16g %.16g %.16g\n", m_dCenterX-m_dXRadius,                    m_dCenterY-m_dYRadius, m_dCenterX+m_dXRadius,                    m_dCenterY+m_dYRadius);

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
青青草91视频| 欧美精品一级二级三级| 一区二区三区在线免费观看| 制服丝袜亚洲网站| aaa欧美色吧激情视频| 美女视频黄a大片欧美| 亚洲综合色视频| 一个色综合av| 国产精品国产三级国产专播品爱网| 欧美精品v国产精品v日韩精品 | 日韩专区欧美专区| 国产精品高潮呻吟| 国产日韩av一区| 日韩欧美在线不卡| 欧美乱妇15p| 欧美性生活影院| 99精品一区二区| 国产成人三级在线观看| 免费在线观看一区二区三区| 一区二区三区在线视频免费| 国产精品国产三级国产aⅴ中文| 精品国产免费视频| 制服丝袜亚洲色图| 欧美乱妇15p| 欧美视频一区二区三区四区| 色综合久久天天| 成人国产在线观看| 成人黄色av网站在线| 国产高清精品网站| 国产xxx精品视频大全| 久久er99热精品一区二区| 日本女人一区二区三区| 日韩av不卡在线观看| 日本亚洲视频在线| 美女精品自拍一二三四| 日本91福利区| 老司机免费视频一区二区三区| 男女男精品视频| 美女视频网站久久| 国产一区二区看久久| 精品一区二区国语对白| 国产麻豆视频一区| 波多野结衣中文字幕一区| 国产激情一区二区三区四区| 国产成人免费视频网站| 成人av在线一区二区| 本田岬高潮一区二区三区| 91首页免费视频| 欧美性猛交一区二区三区精品| 欧美美女直播网站| 欧美大片日本大片免费观看| 久久久av毛片精品| 亚洲人成影院在线观看| 亚洲综合一区二区精品导航| 视频一区在线播放| 国产精选一区二区三区| 国产精品91xxx| 91麻豆免费在线观看| 欧美日韩一区不卡| 日韩欧美国产一区在线观看| 国产亚洲一区二区在线观看| 中文字幕制服丝袜成人av| 一二三区精品视频| 精品在线观看免费| 成人综合婷婷国产精品久久免费| av在线不卡电影| 欧美区一区二区三区| 久久欧美一区二区| 夜夜嗨av一区二区三区四季av| 日韩精品国产精品| 成人av在线资源网| 欧美久久久久久久久久| 久久久777精品电影网影网| 亚洲精品自拍动漫在线| 另类综合日韩欧美亚洲| 99国产欧美久久久精品| 欧美一区二区三区在线看| 国产欧美一区二区精品婷婷| 亚洲夂夂婷婷色拍ww47| 国产一区二区在线免费观看| 日本精品视频一区二区| 精品成人在线观看| 亚洲精品你懂的| 国产剧情av麻豆香蕉精品| 欧美亚洲综合另类| 久久久久久97三级| 天天av天天翘天天综合网色鬼国产| 国产乱子伦一区二区三区国色天香 | 欧美刺激脚交jootjob| 日韩美女精品在线| 美国十次综合导航| 在线视频一区二区三| 国产日韩视频一区二区三区| 亚洲成人免费电影| 99精品视频在线观看| 精品国产免费一区二区三区四区| 亚洲主播在线播放| av高清不卡在线| 欧美一级免费观看| 亚洲国产精品久久不卡毛片| 成人激情开心网| 精品99一区二区三区| 日韩专区在线视频| 欧美又粗又大又爽| 国产精品美女久久久久久久久 | 日韩伦理av电影| 国产精品影音先锋| 日韩免费电影一区| 亚洲国产精品一区二区www | 成人一道本在线| 久久精品水蜜桃av综合天堂| 日产精品久久久久久久性色| 欧美性欧美巨大黑白大战| 亚洲欧美日韩国产另类专区| 国产露脸91国语对白| 日韩免费一区二区| 奇米在线7777在线精品| 欧美日韩精品一区二区三区| 一区二区三区**美女毛片| 99精品桃花视频在线观看| 中文字幕av一区二区三区| 国产伦精品一区二区三区免费迷| 日韩欧美你懂的| 久久草av在线| 精品国产欧美一区二区| 久久99热99| 久久久欧美精品sm网站| 国产精品一区二区久久不卡| 久久亚洲私人国产精品va媚药| 麻豆国产欧美一区二区三区| 欧美一区二区视频网站| 久久精品国产免费| 日韩欧美区一区二| 国产在线视频一区二区| 精品国产1区二区| 国产精品一二一区| 国产精品色一区二区三区| 成人午夜电影网站| 亚洲欧美日韩在线| 欧美亚洲国产一区在线观看网站| 亚洲一区二区黄色| 欧美高清视频不卡网| 日韩av不卡一区二区| 亚洲精品一区在线观看| 国产成人亚洲综合a∨猫咪| 亚洲国产精品国自产拍av| 91一区二区在线| 午夜精品福利在线| 日韩欧美综合在线| 国产成人日日夜夜| 亚洲三级久久久| 欧美日韩三级一区| 韩国一区二区视频| 中文字幕在线一区免费| 欧美日韩一区不卡| 韩国女主播一区| 亚洲视频在线观看一区| 欧美三级日本三级少妇99| 蜜臀国产一区二区三区在线播放 | 欧美一区二区免费观在线| 精品无人码麻豆乱码1区2区| 久久久久久综合| 91蝌蚪porny九色| 男人的天堂亚洲一区| 中文字幕精品一区| 色婷婷av久久久久久久| 日本视频免费一区| 国产蜜臀av在线一区二区三区| 色94色欧美sute亚洲线路二| 捆绑变态av一区二区三区| 中文av字幕一区| 在线综合+亚洲+欧美中文字幕| 国产成人av一区二区三区在线观看| 亚洲综合自拍偷拍| 2022国产精品视频| 欧美午夜精品免费| 国产凹凸在线观看一区二区| 亚洲一区二区三区在线看| 久久久亚洲精品石原莉奈| 欧美优质美女网站| 国产精品伊人色| 亚洲va韩国va欧美va| 激情综合网天天干| 亚洲免费观看在线观看| 日韩精品一区二区三区老鸭窝| av电影天堂一区二区在线观看| 亚洲成av人片一区二区梦乃| 国产精品热久久久久夜色精品三区| 538在线一区二区精品国产| 成人在线综合网| 精品一区二区三区不卡| 亚洲成人免费视| 亚洲男人的天堂一区二区| 国产亚洲欧洲一区高清在线观看| 欧美日韩精品二区第二页| 99久久久国产精品| 国内精品写真在线观看| 无吗不卡中文字幕| 日韩一区欧美小说| 中文字幕乱码日本亚洲一区二区|