亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? gui_drawbitmapex.c

?? 這套代碼已經(jīng)成功一直到S3C44B0X開發(fā)板上
?? C
字號(hào):
/*
*********************************************************************************************************
*                                                uC/GUI
*                        Universal graphic software for embedded applications
*
*                       (c) Copyright 2002, Micrium Inc., Weston, FL
*                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
*
*              礐/GUI is protected by international copyright laws. Knowledge of the
*              source code may not be used to write a similar product. This file may
*              only be used in accordance with a license and should not be redistributed
*              in any way. We appreciate your understanding and fairness.
*
----------------------------------------------------------------------
File        : GUI_DrawBitmapEx.c
Purpose     : Draws a bitmap with free magnification
---------------------------END-OF-HEADER------------------------------
*/

#include "GUI_Private.h"
#include "stdlib.h"

/*********************************************************************
*
*       static code
*
**********************************************************************
*/
/*********************************************************************
*
*       GL_DrawBitmapEx
*/
static void GL_DrawBitmapEx(const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0,
                            int xCenter, int yCenter, int xMag, int yMag) {
  LCD_PIXELINDEX Index, IndexPrev = 0;
  LCD_COLOR Color;
  int x, y, xi, yi, xSize, ySize, xAct, xStart, xMagAbs, xiMag, yMin, yMax, yEnd, yPrev, yStep;
  char Cached, HasTrans = 0;
  /* Use clipping rect to reduce calculation */
  yMin = GUI_Context.ClipRect.y0;
  yMax = GUI_Context.ClipRect.y1;
  /* Init some values */
  xSize    = pBitmap->XSize;
  ySize    = pBitmap->YSize;
  xMagAbs  = ((xMag < 0) ? -xMag : xMag);
  x0      -= (I32)((xMag < 0) ? xSize - xCenter - 1 : xCenter) * (I32)(xMagAbs) / (I32)(1000);
  yEnd     = y0 + GUI__DivideRound32(((I32)(-yCenter) * (I32)(yMag)), 1000);
  yPrev    = yEnd + 1;
  yStep = (yMag < 0) ? -1 : 1;
  if (pBitmap->pPal) {
    if (pBitmap->pPal->HasTrans) {
      HasTrans = 1;
    }
  }
  for (yi = 0; yi < ySize; yi++) {
    y = yEnd;
    yEnd = y0 + GUI__DivideRound32(((I32)(yi + 1 - yCenter) * (I32)(yMag)), 1000);
    if (y != yPrev) {
      yPrev = y;
      do {
        if ((y >= yMin) && (y <= yMax)) {
          xStart = -1;
          x      =  0;
          xiMag  =  0;
          Cached =  0;
          for (xi = 0; xi < xSize; xi++) {
            xiMag += xMagAbs;
            if (xiMag >= 1000) {
              xAct  = (xMag > 0) ? xi : xSize - xi - 1;
              Index = GUI_GetBitmapPixelIndex(pBitmap, xAct, yi);
              if (Index != IndexPrev || xStart == -1) {
                if ((Index == 0) && HasTrans) {
                  /* Transparent color ... clear cache */
                  if (Cached) {
                    LCD_DrawHLine(x0 + xStart, y, x0 + x - 1);
                    Cached = 0;
                  }
                } else {
                  /* Another color ... draw contents of cache */
                  if (Cached && xStart != -1) {
                    LCD_DrawHLine(x0 + xStart, y, x0 + x - 1);
                  }
                  xStart    = x;
                  Cached    = 1;
                  if (pBitmap->pMethods) {
                    Color = pBitmap->pMethods->pfIndex2Color(Index);
                  } else {
                    Color = pBitmap->pPal->pPalEntries[Index];
                  }
                  LCD_SetColorIndex(LCDDEV_L0_Color2Index(Color));
                }
                IndexPrev = Index;
              }
              do {
                x++;
                xiMag -= 1000;
              } while (xiMag >= 1000);
            }
          }
          /* Clear cache */
          if (Cached) {
            LCD_DrawHLine(x0 + xStart, y, x0 + x - 1);
          }
        }
        y += yStep;
      } while ((yMag < 0) ? (y > yEnd) : (y < yEnd));
    }
  }
}

