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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dsplitview.cpp

?? 手寫字符的聚類算法
?? CPP
字號:
// DSPLITView.cpp : implementation of the CDSPLITView class
// 2005.1.13-16:02 By Superman 

#include "stdafx.h"
#include "DSPLIT.h"

#include "DSPLITDoc.h"
#include "DSPLITView.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDSPLITView

IMPLEMENT_DYNCREATE(CDSPLITView, CView)

BEGIN_MESSAGE_MAP(CDSPLITView, CView)
	//{{AFX_MSG_MAP(CDSPLITView)
	ON_COMMAND(ID_BUTTON_CLEAR, OnButtonClear)
	ON_COMMAND(ID_BUTTONDISPLAY, OnButtondisplay)
	ON_WM_MOUSEMOVE()
	ON_WM_LBUTTONDOWN()
	ON_WM_LBUTTONUP()
	ON_WM_RBUTTONDOWN()
	ON_WM_RBUTTONUP()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDSPLITView construction/destruction

CDSPLITView::CDSPLITView()
{
	lbtDown=FALSE;
	rbtDown=FALSE;
}

CDSPLITView::~CDSPLITView()
{
}

BOOL CDSPLITView::PreCreateWindow(CREATESTRUCT& cs)
{
	// TODO: Modify the Window class or styles here by modifying
	//  the CREATESTRUCT cs

	return CView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// CDSPLITView drawing

void CDSPLITView::OnDraw(CDC* pDC)
{
	CDocument* pDoc = GetDocument();
	ASSERT_VALID(pDoc);


	pDC->TextOut(10,250,"1.請書寫規范,字不要太小。");
	pDC->TextOut(10,270,"2.寫字的時候,請拖動鼠標左鍵。");
	pDC->TextOut(10,290,"3.拖動鼠標右鍵,可以擦除筆畫。");
	pDC->TextOut(10,310,"4.單擊左視圖,按[擦除]按鈕可清除左視圖。");
	pDC->TextOut(10,330,"5.單擊右視圖,選擇模式識別菜單項進行判別。");
	pDC->TextOut(10,350,"6.判別出錯時,說明在樣品庫中這種寫法太少,");
	pDC->TextOut(10,370,"  按[保存]按鈕將該數字存入樣品庫中,再識別;");
	pDC->TextOut(10,390,"  或者換一種方式寫。");

	CRect cr(0,0,240,240);
	pDC->FillSolidRect(cr,RGB(220,220,220));

	if(state==1)
	{
        BYTE* pBitmapData = classify->GetData();
        LPBITMAPINFO pBitmapInfo = classify->GetInfo();
        int bitmapHeight = classify->GetHeight();
        int bitmapWidth = classify->GetWidth();
		
		if (classify->GetRGB()) // Has a color table
		{
			CPalette * hPalette1=CreateBitmapPalette(classify);
            CPalette * hOldPalette =
                pDC->SelectPalette(hPalette1, true);
            pDC->RealizePalette();
			::StretchDIBits(pDC->GetSafeHdc(),0,0, bitmapWidth, bitmapHeight,
				0, 0, bitmapWidth , bitmapHeight ,
				pBitmapData, pBitmapInfo,
				DIB_RGB_COLORS, SRCCOPY);
            pDC->SelectPalette(hOldPalette, true);
            hPalette.DeleteObject();
		}
	}
}

/////////////////////////////////////////////////////////////////////////////
// CDSPLITView diagnostics

#ifdef _DEBUG
void CDSPLITView::AssertValid() const
{
	CView::AssertValid();
}

CPalette* CDSPLITView::CreateBitmapPalette(CDib *pBitmap)
{
	struct
	{
		WORD Version;
		WORD NumberOfEntries;
		PALETTEENTRY aEntries[256];
	} palette = { 0x300, 256 };
	
	LPRGBQUAD pRGBTable = pBitmap->GetRGB();
	UINT numberOfColors = pBitmap->GetNumberOfColors();
	
	for(UINT x=0; x<numberOfColors; ++x)
	{
		palette.aEntries[x].peRed =
			pRGBTable[x].rgbRed;
		palette.aEntries[x].peGreen =
			pRGBTable[x].rgbGreen;
		palette.aEntries[x].peBlue =
			pRGBTable[x].rgbBlue;
		palette.aEntries[x].peFlags = 0;
	}
	
	hPalette.CreatePalette((LPLOGPALETTE)&palette);
	return &hPalette;
}

void CDSPLITView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
}

