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

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

?? 于八方向鏈碼的邊界跟蹤代碼.txt

?? 于八方向鏈碼的邊界跟蹤代碼
?? TXT
字號:
于八方向鏈碼的邊界跟蹤代碼,其中nVerct數(shù)組存儲的是邊界點的矢量方向,Coordinate存儲的是邊界點的坐標(biāo)。
//函數(shù) OnProcessTrace()
void CSkagonView::OnProcessTrace() 
{
    if(DibObject.pDib==NULL) 
    {
        MessageBox("請先載入一幅位圖","Error",MB_ICONERROR | MB_OK);
        return;
    }
    if(DibObject.GetNumberOfColors() != 256)
    {
        MessageBox("您處理的圖片不是256色圖","Error",MB_ICONERROR | MB_OK);
        return;
    }


    struct EdgePoint
    {
        BYTE nCurrenVerct;        //當(dāng)前矢量,即在輪廓跟蹤中的前一個搜索方向
        CPoint CurrenPoint;        //當(dāng)前點的坐標(biāo)
    };

    //CArray <EdgePoint,EdgePoint&> TraceArray;

    //獲取位圖的寬,高,以及每行字節(jié)數(shù)
    int nWidth=DibObject.GetWidth();
    int nByteWidth=DibObject.GetByteWidth();
    int nHeight=DibObject.GetHeight();

    //循環(huán)變量
    int i,j;

    //開辟一塊新的空間
    BYTE *pData=new BYTE[nByteWidth*nHeight];
    memset(pData,255,nByteWidth*nHeight);

    //像素值
    unsigned char pixel;

    //是否找到起始點及回到起始點
    bool bFindStartPoint;

    //是否掃描到一個邊界點
    bool bFindPoint;

    typedef struct 
    {
        int Width;
        int Height;
    }Position;

    //起始邊界點與當(dāng)前邊界點
    Position StartPoint,CurrentPoint;

    //八個方向和起始掃描方向,依次是左上方、上方、右上方、右方、右下方、下方、左下方和左方。
    int Direction[8][2]={ {-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1},{-1,-1},{-1,0} };
    int BeginDirect;


    //先找到最左下方的邊界點
    bFindStartPoint = false;
    for (j = 1;j < nHeight-1 && !bFindStartPoint;j++)
    {
        for(i = 1;i < nWidth-1 && !bFindStartPoint;i++)
        {
            //取得當(dāng)前指針處的像素值
            pixel = PointOld(i,j);
            
            if(pixel == 0)
            {
                bFindStartPoint = true;
                StartPoint.Height = j;
                StartPoint.Width = i;

                // 指向目標(biāo)圖像倒數(shù)第j行,第i個象素的指針            
                Point(i,j) = 0;
            }        
        }
    }

    //由于起始點是在左下方,故起始掃描沿左上方向
    BeginDirect = 0;
    //跟蹤邊界
    bFindStartPoint = false;
            
    CurrentPoint.Height = StartPoint.Height;
    CurrentPoint.Width = StartPoint.Width;

    int index=0;
    memset(nVerct,0,9999);

    
    while(!bFindStartPoint)
    {
        //從起始點一直找邊界,直到再次找到起始點為止
        bFindPoint = false;
        while(!bFindPoint)
        {
            //沿掃描方向,這里是左上方向獲取一個像素
            pixel = PointOld( CurrentPoint.Width + Direction[BeginDirect][0], 
                                CurrentPoint.Height + Direction[BeginDirect][1] );
            if(pixel == 0)
            {
                bFindPoint = true;

                //存儲邊界點的矢量方向
                nVerct[index] = (BYTE)BeginDirect;
                //存儲邊界點的坐標(biāo)
                Coordinate[index][0] = CurrentPoint.Width;
                Coordinate[index][1] = CurrentPoint.Height;
                index++;


                CurrentPoint.Width = CurrentPoint.Width + Direction[BeginDirect][0];
                CurrentPoint.Height = CurrentPoint.Height + Direction[BeginDirect][1];

                //如果一圈以后找到了起始點,那么邊界尋找完成
                if(CurrentPoint.Height == StartPoint.Height && 
CurrentPoint.Width == StartPoint.Width)
                {
                    bFindStartPoint = true;
                }
                //將輪廓在新的位圖中標(biāo)示出來
                Point(CurrentPoint.Width,CurrentPoint.Height) = 0;
                //掃描的方向逆時針旋轉(zhuǎn)兩格
                //為什么?因為逆時針旋轉(zhuǎn)三格的象素絕對不是邊界,不然當(dāng)前點就不會是邊界。
                BeginDirect--;
                if(BeginDirect == -1)
                    BeginDirect = 7;
                BeginDirect--;
                if(BeginDirect == -1)
                    BeginDirect = 7;
            }
            else
            {
                //掃描方向順時針旋轉(zhuǎn)一格
                BeginDirect++;
                if(BeginDirect == 8)
                    BeginDirect = 0;
            }

        }
    }    

    //邊界跟蹤時,邊界點數(shù)
    m_nNumNode =index;

    memcpy(DibObject.m_pData,pData,nByteWidth*nHeight);
    delete pData;
    FileIndex++;
    Invalidate();    //重繪
    
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷久久综合| 丁香婷婷深情五月亚洲| 老司机午夜精品99久久| 国产福利一区二区三区视频 | 中文字幕在线播放不卡一区| 性感美女久久精品| 精品国产1区二区| 亚洲一区二区三区视频在线播放| 国产福利一区二区三区视频| 91精品在线观看入口| 亚洲欧美另类综合偷拍| 国产麻豆成人传媒免费观看| 91精品欧美一区二区三区综合在| 亚洲免费在线观看视频| 欧美不卡一区二区三区| 亚洲超碰精品一区二区| 色婷婷av一区二区三区软件| 国产日产欧美一区二区视频| 国产一区999| 精品免费国产一区二区三区四区| 日韩电影免费在线看| 欧美性欧美巨大黑白大战| 中文字幕一区二区在线观看| 26uuu国产日韩综合| 蜜臀av一级做a爰片久久| 欧美日韩一区二区三区高清| 一区二区在线免费观看| 91香蕉国产在线观看软件| 国产精品国产馆在线真实露脸 | 日韩av中文字幕一区二区三区| 色婷婷狠狠综合| 亚洲精品自拍动漫在线| 色噜噜夜夜夜综合网| 亚洲男人电影天堂| 欧美色综合网站| 亚洲h精品动漫在线观看| 欧美日韩国产一区| 午夜亚洲福利老司机| 一区二区三区精品久久久| 色老综合老女人久久久| 亚洲成年人网站在线观看| 欧美一区二区三区视频| 久久99精品国产91久久来源| 精品动漫一区二区三区在线观看 | 五月婷婷激情综合网| 欧美卡1卡2卡| 欧美高清视频www夜色资源网| 日韩一区欧美二区| 精品第一国产综合精品aⅴ| 成人一级黄色片| 亚洲欧美色一区| 欧美一个色资源| 国产经典欧美精品| 一区二区三区四区蜜桃| 日韩欧美的一区| 久久综合九色综合97婷婷| av亚洲产国偷v产偷v自拍| 亚洲宅男天堂在线观看无病毒| 欧美日韩中文国产| 国产精品正在播放| 亚洲午夜精品网| 精品国产成人系列| 日本福利一区二区| 麻豆精品视频在线观看视频| 国产一区二区美女诱惑| 亚洲欧美一区二区三区孕妇| 制服丝袜中文字幕亚洲| 国产成人aaaa| 三级久久三级久久久| 国产欧美日韩综合| 欧美老肥妇做.爰bbww| 成人精品电影在线观看| 亚洲成年人影院| 狠狠网亚洲精品| 日韩理论片中文av| 欧美一级欧美三级| 一本一道综合狠狠老| 国产精品一二三四| 婷婷六月综合网| 亚洲视频免费在线| 久久精品亚洲一区二区三区浴池| 在线日韩一区二区| 东方欧美亚洲色图在线| 日本韩国欧美在线| 风流少妇一区二区| 九一九一国产精品| 亚洲成a人片综合在线| ...中文天堂在线一区| 26uuu精品一区二区三区四区在线| 欧美亚洲国产一区二区三区va| 国产盗摄视频一区二区三区| 免费成人结看片| av亚洲产国偷v产偷v自拍| 久久国内精品自在自线400部| 亚洲高清不卡在线| 一区二区三区欧美久久| 1区2区3区精品视频| 久久亚洲综合av| 日韩欧美的一区二区| 欧美一区永久视频免费观看| 在线观看一区二区精品视频| 91视频精品在这里| 久久五月婷婷丁香社区| 精品久久久久久久一区二区蜜臀| 欧美老肥妇做.爰bbww| 欧美男女性生活在线直播观看| 91在线精品一区二区| 成人精品一区二区三区四区| 国产精品小仙女| 国内精品免费**视频| 国产一区二区导航在线播放| 久久精品国产色蜜蜜麻豆| 精品视频1区2区| 欧美在线你懂的| 精品婷婷伊人一区三区三| 欧美性受xxxx| 在线不卡中文字幕播放| 51精品久久久久久久蜜臀| 在线播放日韩导航| 日韩一区二区三区四区| 91麻豆精品国产自产在线观看一区| 欧美日韩成人综合天天影院 | 在线观看一区二区精品视频| 在线观看中文字幕不卡| 欧美视频日韩视频| 日韩欧美国产综合一区| 久久久亚洲精华液精华液精华液| 久久精品综合网| 亚洲色欲色欲www| 婷婷一区二区三区| 久久草av在线| 国产亚洲精品7777| 国产精品久久久久久久久久免费看| 国产精品乱码久久久久久| 亚洲欧美福利一区二区| 日日夜夜精品视频天天综合网| 免费视频最近日韩| 狠狠久久亚洲欧美| 不卡的av网站| 3atv一区二区三区| 中文字幕av不卡| 一区二区三区视频在线看| 91电影在线观看| 日韩视频免费观看高清完整版 | 91精品国产综合久久久久久久久久 | 久久综合色8888| 综合亚洲深深色噜噜狠狠网站| 亚洲一区二区影院| 极品美女销魂一区二区三区免费| 粉嫩av一区二区三区粉嫩| 欧美丝袜丝交足nylons| 久久久久久久久蜜桃| av在线一区二区| 91精品在线观看入口| 国产精品家庭影院| 日本欧美一区二区三区乱码| 成人高清在线视频| 日韩午夜电影在线观看| 亚洲精品少妇30p| 国产精品77777| 91精品国产综合久久久久久久久久 | 国产成+人+日韩+欧美+亚洲| 在线观看亚洲专区| 中文字幕精品三区| 蜜臀国产一区二区三区在线播放 | 亚洲欧洲精品一区二区三区 | 91亚洲精品久久久蜜桃| 欧美电影免费观看高清完整版在线| 国产精品美女久久久久久2018| 青青草国产精品97视觉盛宴| av电影天堂一区二区在线观看| 欧美一卡二卡在线| 亚洲国产中文字幕在线视频综合| 成人免费毛片a| 久久亚洲一级片| 欧美老肥妇做.爰bbww视频| 亚洲欧美怡红院| 国产精品中文有码| 欧美精品一区二区三区很污很色的| 首页国产欧美久久| 色婷婷综合久久久久中文一区二区 | 丁香婷婷综合网| 久久久午夜电影| 久久不见久久见免费视频1| 欧美乱熟臀69xxxxxx| 亚洲精品网站在线观看| eeuss国产一区二区三区| 国产日韩欧美不卡在线| 久久精品久久综合| 日韩欧美高清一区| 青青草成人在线观看| 日韩免费性生活视频播放| 欧洲一区二区三区在线| 亚洲视频在线一区| 99国产精品国产精品毛片| 日本一区二区三区在线不卡| 风间由美性色一区二区三区| 久久理论电影网| 国产一区二区三区黄视频 | 国产精品毛片大码女人|