函数纹理(国际象棋棋盘纹理&粗布纹理)MFC实现 源码百度云下载
- 国际象棋棋盘纹理(效果图见最后)
1 //国际象棋纹理函数
2 //g(u, v) = a , 向下取整(8u)+向下取整(8v) 为 偶数
3 //g(u, v) = b ,向下取整(8u)+向下取整(8v) 为 奇数
4 void CChessGiagView::DrawChess(double a, double b, double step)
5 {
6 CDC * pDC = GetDC();
7 //自定义二维坐标系
8 CRect rect;
9 GetClientRect(&rect);
10 pDC->SetMapMode(MM_ANISOTROPIC);
11 pDC->SetWindowExt(rect.Width(), rect.Height());
12 pDC->SetViewportExt(rect.Width(), -rect.Height());
13 pDC->SetViewportOrg(rect.Width()/2, rect.Height()/2);
14 rect.OffsetRect(-rect.Width()/2, -rect.Height()/2);