CDSPLITDoc* CDSPLITView::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CDSPLITDoc)));
	return (CDSPLITDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CDSPLITView message handlers

void CDSPLITView::clearmem()
{
	CDSPLITDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
    classify=&pDoc->classify;
}

void CDSPLITView::OnButtonClear() 
{
	clearmem();
	m_pData=classify->m_pData;
	wide=classify->GetWidth();
	LineBytes=(wide*8+31)/32*4;
	height=classify->GetHeight();
	memset(m_pData,220,(wide)*(height-3));
 	state=1;
	Invalidate();	
}

void CDSPLITView::OnButtondisplay() 
{
	

	clearmem();
	m_pData=classify->m_pData;	
	wide=classify->GetWidth();
	LineBytes=(wide*8+31)/32*4;
	height=classify->GetHeight();
 	state=1;
	Invalidate();	
}

void CDSPLITView::OnMouseMove(UINT nFlags, CPoint point) 
{
	if(state==1)
	{
		if(rbtDown)
		{
			SetCursor(AfxGetApp()->LoadCursor(IDC_CURSOR2));
			CRect rc;
			rc.left=point.x-3;
			rc.right=point.x+3;
			rc.top=point.y-3;
			rc.bottom=point.y+3;
			for(int x=point.x-3;x<point.x+3;x++)
				for(int y=point.y-3;y<point.y+3;y++)
					if((x-point.x)*(x-point.x)+(y-point.y)*(y-point.y)<9)
						*(m_pData+LineBytes*(height-y)+x)=220;
			InvalidateRect(rc,TRUE);
		}
		else
		{
			SetCursor(AfxGetApp()->LoadCursor(IDC_CURSOR1));
			if (lbtDown)
			{
				CRect rc;
				rc.left=point.x-5;
				rc.right=point.x+5;
				rc.top=point.y-5;
				rc.bottom=point.y+5;
				for(int x=point.x-5;x<point.x+5;x++)
					for(int y=point.y-5;y<point.y+5;y++)
						if((x-point.x)*(x-point.x)+(y-point.y)*(y-point.y)<16)
							*(m_pData+LineBytes*(height-y)+x)=0;
				InvalidateRect(rc,TRUE);
			}
		}
	}	
	CView::OnMouseMove(nFlags, point);
}

void CDSPLITView::OnLButtonDown(UINT nFlags, CPoint point) 
{
	OnButtondisplay();
	lbtDown=TRUE;
	CRect cr;
	cr.left =3;
	cr.right =wide-3;
	cr.top =8;
	cr.bottom =height;
	ClientToScreen(&cr);
	ClipCursor(&cr);
	CView::OnLButtonDown(nFlags, point);
}

void CDSPLITView::OnLButtonUp(UINT nFlags, CPoint point) 
{
	lbtDown=FALSE;
	ClipCursor(NULL);
	CView::OnLButtonUp(nFlags, point);
}

void CDSPLITView::OnRButtonDown(UINT nFlags, CPoint point) 
{
	rbtDown=TRUE;
	CView::OnRButtonDown(nFlags, point);
}

void CDSPLITView::OnRButtonUp(UINT nFlags, CPoint point) 
{
	rbtDown=FALSE;
	CView::OnRButtonUp(nFlags, point);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久婷婷国产综合精品青草| 日本在线播放一区二区三区| 日韩一级免费观看| 欧美美女一区二区在线观看| 日韩精品一区二区三区蜜臀| 欧美日韩小视频| 欧美猛男男办公室激情| 欧美日本一区二区三区四区| 欧美日韩精品综合在线| 欧美精品一二三| 日韩一区二区视频在线观看| 精品乱人伦小说| 国产三级精品视频| 亚洲免费观看视频| 蜜桃一区二区三区在线| 国产一区美女在线| av一区二区三区| 欧美日韩成人综合天天影院| 日韩天堂在线观看| 国产日韩成人精品| 一区二区在线观看视频 | 国产真实乱对白精彩久久| 秋霞国产午夜精品免费视频| 亚洲一二三区视频在线观看| 天堂在线亚洲视频| 国产一区二区不卡在线| av在线一区二区| 欧美一级精品大片| 国产精品久久久久久亚洲毛片 | 欧美大白屁股肥臀xxxxxx| 9191成人精品久久| 国产婷婷色一区二区三区| 亚洲三级在线看| 蜜桃视频一区二区| 99热精品一区二区| 欧美大片在线观看一区二区| 国产精品大尺度| 日本人妖一区二区| 色综合天天综合网国产成人综合天| 午夜不卡av免费| 国产精品主播直播| 欧美日韩精品久久久| 久久综合九色综合97婷婷女人| 91福利小视频| 国产日韩欧美在线一区| 亚洲电影激情视频网站| 国产69精品久久99不卡| 欧美精品高清视频| 欧美国产精品一区二区| 美女网站色91| 欧美日韩一级二级三级| 国产精品欧美一区二区三区| 久久机这里只有精品| 91在线国内视频| 国产女人18水真多18精品一级做| 日韩午夜av电影| 亚洲在线免费播放| 色综合久久久久久久久| 中文字幕免费不卡| 国产一区二区三区在线观看免费 | 国产精品私人自拍| 全部av―极品视觉盛宴亚洲| 在线日韩一区二区| 亚洲自拍都市欧美小说| 91视频免费观看| 日韩一区欧美一区| 不卡大黄网站免费看| 国产日本一区二区| 成人污视频在线观看| 国产女人18水真多18精品一级做| 欧美激情一区在线观看| 国产精品资源网| 久久久久久久久蜜桃| 激情小说亚洲一区| 国产亚洲午夜高清国产拍精品| 亚洲国产高清在线| 成人黄色在线视频| 国产精品三级视频| 成人激情动漫在线观看| 中文字幕亚洲区| 在线免费观看成人短视频| 亚洲午夜久久久久久久久电影网| 奇米精品一区二区三区四区 | 91福利视频在线| 亚洲精品免费在线播放| 成人免费毛片高清视频| 中文字幕一区二区三区蜜月| av中文字幕不卡| 亚洲影视在线观看| 欧美一级理论片| 国产成人无遮挡在线视频| 亚洲国产成人午夜在线一区| 成人aaaa免费全部观看| 亚洲精品中文在线| 欧美一区二区在线免费播放| 美女网站一区二区| 国产精品家庭影院| 欧美日韩国产小视频在线观看| 精品国产免费一区二区三区香蕉| 国产精品久久久久久久久免费樱桃 | 国产精品国产三级国产普通话蜜臀| 亚洲中国最大av网站| 7799精品视频| 成人午夜激情在线| 亚洲电影第三页| 欧美韩日一区二区三区四区| 色偷偷久久人人79超碰人人澡| 精品三级在线看| 91网上在线视频| 人人爽香蕉精品| 亚洲男人的天堂在线观看| 欧洲国内综合视频| 在线观看免费成人| 黄页视频在线91| 亚洲综合在线视频| 久久久精品人体av艺术| 欧美性xxxxxx少妇| 国产高清不卡一区二区| 亚洲一区二区三区自拍| 2024国产精品视频| 欧美日韩第一区日日骚| 成人av在线一区二区三区| 免费高清在线一区| 亚洲国产精品麻豆| 亚洲欧洲av在线| 精品99999| 91精品国产一区二区三区蜜臀| 婷婷中文字幕综合| 中文字幕不卡在线播放| 91精品国产综合久久久蜜臀粉嫩 | 亚洲一区在线观看视频| 久久先锋资源网| 欧美日韩精品一区视频| 91老师国产黑色丝袜在线| 国产黄色精品网站| 久久国产福利国产秒拍| 日精品一区二区三区| 亚洲第一会所有码转帖| 亚洲欧美日韩电影| 亚洲日韩欧美一区二区在线| 久久久99免费| 久久精品一区蜜桃臀影院| 精品黑人一区二区三区久久 | 亚洲国产精品自拍| 一区二区三区中文在线观看| 中文字幕在线免费不卡| 欧美极品少妇xxxxⅹ高跟鞋 | 欧美一区二区性放荡片| 欧美性大战久久久久久久 | 国产伦理精品不卡| 激情亚洲综合在线| 国产精品一区二区久激情瑜伽| 91精品国产手机| 在线电影院国产精品| 欧美日韩国产片| 欧美一区午夜精品| 91精品国产全国免费观看| 欧美酷刑日本凌虐凌虐| 91麻豆精品国产91久久久久久| 极品销魂美女一区二区三区| 久久国产欧美日韩精品| 久久国产精品99久久人人澡| 国产呦萝稀缺另类资源| 丁香婷婷综合网| 91丨国产丨九色丨pron| 欧美亚洲综合久久| 91精品久久久久久久久99蜜臂| 国产激情视频一区二区在线观看 | 国产精品久久久久久久久图文区| 亚洲国产精品久久久男人的天堂 | 日韩综合一区二区| 亚洲成人av中文| 亚洲精品成人悠悠色影视| 日韩欧美国产综合| 欧美综合久久久| 91福利在线观看| 精品午夜一区二区三区在线观看| 日韩一区二区麻豆国产| 日韩一区二区三区视频在线| 精品粉嫩aⅴ一区二区三区四区| a在线欧美一区| 欧美最猛性xxxxx直播| 日韩精品一区二区三区视频播放 | 亚洲欧美在线另类| 亚洲r级在线视频| 国产精品一区免费在线观看| 国产91精品免费| 这里是久久伊人| 亚洲欧洲日韩av| 另类小说欧美激情| 色综合中文综合网| 欧美性色综合网| 久久亚洲影视婷婷| 亚洲精品国产高清久久伦理二区| 久久综合狠狠综合久久综合88| 欧美天堂一区二区三区| 日韩欧美视频一区| 椎名由奈av一区二区三区| 青青草成人在线观看| 91在线观看地址|