/*********************************************************************
*
*       public code
*
**********************************************************************
*/
/*********************************************************************
*
*       GUI_DrawBitmapEx
*/
void GUI_DrawBitmapEx(const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0,
                      int xCenter, int yCenter, int xMag, int yMag) {
  GUI_COLOR OldColor;
  #if (GUI_WINSUPPORT)
    GUI_RECT r;
  #endif
  GUI_LOCK();
  OldColor = GUI_GetColor();
  #if (GUI_WINSUPPORT)
    WM_ADDORG(x0, y0);
    if (xMag >= 0) {
      r.x0 = x0 + GUI__DivideRound32(((I32)(-xCenter) * (I32)(xMag)), 1000);
      r.x1 = x0 + GUI__DivideRound32(((I32)(pBitmap->XSize - xCenter - 1) * (I32)(xMag)), 1000);
    } else {
      r.x1 = x0 + GUI__DivideRound32(((I32)(-xCenter) * (I32)(xMag)), 1000);
      r.x0 = x0 + GUI__DivideRound32(((I32)(pBitmap->XSize - xCenter - 1) * (I32)(xMag)), 1000);
    }
    if (yMag >= 0) {
      r.y0 = y0 + GUI__DivideRound32(((I32)(-yCenter) * (I32)(yMag)), 1000);
      r.y1 = y0 + GUI__DivideRound32(((I32)(pBitmap->YSize - yCenter - 1) * (I32)(yMag)), 1000);
    } else {
      r.y1 = y0 + GUI__DivideRound32(((I32)(-yCenter) * (I32)(yMag)), 1000);
      r.y0 = y0 + GUI__DivideRound32(((I32)(pBitmap->YSize - yCenter - 1) * (I32)(yMag)), 1000);
    }
    WM_ITERATE_START(&r) {
  #endif
  GL_DrawBitmapEx(pBitmap, x0, y0, xCenter, yCenter, xMag, yMag);
  #if (GUI_WINSUPPORT)
    } WM_ITERATE_END();
  #endif
  GUI_SetColor(OldColor);
  GUI_UNLOCK();
}

