|
楼主 |
发表于 2017-10-12 20:02:46
|
显示全部楼层
回 eric2013 的帖子
eric2013:你现在的曲线是怎么绘制的,方便的话,贴下曲线的绘制函数。 (2017-10-12 01:58)  //
// _cbWindow_Main_Graph1_Curve
//
static void _cbWindow_Main_Graph1_Curve(WM_MESSAGE * pMsg) {
switch (pMsg->MsgId) {
case WM_PAINT:
if (G1_DrawFlag)//绘点标记
{
if (G1_LastX == -1)//初始化点
{
G1_LastX = 0;
G1_LastY = G1_Curve_SizeY - G1_Value;
GUI_SetPenSize(G_PenSize);
GUI_SetColor(G1_Color);
GUI_DrawPoint(G1_LastX, G1_LastY);
}
else
if (G1_LastX == G1_Point*G1_dx)//边上的点
{
G1_LastX = 0;
G1_LastY = G1_Curve_SizeY - G1_Value;
GUI_SetPenSize(G_PenSize);
GUI_SetColor(G1_Color);
GUI_DrawPoint(G1_LastX, G1_LastY);
}
else
{
GUI_SetPenSize(G_PenSize);
GUI_SetColor(G1_Color);
GUI_DrawLine(G1_LastX, G1_LastY, G1_LastX + G1_dx, G1_Curve_SizeY - G1_Value);
G1_LastX = G1_LastX + G1_dx;
G1_LastY = G1_Curve_SizeY - G1_Value;
}
G1_DrawFlag = 0;
}
break;
default:
WM_DefaultProc(pMsg);
}
} |
|