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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? guipolye.c

?? C語言和ucGUI實現的電子地圖功能,地圖的移動(方向鍵),縮放,查找
?? C
字號:
/*
*********************************************************************************************************
*                                                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        : GUIPolyE.c
Purpose     : Polygon enlarge
----------------------------------------------------------------------
*/

#include <math.h>
#include "GUI.h"
#include "GUIDebug.h"

/*********************************************************************
*
*       Types
*
**********************************************************************
*/

typedef struct {
  float x, y;
} tfPoint;

/*********************************************************************
*
*       Static code
*
**********************************************************************
*/
/*********************************************************************
*
*       _fround
*/
static int _fround(float f) {
  if (f>0)
    return f+0.5;
  return f-0.5;
}

/*********************************************************************
*
*       _Normalize
*/
static void _Normalize(tfPoint* pfPoint) {
  float fx = pfPoint->x;
  float fy = pfPoint->y;
  float r = sqrt(fx*fx + fy*fy);
  if (r > 0) {
    pfPoint->x = fx/r;
    pfPoint->y = fy/r;
  }
}

/*********************************************************************
*
*       _ReverseLen
*/
static void _ReverseLen(tfPoint* pfPoint) {
  float fx = pfPoint->x;
  float fy = pfPoint->y;
  float r = sqrt(fx*fx/2 + fy*fy/2);
  if (r > 0) {
    pfPoint->x = fx/r/r;
    pfPoint->y = fy/r/r;
  }
}

/*********************************************************************
*
*       _GetVect
*/
static void _GetVect(tfPoint* pfPoint, const GUI_POINT* pSrc, int NumPoints, int Index) {
  int Off0 = (Index + NumPoints-1) % NumPoints;
  int Off1 = Index % NumPoints;
  pfPoint->x = pSrc[Off1].x - pSrc[Off0].x; 
  pfPoint->y = pSrc[Off1].y - pSrc[Off0].y; 
}

/*********************************************************************
*
*       Public code
*
**********************************************************************
*/
/*********************************************************************
*
*       GUI_EnlargePolygon
*/
#if 0
void GUI_EnlargePolygon(GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, int Len) {
  int j;
  /* Calc destination points */
  for (j=0; j<NumPoints; j++) {
    int x, y;
    tfPoint aVect[2];
    /* Get the vectors */
    _GetVect(&aVect[0], pSrc, NumPoints, j);
    _GetVect(&aVect[1], pSrc, NumPoints, j+1);
    /* Normalize the vectors and add vectors */
    _Normalize(&aVect[0]);
    _Normalize(&aVect[1]);
    aVect[0].x += aVect[1].x;
    aVect[0].y += aVect[1].y;
    /* Resulting vector needs to be normalized again */
    _Normalize(&aVect[0]);
    x =  _fround(aVect[0].y * Len);
    y = -_fround(aVect[0].x * Len);
    /* Store destination */
    (pDest+j)->x = (pSrc+j)->x + x;
    (pDest+j)->y = (pSrc+j)->y + y;
  }
}

#else