/*************************** End of file ****************************/

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产色综合久久ai换脸 | 亚洲成人资源网| 亚洲免费观看在线观看| 夜夜揉揉日日人人青青一国产精品| 欧美一级电影网站| 欧美精品一区二区三区久久久| 在线亚洲精品福利网址导航| 欧美日韩午夜影院| xf在线a精品一区二区视频网站| 精品视频在线视频| 日韩欧美国产1| 国产精品久久久99| 亚洲成人7777| 国产激情一区二区三区| www.日本不卡| 在线播放日韩导航| 中文字幕精品三区| 日韩中文字幕区一区有砖一区| 亚洲欧美视频在线观看| 麻豆成人免费电影| 972aa.com艺术欧美| 欧美一区二区女人| 中文字幕欧美日韩一区| 亚洲第一成年网| 成人美女在线视频| 欧美美女一区二区三区| 国产精品网曝门| 日本成人在线视频网站| fc2成人免费人成在线观看播放| 波多野结衣精品在线| 欧美日韩在线一区二区| 国产无人区一区二区三区| 亚洲va欧美va国产va天堂影院| 亚洲午夜私人影院| 国产成人免费视频一区| 欧美精品日韩一本| 国产精品久久久久天堂| 久久狠狠亚洲综合| 色香蕉久久蜜桃| 久久亚洲欧美国产精品乐播| 亚洲成人av在线电影| 99精品视频一区| 久久午夜色播影院免费高清| 天堂久久一区二区三区| 色综合色狠狠天天综合色| 精品国产伦一区二区三区免费| 国产亚洲欧美一级| 免费观看久久久4p| 91视视频在线直接观看在线看网页在线看| 色综合久久久久综合99| 国产亚洲一二三区| 久久精品国产久精国产| 欧美日韩一区二区不卡| 亚洲色图.com| 成人福利视频在线看| 久久一夜天堂av一区二区三区| 日本一区二区免费在线 | 久久草av在线| 色天使久久综合网天天| 国产亚洲人成网站| 国产精品自在欧美一区| 欧美成人高清电影在线| 日本特黄久久久高潮| 欧美日韩免费在线视频| 亚洲精选在线视频| 91麻豆精品视频| 亚洲色图视频网站| 91丨九色丨国产丨porny| 亚洲视频在线一区观看| 成人激情免费视频| 国产精品乱人伦一区二区| 国产激情91久久精品导航| 久久综合九色综合欧美98| 裸体健美xxxx欧美裸体表演| 欧美一区二区视频在线观看2020 | 亚洲视频在线观看一区| 国产一区二区调教| 精品成人佐山爱一区二区| 日本网站在线观看一区二区三区| 成人一级视频在线观看| 久久综合色8888| 精品亚洲国内自在自线福利| 日韩美女一区二区三区| 九色综合国产一区二区三区| 国产精品三级在线观看| 午夜不卡在线视频| 在线综合亚洲欧美在线视频| 欧美aaaaaa午夜精品| 91精品午夜视频| 青青草精品视频| 精品国产91亚洲一区二区三区婷婷 | 久久在线观看免费| 国产黄色精品网站| 亚洲婷婷国产精品电影人久久| 另类欧美日韩国产在线| 懂色av中文一区二区三区| 久久精品国产精品亚洲精品| 免费看精品久久片| 三级在线观看一区二区| 亚洲乱码国产乱码精品精小说| 国内一区二区在线| 国产香蕉久久精品综合网| 久久综合色天天久久综合图片| 中文幕一区二区三区久久蜜桃| 视频在线观看国产精品| 一区二区三区精品视频| 亚洲乱码国产乱码精品精可以看| 国产精品电影一区二区| 国产日产欧美一区二区视频| 一区二区欧美国产| 成人午夜在线免费| 日韩免费一区二区| 一区二区三区久久| 国产一区二区在线免费观看| 欧美日韩视频在线第一区| 国产欧美久久久精品影院| 日韩国产精品大片| 国产制服丝袜一区| 国产美女一区二区三区| 国产成人在线免费观看| 97精品久久久午夜一区二区三区| 欧美图片一区二区三区| 91福利在线导航| 欧美亚一区二区| 久久午夜羞羞影院免费观看| 一本色道亚洲精品aⅴ| 欧美卡1卡2卡| 国产精品伦一区二区三级视频| 欧美日本不卡视频| 日韩西西人体444www| 欧美精品色一区二区三区| 欧美日本一道本| 国产精品久久久久aaaa樱花| 日本欧美肥老太交大片| 国产高清视频一区| 国产精品亚洲成人| 欧美日韩一区二区三区高清 | 精品福利在线导航| 色综合久久中文综合久久97| 欧美调教femdomvk| 国产成人精品免费一区二区| 91蜜桃网址入口| 91福利国产精品| 日韩一区二区高清| 亚洲主播在线播放| 成人免费电影视频| 国产精品亲子伦对白| 国产精品自在欧美一区| 国产精品亲子伦对白| 成人av一区二区三区| 亚洲色图20p| 91精品国产综合久久久久久漫画| 成人av免费在线播放| 一区二区中文字幕在线| 欧美日韩亚洲综合一区二区三区| 成人黄色免费短视频| 久久久久久电影| 国产精品一区二区91| 久久午夜羞羞影院免费观看| 日韩va欧美va亚洲va久久| 国产一区二区电影| 日韩一级精品视频在线观看| 一级日本不卡的影视| 91国产丝袜在线播放| 亚洲美女偷拍久久| 在线观看一区不卡| 久久五月婷婷丁香社区| 欧美日韩二区三区| 成人午夜视频福利| 精品一区精品二区高清| 亚洲丰满少妇videoshd| 亚洲同性同志一二三专区| 国产精品三级久久久久三级| 国产三级久久久| 精品福利av导航| 欧美一区二区三区视频免费播放| 亚洲日本在线看| 欧美极品xxx| 久久久美女毛片| 欧美精品一区二区三区很污很色的 | 亚洲四区在线观看| 国产精品日日摸夜夜摸av| 久久伊人中文字幕| 精品精品国产高清a毛片牛牛| 国产一区二区h| 精品写真视频在线观看| 免费成人在线视频观看| 秋霞午夜av一区二区三区| 亚洲电影欧美电影有声小说| 一区二区三区日韩欧美精品| 亚洲久草在线视频| 亚洲国产wwwccc36天堂| 亚洲国产精品一区二区久久 | 亚洲国产精品一区二区www| 一区二区在线观看视频在线观看| 日韩一区二区三区av| 日韩欧美色综合| 久久综合九色综合97婷婷| 欧美mv日韩mv国产网站app| 精品88久久久久88久久久|