一个关于“脏矩阵”绘图的问题
CDC* pDC = GetDC();
if ( m_bCircling )
{//滚动显示,只显示一张照片
if ( m_memBKDC.m_hDC )
{
pDC->BitBlt(0, 0, m_PicPreSize.cx, m_PicPreSize.cy, &m_memBKDC, 0, 0, SRCCOPY);
TRACE("背景覆盖");
DeleteObject(m_memBmp);
m_memBKDC.DeleteDC();
}
m_memBKDC.CreateCompatibleDC(pDC);
CMyBMP* pMyBmp = new CMyBMP;
InitialBMPEx(pMyBmp);
m_PicExPos.cx = (m_size.cx - pMyBmp->m_size.cx)/2;
m_PicExPos.cy = (m_size.cy - pMyBmp->m_size.cy)/2;
m_PicPrePos = m_PicExPos;
m_PicPreSize = pMyBmp->m_size;
m_PicExSize = pMyBmp->m_size;
m_memBmp = CreateCompatibleBitmap(m_memBKDC.m_hDC, m_PicExSize.cx, m_PicExSize.cy);
m_memBKDC.SelectObject(m_memBmp);
m_memBKDC.BitBlt(0, 0, m_PicExSize.cx, m_PicExSize.cy, pDC, m_PicExPos.cx, m_PicExPos.cy, SRCCOPY);
CBmpSpecialShow::SpecialShow(0, pDC, m_PicExPos.cx, m_PicExPos.cy, pMyBmp->m_Bmp, pMyBmp->m_size);
CRect rcText((m_size.cx-pMyBmp->m_size.cx)/2, (m_size.cy+pMyBmp->m_size.cy)/2, pMyBmp->m_size.cx, pMyBmp->m_size.cy/10 );
pDC->SetBkMode(TRANSPARENT);
pDC->DrawText(pMyBmp->m_strName, rcText, DT_CENTER | DT_VCENTER);
TRACE(pMyBmp->m_strName);
TRACE("\n");
}
思路:
整个对话框的背景是在另外一个函数里面绘制的
这里是绘制前景
绘制第一副图片的时候
得到图片的区域左上角坐标以及区域的宽,高
然后把屏幕DC上面的东西保存到内存dc里面
在下一次绘制前景(新图片)的时候
仅仅把原本那个“被弄脏”的区域覆盖回去
然后再生成一个新的区域,把背景保存到内存里面
然后再贴新的图片
...
循环
但是发现效果和想象中不同
求教
...全文
相关推荐
【科研绘图】【矩阵气泡图】:附Origin详细画图流程
矩阵气泡图,是一种高度专业化的统计图,它通过结合散点图的布局与气泡大小,以及颜色编码,同时展现三个或更多变量之间的关系,为复杂数据的直观解读提供了强大支持。 在本例图中,前两个变量分别为横纵坐标,第三和第四个变量分别通过气泡的大小和颜色来呈现。在视觉上辅助读者直观地比较四个变量的关系。
R语言相关性矩阵绘图
不废话,直接放图和代码啦! 一个图能展示分布、散点、相关系数三个信息,很好用啦! install.packages('PerformanceAnalytics') chart.Correlation(X, histogram=TRUE, pch=19)
ParaView : 绘图矩阵视图
ParaView : 绘图矩阵视图
python 混淆矩阵绘图
y_predicted=bdt.predict(X_test) from sklearn.metrics import confusion_matrix from sklearn import cross_validation, metrics import matplotlib.pyplot as plt plt.rc('figure',figsize=(5,5)) cm = confusi...
11、MATLAB矩阵操作与绘图指南
本博客详细介绍了MATLAB在矩阵操作和数据可视化方面的强大功能。内容涵盖MATLAB矩阵的创建、组合与分析,特殊矩阵的生成,以及从基础到高级的二维和三维绘图技巧。此外,还提供了多个实际应用示例,帮助读者掌握如何使用MATLAB解决工程和科学问题。


界面