void GUI_EnlargePolygon(GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, int Len) {
  int j;
  /* Calc destination points */
  for (j=0; j<NumPoints; j++) {
    int x, y;
    tfPoint aVect[2];
    /* Get the vectors */
    _GetVect(&aVect[0], pSrc, NumPoints, j);
    _GetVect(&aVect[1], pSrc, NumPoints, j+1);
    /* Normalize the vectors and add vectors */
    _Normalize(&aVect[0]);
    _Normalize(&aVect[1]);
    aVect[0].x += aVect[1].x;
    aVect[0].y += aVect[1].y;
    /* Resulting vector needs to be normalized again */
    _ReverseLen(&aVect[0]);
    x =  _fround(aVect[0].y * Len);
    y = -_fround(aVect[0].x * Len);
    /* Store destination */
    (pDest+j)->x = (pSrc+j)->x + x;
    (pDest+j)->y = (pSrc+j)->y + y;
  }
}
#endif

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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区免费观看| 美女视频免费一区| 最新日韩在线视频| 国产欧美日韩在线视频| 国产精品美女久久久久久久久久久| 久久久综合激的五月天| 久久久精品蜜桃| 国产精品热久久久久夜色精品三区| 中文字幕欧美国产| 成人欧美一区二区三区1314| 一级特黄大欧美久久久| 亚洲成人av一区| 精久久久久久久久久久| 国产91精品在线观看| 99re热这里只有精品免费视频| 99国产精品久| 91精品国产高清一区二区三区蜜臀| 日韩免费看的电影| 国产精品高潮久久久久无| 亚洲激情自拍偷拍| 毛片av中文字幕一区二区| 国产精品一区久久久久| 99久久精品国产一区二区三区| 色综合天天视频在线观看| 欧美色区777第一页| 欧美精品一区二区三区蜜臀| 国产人成一区二区三区影院| 亚洲美腿欧美偷拍| 日本美女一区二区三区| 国产.欧美.日韩| 欧美写真视频网站| 久久久一区二区| 亚洲午夜久久久久久久久电影网| 久久国产尿小便嘘嘘尿| 99re热这里只有精品视频| 7777精品伊人久久久大香线蕉最新版| 久久亚洲二区三区| 亚洲精品国久久99热| 久久国产日韩欧美精品| 欧美亚洲综合在线| 国产欧美一区二区三区鸳鸯浴 | 欧美午夜电影一区| 26uuu国产日韩综合| 夜夜嗨av一区二区三区网页| 国产麻豆视频精品| 91精品久久久久久久99蜜桃| 中文字幕一区二区三区在线播放 | 久久先锋影音av| 亚洲综合色在线| 国产成人精品三级麻豆| 日韩欧美国产午夜精品| 午夜久久电影网| 色天使色偷偷av一区二区| 国产亚洲视频系列| 精品一区二区精品| 欧美一二三在线| 亚洲电影在线播放| 在线观看日韩电影| 亚洲精品日韩综合观看成人91| 成人精品视频一区二区三区| xfplay精品久久| 麻豆91小视频| 欧美成人午夜电影| 奇米一区二区三区av| 在线播放中文一区| 日日摸夜夜添夜夜添亚洲女人| 91传媒视频在线播放| 国产精品久久久久影院| 成人免费观看男女羞羞视频| 国产婷婷色一区二区三区在线| 蜜桃视频在线观看一区| 91精品国产一区二区人妖| 亚洲成a人v欧美综合天堂| 欧美在线观看视频在线| 亚洲成人久久影院| 欧美久久一二三四区| 午夜视频一区二区| 在线欧美日韩精品| 偷窥少妇高潮呻吟av久久免费| 在线观看视频一区| 日韩在线一区二区三区| 欧美丰满高潮xxxx喷水动漫| 免费成人在线观看视频| 精品欧美一区二区三区精品久久| 久久成人av少妇免费| 26uuu另类欧美| 不卡一二三区首页| 一区二区三区在线免费观看| 欧美三级电影网| 麻豆专区一区二区三区四区五区| 日韩一卡二卡三卡国产欧美| 黑人巨大精品欧美一区| 国产精品久久久久久久久晋中| eeuss鲁片一区二区三区在线看| 亚洲男人的天堂在线观看| 欧美亚日韩国产aⅴ精品中极品| 午夜欧美大尺度福利影院在线看| 日韩欧美亚洲国产另类| 成人黄色小视频| 亚洲激情六月丁香| 欧美本精品男人aⅴ天堂| www.欧美.com| 日本中文一区二区三区| 久久久久久久久久久久久女国产乱 | 91精品国产综合久久精品麻豆| 另类小说图片综合网| 亚洲丝袜美腿综合| 欧美一级淫片007| 岛国精品在线播放| 五月婷婷久久丁香| 国产精品国产三级国产有无不卡| 7777精品伊人久久久大香线蕉的 | 国产三级久久久| 欧美日韩国产三级| 成人精品免费视频| 日韩av午夜在线观看| 国产精品欧美久久久久无广告| 欧美日韩在线精品一区二区三区激情 | 欧美日本在线观看| 99精品视频一区二区三区| 蜜臀久久久久久久| 亚洲午夜久久久久久久久久久 | 夜夜爽夜夜爽精品视频| 亚洲精品在线观| 在线不卡欧美精品一区二区三区| 97久久精品人人做人人爽| 国内欧美视频一区二区| 天堂资源在线中文精品| 中文字幕欧美一| 国产精品欧美久久久久一区二区| 欧美一区二区啪啪| 欧美天天综合网| www.99精品| 成人免费视频国产在线观看| 精品综合久久久久久8888| 午夜欧美视频在线观看| 亚洲最大色网站| 亚洲欧洲国产日本综合| 久久久久国产精品麻豆| 2021中文字幕一区亚洲| 欧美一区二区三区系列电影| 欧美三电影在线| 欧美亚洲国产一区二区三区va| 成人av资源网站| 国产91精品免费| 粉嫩13p一区二区三区| 国产二区国产一区在线观看| 精品中文av资源站在线观看| 蜜臀av一区二区三区| 日韩成人免费电影| 日韩va欧美va亚洲va久久| 天堂精品中文字幕在线| 亚洲电影一级片| 免费欧美在线视频| 久久成人18免费观看| 国产尤物一区二区| 国产不卡视频一区| 99国产麻豆精品| 欧美影片第一页| 欧美丰满嫩嫩电影| 欧美精品一区二区不卡 | 在线观看国产日韩| 欧美日韩在线电影| 91精品国产欧美一区二区| 日韩一区二区三| 国产人成亚洲第一网站在线播放| 国产精品美女视频| 亚洲最大成人网4388xx| 天堂久久久久va久久久久| 狠狠色狠狠色合久久伊人| 成人一区二区视频| 91福利精品第一导航| 欧美一区二区成人| 日本一区免费视频| 亚洲精品国产a久久久久久| 婷婷丁香激情综合| 国产成人av电影在线观看| 99免费精品在线观看| 欧美日韩一区二区电影| 亚洲精品在线电影| 一区在线观看免费| 免费欧美在线视频| 不卡av在线免费观看| 欧美日韩精品专区| 日本一区免费视频| 日本不卡一区二区三区高清视频| 国产精品一区二区免费不卡 | 国产精品视频线看| 亚洲欧美福利一区二区| 日韩电影一区二区三区四区| 国产成人在线视频播放| 色婷婷久久久久swag精品| 日韩女优毛片在线| 亚洲人一二三区| 久久99精品久久久久久久久久久久| 成人性生交大片免费看在线播放| 精品视频免费在线| 国产精品夫妻自拍| 国产一区二区三区久久悠悠色av| 欧美午夜精品久久久久久孕妇 |