手机版

示例代码分析 示波器控制

时间:2021-11-19 来源:互联网 编辑:宝哥软件园 浏览:

在同事负责的项目中,他们会扫描硬件中是否有东西存在,所以老板希望有一个图像绘制界面来查看这些扫描结果,所以他做了一个小工具,可以读取同事提供的数据并可视化显示。最简单的显示扫描结果的方法是示波器,但是第三方控件的示波器功能太繁琐,所以他最终决定自己做一个简单的。反正对我来说,他用GDI画的,花时间研究不用的第三方控件,时间也短。

如图所示,示波器其实就是这么一个简单的图。整个思路其实很简单,所以一个示波器分成三个部分来画。第一个是上面的水平线,通常表示数值高的第二个是下面的水平线,第三个表示低直的部分是连接垂直线高度的操作。我用最简单的方法把一个UC的高度直接除以2。当中心Y坐标指示高点时,中心Y坐标向上。height /5的位置表示低点是示波器中心Y坐标向下,height /5的部分,先去掉头尾线,再把数据拆分成两部分:一部分是高点要画的坐标,一部分是低点要画的坐标。有了这两个坐标,垂直线就可以同时画出来。按比例使用示波器的值。这个控件的宽度是按比例调整的。复制代码如下: int max=m _ mapping data[m _ mapping data]。count-1];m_Ratio=(最大m _ mapping datas[0]* 2)/m _ width;//绘制晶圆数据(int i=1,j=0;我是m_mappingDatas。计数;i=2,j){ float xStart=m _ mapping datas[I-1];float Xend=m _ Mapping DataS[I];图形。画线(笔,xStart/m_Ratio,m _ ypposionofafer,xEnd/m_Ratio,m _ ypposionofafer);图形。拉绳((j)1)。ToString(),控件。DefaultFont,brush,(xStart/m_Ratio) - 2,m _ yppositiononfnowafer 1);}//绘制无晶圆数据图形。drawing line(pen,0,m _ ypposionofnoowfer,m_mappingDatas[0]/m_Ratio,m _ ypposionofnoowfer);for(int I=2;我是m_mappingDatas。计数;I=2){ float xStart=m _ mapping datas[I-1];float Xend=m _ Mapping DataS[I];图形。画线(pen,xStart/m_Ratio,m _ yppositiononfnowfer,xEnd/m_Ratio,m _ yppositiononfnowfer);}图形。画线(钢笔,m_mappingDatas[m_mappingDatas。Count - 1]/m_Ratio,m _ yppositiononofnowfer,m_width,m _ yppositiononofnowfer);//绘制垂直线for(int I=1;我是m_mappingDatas。计数;I=2){ float X1=m _ mapping datas[I-1];float X2=m _ mapping DataS[I];图形。画线(笔,X1/m_Ratio,m _ yPositionOfWafer,X1/m_Ratio,m _ ypposionofowfer);图形。画线(钢笔,X2/m_Ratio,m _ yPositionOfWafer,X2/m_Ratio,m _ ypposionofowfer);}在我的代码中,我要扫描半导体晶圆,所以高点表示有晶圆,低点表示没有下载晶圆项目。

版权声明:示例代码分析 示波器控制是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。