memdev_autodev.c
来自「开发环境:ADS 1.2 目标平台:ARM:S3C44B0 显示屏:tft」· C语言 代码 · 共 263 行 · 第 1/4 页
C
263 行
GUI_ClearRect (20, 30 + bmScaleR140.YSize, 20 + bmScaleR140.XSize - 1, 150); GUI_DrawBitmap(&bmScaleR140, 20, 30); } /* Moving needle */ GUI_SetColor(GUI_WHITE); GUI_AA_FillPolygon(pParam->aPoints, countof(aNeedle), MAG * 120, MAG * 166); /* Fixed foreground */ if (pParam->AutoDevInfo.DrawFixed) { GUI_SetTextMode(GUI_TM_TRANS); GUI_SetColor(0x0fffff); GUI_SetFont(&GUI_Font24B_ASCII); GUI_DispStringHCenterAt("RPM / 1000", 120, 110); }}/********************************************************************* Shows a scale with a needle using a banding memory device**********************************************************************/void DemoScale(void) { int Cnt=0; int tDiff=0; PARAM Param; /* Parameters for drawing routine */ GUI_AUTODEV AutoDev; /* Object for banding memory device */ /* Show message */ GUI_SetColor(GUI_WHITE); GUI_SetBkColor(GUI_BLACK); GUI_Clear(); GUI_SetFont(&GUI_Font8x16); GUI_DispStringHCenterAt("Scale using GUI_AUTODEV", 120, 0); /* Enable high resolution for antialiasing */ GUI_AA_EnableHiRes(); GUI_AA_SetFactor(MAG); /* Create GUI_AUTODEV-object */ GUI_MEMDEV_CreateAuto(&AutoDev); /* Show needle for a fixed time */ while (tDiff < 24000) { /* Get value to display an calculate polygon for needle */ Param.Angle = GetAngle(tDiff)* DEG2RAD; GUI_RotatePolygon(Param.aPoints, aNeedle, countof(aNeedle), Param.Angle); GUI_MEMDEV_DrawAuto(&AutoDev, &Param.AutoDevInfo, &Draw, &Param); Delay(100); Cnt++; tDiff+=50; if (Uart_GetKey()!=0xff) break; } /* Display milliseconds / picture */ GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font8x16); GUI_DispStringHCenterAt("Milliseconds / picture:", 120, 130); GUI_SetTextAlign(GUI_TA_CENTER); GUI_SetTextMode(GUI_TM_NORMAL); GUI_DispNextLine(); GUI_GotoX(120); GUI_DispFloatMin((float)tDiff / (float)Cnt, 2); /* Delete GUI_AUTODEV-object */ GUI_MEMDEV_DeleteAuto(&AutoDev); GUI_AA_DisableHiRes();}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?