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

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

?? multicolorplotbtn.cpp

?? 實時存儲 "實時 "顯示的功能.具體就是: 從機器的pci板子獲得采集的數(shù)據(jù),這些數(shù)據(jù)要實時保存到機器的陣列硬盤上 同時想在采集的過程中顯示一下數(shù)據(jù)的波形. ////采集板的數(shù)據(jù)來到計算機內(nèi)存
?? CPP
字號:
////////////////////////////////////  MulticolorPlotBtn.cpp  ////////////////////////////////////

#include "StdAfx.h"
#include ".\multicolorplotbtn.h"

#include "MemDC.h"


#define GRID_TIMER     1
//網(wǎng)格刷新速率
#define GRID_UPDATE_SPEED   50

typedef struct
{
 float fx ;
 float fy ;
} DATA_POINT ;
DATA_POINT * g_DataPoint ;


CMulticolorPlotBtn::CMulticolorPlotBtn()
: nPlotType(BAR)
, bfInit(false)
, nGridResolutionX(10)
, nGridResolutionY(10)
, nGridScrollSpeedX(-1)
, nGridScrollSpeedY(0)
, nPlotGranulatrity(2)
, nGridLineWidth(1)
, m_clrDarkBack(RGB(0,0,75))
, m_clrDarkLine(RGB(32,64,32))
, nPlotData(0)
, pfData(NULL)
, fLow(0.0)
, fHigh(100.0)
, fScaleY(1.0)
, m_clrCyanData(RGB(0,255,255))
, nGridStarPosX(0)
, nGridStarPosY(0)
, bLock(true)
, m_clrAxisScaleY(RGB(0,255,255))
, nShowFormatDataText(0)
, m_clrLinePen(RGB(0,255,0))
, nLineWidth(1)
{
 // 關(guān)鍵代碼
 // 初始化關(guān)鍵代碼的 C_S 結(jié)構(gòu)
 InitializeCriticalSection ( & g_cs ) ;

 // 初始化標(biāo)題
 _stprintf ( szTitls , _TEXT ( "%s" ) , _TEXT ( "" ) ) ;
 // 初始化單位
 _stprintf ( szUints , _TEXT ( "%s" ) , _TEXT ( "" ) ) ;
}

CMulticolorPlotBtn::~CMulticolorPlotBtn(void)
{
 if ( pfData )
 {
  delete [] pfData ;
 }

 // 釋放關(guān)鍵代碼
 DeleteCriticalSection ( & g_cs ) ;
}

BEGIN_MESSAGE_MAP(CMulticolorPlotBtn, CButton)
 ON_WM_TIMER()
END_MESSAGE_MAP()

void CMulticolorPlotBtn::PreSubclassWindow()
{
 // TODO: 在此添加專用代碼和/或調(diào)用基類

 // 避免把該按鈕當(dāng)成下壓式按鈕
 ModifyStyle( 0 , BS_OWNERDRAW ) ;

 GetWindowRect ( & m_rect ) ;
 ScreenToClient ( & m_rect ) ;

 // 得到該控件的寬和高
 m_Size.cx = m_rect.right - m_rect.left ;
 m_Size.cy = m_rect.bottom - m_rect.top ;

 // 計算控件可容納可見的數(shù)據(jù)點數(shù)
 nPlotData = m_Size.cx / nPlotGranulatrity ;

 // 設(shè)置控件上顯示的文字的字體和大小
 m_SmallFont.CreateFont( -11 , 0 , 0 , 0 , FW_THIN , false , false , false , DEFAULT_CHARSET ,
  OUT_DEFAULT_divCIS , CLIP_DEFAULT_divCIS , DEFAULT_QUALITY , VARIABLE_PITCH , _TEXT( "Times New Roman" ) ) ;

 // 給實際數(shù)據(jù)分配內(nèi)存
 pfData = new float [ nPlotData ] ;
 if ( pfData )
 {
  // 初始化數(shù)據(jù)為 0
  ZeroMemory ( pfData , sizeof ( pfData ) * nPlotData ) ;

  m_GridPen.CreatePen ( PS_SOLID , nGridLineWidth , m_clrDarkLine ) ;

  GetWindowRect ( & m_rect ) ;
  ScreenToClient ( & m_rect ) ;

  CRgn m_Rgn ;
  m_Rgn.CreateRoundRectRgn ( 0 , 0 , m_Size.cx , m_Size.cy , 10 , 10 ) ;

  SetWindowRgn ( ( HRGN ) m_Rgn , true ) ;

  SetTimer ( GRID_TIMER , GRID_UPDATE_SPEED , NULL ) ;
 }

 CButton::PreSubclassWindow();
}

void CMulticolorPlotBtn::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
{

 // TODO:  添加您的代碼以繪制指定項
 ASSERT( lpDrawItemStruct != NULL ) ;

 CDC * pDC   = CDC::FromHandle( lpDrawItemStruct -> hDC ) ;

 // 創(chuàng)建內(nèi)存 DC
 CMemDC * pMemDC = new CMemDC ( pDC ) ;

 // 得到控件大小
 RECT clipRect ;
 pMemDC->GetClipBox ( & clipRect ) ;

 if ( bfInit == false )
 {
  // 如果沒有初始化,則初始化畫刷
  CBitmap m_Bmp ;

  // 如果控件大小有效
  if ( clipRect.right - clipRect.left > 1 )
  {
   // 根據(jù)數(shù)據(jù)點分辨率創(chuàng)建內(nèi)存位圖
   m_Bmp.CreateCompatibleBitmap( pMemDC ,nPlotGranulatrity , m_Size.cy ) ;

   CBitmap * pOldBmp = pMemDC->SelectObject( & m_Bmp ) ;

   CSize m_BmpSize = m_Bmp.GetBitmapDimension () ;  

   // 根據(jù)不同的曲線分別繪制
   if ( nPlotType == BAR )    
   {
    double factor = 255.0 / ( float ) m_Size.cy ;

    BYTE r , g , b ;

    for ( int x = 0 ; x < m_Size.cy ; x ++ )
    {
     g = ( BYTE ) ( 255 - factor * x ) ;
     r = ( BYTE ) ( factor * x ) ;
     b = ( BYTE ) 64 ;

     pMemDC->SetPixelV ( 0 , x , RGB ( r , g , b ) ) ;
     pMemDC->SetPixelV ( 1 , x , RGB ( r , g , b ) ) ;
    }
   }
   else if ( nPlotType == LINE )
   {
   }
   else
   {
   }

   pMemDC->SelectObject ( pOldBmp ) ;

   // 生成位圖畫刷
   m_clrBrush.CreatePatternBrush ( & m_Bmp ) ;


   bfInit = true ;
  }
 }

 if ( bfInit )
 {
  // 填充背景色
  pMemDC->FillSolidRect ( & clipRect , m_clrDarkBack ) ;

  CFont * pOldFont ;

  //
  CPoint orgBrushOrigin = pMemDC->GetBrushOrg () ;

  // 畫網(wǎng)格
  int nGridLinesX = m_Size.cx / nGridResolutionX ;
  int nGridLinesY = m_Size.cy / nGridResolutionY ;

  // 選擇畫筆
  CPen * pOldPen = pMemDC->SelectObject ( & m_GridPen ) ;

  // 創(chuàng)建垂直線
  for ( int x = 0 ; x <= nGridLinesX ; x ++ )
  {
   pMemDC->MoveTo ( x * nGridResolutionX + nGridStarPosX , 0   );
   pMemDC->LineTo ( x * nGridResolutionX + nGridStarPosX , m_Size.cy );
  }
  // 添加水平線
  for ( int y = 0 ; y <= nGridLinesY ; y ++ )
  {
   pMemDC->MoveTo ( 0   , nGridStarPosY + m_Size.cy - y * nGridResolutionY - 2 ) ;
   pMemDC->LineTo ( m_Size.cx , nGridStarPosY + m_Size.cy - y * nGridResolutionY - 2 ) ;
  }
  // 控制網(wǎng)格正確移動
  nGridStarPosX += nGridScrollSpeedX ;
  nGridStarPosY += nGridScrollSpeedY ;

  if ( nGridStarPosX < 0     ) nGridStarPosX = nGridResolutionX ;
  if ( nGridStarPosX > nGridResolutionX ) nGridStarPosX = 0 ;
  if ( nGridStarPosY < 0     ) nGridStarPosY = nGridResolutionY ;
  if ( nGridStarPosY > nGridResolutionY ) nGridStarPosY = 0 ;

  // 還原網(wǎng)格畫筆
  pMemDC->SelectObject ( pOldPen ) ;

  // 用關(guān)鍵代碼同步和SetData
  EnterCriticalSection ( & g_cs ) ;

  // 畫數(shù)據(jù)
  float fx , fy ;
  if ( nPlotType == BAR )
  {
   RECT rFill ;

   for ( int nData = 0 ; nData < nPlotData ; nData ++ )
   {
    fx = ( float ) ( m_rect.left + nData * nPlotGranulatrity ) ;
    fy = fabs ( ( float ) ( m_rect.bottom - ( ( ( ( pfData[nData] - fLow ) / ( fHigh - fLow ) ) * m_Size.cy ) ) ) ) ;

    rFill.bottom = ( LONG ) m_rect.bottom ;
    rFill.top  = ( LONG ) fy ;
    rFill.left  = ( LONG ) fx ;
    rFill.right  = ( LONG ) ( fx + nPlotGranulatrity ) ;

    pMemDC->SetBrushOrg ( ( int ) fx , m_rect.bottom ) ;

    // 用初始化畫刷時生成的漸變位圖畫刷填充矩形
    pMemDC->FillRect ( & rFill , & m_clrBrush ) ;
    // 畫數(shù)據(jù)點處的顏色
    pMemDC->SetPixelV ( ( int ) fx , ( int ) fy , m_clrCyanData  ) ;

   }
  }
  else if ( nPlotType == LINE )
  {
   CPoint * g_DataPoint = new CPoint [nPlotData] ;

   // 創(chuàng)建曲線畫筆
   CPen m_Pen ;
   m_Pen.CreatePen ( PS_SOLID , nLineWidth , m_clrLinePen ) ;
   CPen * m_pOldPen = pMemDC->SelectObject ( & m_Pen ) ;

   for ( int nData = 0 ; nData < nPlotData ; nData ++ )
   {
    g_DataPoint[nData].x  =  ( LONG ) ( m_rect.left + nData * nPlotGranulatrity ) ;
    g_DataPoint[nData].y  =  ( LONG ) fabs ( ( float ) ( m_rect.bottom - ( ( ( ( pfData[nData] - fLow ) / ( fHigh - fLow ) ) * m_Size.cy ) ) ) ) ;
   }

   pMemDC->Polyline ( g_DataPoint , nPlotData ) ;

   pMemDC->SelectObject ( m_pOldPen ) ;

   delete [] g_DataPoint ;


  }
  else
  {
  }


  // 繪制Y軸刻度
  TCHAR szAxisScaleYMax [MAX_PATH * sizeof ( TCHAR ) + 1] ;
  TCHAR szAxisScaleYMin [MAX_PATH * sizeof ( TCHAR ) + 1] ;
  TCHAR szAxisScaleY   [MAX_PATH * sizeof ( TCHAR ) + 1] ;

  ZeroMemory ( & szAxisScaleYMax  , sizeof ( szAxisScaleYMax ) ) ;
  ZeroMemory ( & szAxisScaleYMin  , sizeof ( szAxisScaleYMin ) ) ;
  ZeroMemory ( & szAxisScaleY   , sizeof ( szAxisScaleY  ) ) ;

  COLORREF clrText = pMemDC->GetTextColor () ;
  int nBkMode = pMemDC->GetBkMode () ;
  pMemDC->SetTextColor ( m_clrAxisScaleY ) ;
  pMemDC->SetBkMode ( TRANSPARENT ) ;

  pOldFont = pMemDC->SelectObject ( & m_SmallFont ) ;

  // 如果要求現(xiàn)實Y軸刻度數(shù)字
  switch ( nShowFormatDataText )
  {
  case 0 :    // 不顯示
   {
   } break ;
  case 1 :    // 僅顯示標(biāo)題
   {
    _stprintf ( szAxisScaleYMax , _TEXT ( "%s" ) , szTitls ) ;

    pMemDC->TextOut ( 0 ,     0 , szAxisScaleYMax ) ;
   } break ;
  case 2 :    // 顯示標(biāo)題和流量比例
   {
    _stprintf ( szAxisScaleYMax , _TEXT ( "%s %8.1f %s / %8.1f" ) , szTitls , pfData [ nPlotData - 1 ] , szUints , fHigh ) ;

    pMemDC->TextOut ( 0 ,     0 , szAxisScaleYMax ) ;
   } break ;
  case 3 :    // 顯示最大最小值
   {
    // 格式化最大值和標(biāo)題及單位
    _stprintf ( szAxisScaleYMax , _TEXT ( "%s %8.1f %s / %8.1f" ) , szTitls , pfData [ nPlotData - 1 ] , szUints , fHigh ) ;
    // 格式化最小值
    _stprintf ( szAxisScaleYMin , _TEXT ( "%8.1f" ) , fLow ) ;

    pMemDC->TextOut ( 0 ,     0 , szAxisScaleYMax ) ;
    pMemDC->TextOut ( 0 , m_Size.cy - 10 , szAxisScaleYMin ) ;
   } break ;
  case 4 :    // 顯示全部
   {
    // 格式化最大值和標(biāo)題及單位
    _stprintf ( szAxisScaleYMax , _TEXT ( "%s %8.1f %s / %8.1f" ) , szTitls , pfData [ nPlotData - 1 ] , szUints , fHigh ) ;
    // 格式化最小值
    _stprintf ( szAxisScaleYMin , _TEXT ( "%8.1f" ) , fLow ) ;
    // 格式化中值
    _stprintf ( szAxisScaleY , _TEXT ( "%8.1f" ) , ( ( fHigh - fLow ) / 2.0 + fLow ) ) ;
    

    // 繪制Y軸刻度
    pMemDC->TextOut ( 0 ,     0 , szAxisScaleYMax ) ;
    pMemDC->TextOut ( 0 , m_Size.cy - 10 , szAxisScaleYMin ) ;
    pMemDC->TextOut ( 0 , m_Size.cy /  2 , szAxisScaleY  ) ;
   } break ;
 
  }

  pMemDC->SetTextColor ( clrText ) ;
  pMemDC->SetBkMode ( nBkMode ) ;
  pMemDC->SelectObject ( pOldFont ) ;

  // 離開關(guān)鍵代碼
  LeaveCriticalSection ( & g_cs ) ;

  pMemDC->SetBrushOrg ( orgBrushOrigin.x , orgBrushOrigin.y ) ;
 }

 delete pMemDC ;

 ReleaseDC ( pDC ) ;
}


void CMulticolorPlotBtn::OnTimer(UINT nIDEvent)
{
 // TODO: 在此添加消息處理程序代碼和/或調(diào)用默認值
 switch ( nIDEvent )
 {
 case GRID_TIMER :
  {
  } break ;
 }

 Invalidate ( false ) ;

 CButton::OnTimer(nIDEvent);
}

// BAR 顏色

void CMulticolorPlotBtn::SetBarColor ( COLORREF clrUp , COLORREF clrDown , bool bfRfastness ,
           bool bfGfastness , bool bfBfastness )
{
}

// 設(shè)置數(shù)據(jù)
void CMulticolorPlotBtn::SetData ( float fData )
{
 // 用關(guān)鍵代碼同步
 EnterCriticalSection ( & g_cs ) ;

 for ( int n = 0 ; n < nPlotData - 1 ; n ++ )
 {
  pfData [ n ] = pfData [ n + 1 ] ;
 }

 pfData [ nPlotData - 1 ] = fData ;

 if ( bLock )       // 鎖定比例范圍
 {
 }
 else
 {
  // 保存最小值
  if ( fLow > fData )
  {
   fLow = fData ;
  }
  // 保存最大值
  if ( fHigh < fData )
  {
   fHigh = fData ;
  }
 }

 // 離開關(guān)鍵代碼
 LeaveCriticalSection ( & g_cs ) ;
}

// 鎖定數(shù)據(jù)顯示范圍
void CMulticolorPlotBtn::LockRang ( bool bfLock )
{
 bLock = bfLock ;
}

void CMulticolorPlotBtn::LockRang ( float fMin , float fMax )
{
 fLow = fMin ;
 fHigh = fMax ;

 LockRang ( true ) ;
}

////////////////////////////////////  end ////////////////////////////////////

/////////////////////////////  MemDC.h  ///////////////////////////////////////////////////

#if !defined(AFX_MEMDC_H__CA1D3541_7235_11D1_ABBA_00A0243D1382__INCLUDED_)
#define AFX_MEMDC_H__CA1D3541_7235_11D1_ABBA_00A0243D1382__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

//////////////////////////////////////////////////
// CMemDC 實現(xiàn)一個內(nèi)存DC

class CMemDC : public CDC
{
private:
    CBitmap  m_bitmap;      // 實際的bitmap
    CBitmap* m_pOldBitmap;  // 原先在CMemDC中的位圖
    CDC*     m_pDC;         // 保存從構(gòu)造函數(shù)中傳來的CDC
    CRect    m_rect;        // 畫的矩形區(qū)域
    BOOL     m_bMemDC;      // 如果CDC是一個內(nèi)存DC,則為TRUE

public:

    CMemDC(CDC* pDC) : CDC()
    {
        ASSERT(pDC != NULL);

        m_pDC = pDC;
        m_pOldBitmap = NULL;
        m_bMemDC = !pDC->IsPrinting();//判斷是否是一個內(nèi)存DC
             
        if (m_bMemDC)    // 創(chuàng)建一個內(nèi)存DC
        {
            pDC->GetClipBox(&m_rect);
            CreateCompatibleDC(pDC);
            m_bitmap.CreateCompatibleBitmap(pDC, m_rect.Width(), m_rect.Height());
            m_pOldBitmap = SelectObject(&m_bitmap);
            SetWindowOrg(m_rect.left, m_rect.top);
        }
        else  // 這不是一個內(nèi)存DC,我們只拷貝相關(guān)的DC部分以備打印
        {
            m_bPrinting = pDC->m_bPrinting;
            m_hDC       = pDC->m_hDC;
            m_hAttribDC = pDC->m_hAttribDC;
        }
    }
  
    ~CMemDC()
    {
        if (m_bMemDC)
        {   
            // 拷貝實際的位圖到屏幕上
            m_pDC->BitBlt(m_rect.left, m_rect.top, m_rect.Width(), m_rect.Height(),
                          this, m_rect.left, m_rect.top, SRCCOPY);
            //裝入原始的位圖
            SelectObject(m_pOldBitmap);
        }
  else
  {
            m_hDC = m_hAttribDC = NULL;
        }
    }

    // 允許作為指針
    CMemDC* operator->() {return this;}
    operator CMemDC*() {return this;}

};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the divvious line.

#endif // !defined(AFX_MEMDC_H__CA1D3541_7235_11D1_ABBA_00A0243D1382__INCLUDED_)

////////////////////////////////////  end ////////////////////////////////////

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产自产高清不卡| 17c精品麻豆一区二区免费| 精品国产人成亚洲区| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 国产精品亚洲第一| 成人ar影院免费观看视频| 91麻豆swag| 欧美一区二区免费| 国产日韩欧美麻豆| 亚洲精品乱码久久久久久| 欧美aa在线视频| 成人免费看黄yyy456| 欧美日韩国产高清一区| 久久影视一区二区| 一区二区三区电影在线播| 日本aⅴ免费视频一区二区三区| 国产精品一二三四| 欧美三区在线视频| 久久嫩草精品久久久久| 一区二区三区在线观看网站| 日本最新不卡在线| eeuss鲁片一区二区三区| 91麻豆精品国产91久久久资源速度 | 国产精品五月天| 亚洲国产成人精品视频| 国产馆精品极品| 在线精品视频小说1| 久久综合九色综合久久久精品综合| 最新国产の精品合集bt伙计| 日本不卡高清视频| 91亚洲精品乱码久久久久久蜜桃| 欧美电影免费提供在线观看| 亚洲精品成人悠悠色影视| 国内成+人亚洲+欧美+综合在线| 91久久免费观看| 国产婷婷色一区二区三区四区 | 欧美日韩亚洲高清一区二区| 欧美国产综合一区二区| 日本午夜一区二区| 91老司机福利 在线| 亚洲精品一区二区三区精华液| 亚洲乱码中文字幕| 国产ts人妖一区二区| 欧美一区二区日韩| 国内精品嫩模私拍在线| 精品视频1区2区| 亚洲美女少妇撒尿| 成人免费毛片高清视频| 精品奇米国产一区二区三区| 亚洲成人免费视频| 一本到一区二区三区| 日本一区二区三区国色天香| 极品少妇xxxx偷拍精品少妇| 欧美精品一卡二卡| 亚洲综合视频网| 97久久超碰精品国产| 欧美国产视频在线| 国产又粗又猛又爽又黄91精品| 欧美一区二区三区电影| 亚洲国产综合色| 在线观看欧美日本| 亚洲精品免费在线| 99re热这里只有精品视频| 国产精品人成在线观看免费 | 国产精品动漫网站| 国产成人亚洲综合a∨婷婷图片| 欧美电影精品一区二区| 奇米一区二区三区| 日韩午夜在线影院| 日韩电影一区二区三区四区| 欧美日韩精品一区二区三区蜜桃 | 91久久人澡人人添人人爽欧美| 国产精品国产三级国产有无不卡 | 国产精品久久久久三级| 成人网男人的天堂| 欧美国产精品劲爆| 丁香啪啪综合成人亚洲小说 | 在线不卡中文字幕播放| 亚洲成人精品一区二区| 欧美日韩久久久一区| 亚洲午夜激情网站| 欧美日韩国产123区| 无码av中文一区二区三区桃花岛| 欧美日韩亚洲综合一区二区三区| 日韩在线a电影| 欧美一卡二卡在线观看| 久久爱www久久做| 久久久天堂av| 国产99久久久国产精品免费看| 日本一区二区三区四区在线视频| 成人av午夜电影| 自拍偷拍亚洲激情| 色综合久久88色综合天天| 一区二区三区视频在线看| 欧美色精品天天在线观看视频| 亚洲成人动漫一区| 日韩小视频在线观看专区| 国产乱码一区二区三区| 中文字幕 久热精品 视频在线 | 国产精品久久夜| a在线播放不卡| 亚洲激情图片一区| 欧美日韩免费观看一区三区| 奇米精品一区二区三区在线观看 | 成人激情免费电影网址| 亚洲欧美另类小说视频| 在线播放中文一区| 国产一区在线观看视频| 中文字幕五月欧美| 欧美视频你懂的| 久久国产三级精品| 亚洲国产精品ⅴa在线观看| 91小视频在线免费看| 丝袜美腿亚洲一区二区图片| 久久久一区二区| 91蜜桃免费观看视频| 五月激情综合色| 久久伊人中文字幕| 在线一区二区三区四区| 免费人成精品欧美精品| 国产精品区一区二区三| 欧美最猛性xxxxx直播| 激情伊人五月天久久综合| 国产精品精品国产色婷婷| 777精品伊人久久久久大香线蕉| 国产精品亚洲а∨天堂免在线| 亚洲一区在线免费观看| 国产夜色精品一区二区av| 欧美视频一区二区三区| 国产另类ts人妖一区二区| 亚洲成人一区在线| 中文久久乱码一区二区| 制服丝袜av成人在线看| 成人性生交大片免费看视频在线 | 欧美变态tickling挠脚心| 97精品国产露脸对白| 男人的天堂亚洲一区| 中文字幕一区二区日韩精品绯色| 欧美裸体一区二区三区| 成人国产电影网| 美女国产一区二区三区| 一区二区三区欧美在线观看| 久久这里只有精品视频网| 欧美色图天堂网| 成人午夜精品在线| 免费成人av在线播放| 伊人性伊人情综合网| 国产日韩精品一区二区浪潮av | 看国产成人h片视频| 伊人一区二区三区| 国产日韩欧美麻豆| 日韩一区二区三| 在线观看日韩一区| 国产a级毛片一区| 麻豆成人免费电影| 亚洲一区二区三区中文字幕| 国产精品视频麻豆| 欧美不卡激情三级在线观看| 欧美巨大另类极品videosbest | 久久久久久久久伊人| 欧美日韩电影在线播放| 99精品热视频| 国产成人在线视频免费播放| 麻豆精品国产91久久久久久| 亚洲国产精品久久人人爱| 亚洲人成精品久久久久久| 国产欧美一区二区三区在线老狼| 欧美tk丨vk视频| 91精品婷婷国产综合久久竹菊| 欧洲中文字幕精品| 色天使久久综合网天天| 不卡高清视频专区| 成人免费不卡视频| 国产成人av电影在线播放| 国产一区二区剧情av在线| 久久99精品视频| 国内精品伊人久久久久av影院| 免费久久99精品国产| 捆绑紧缚一区二区三区视频| 免播放器亚洲一区| 日产国产高清一区二区三区 | 久久综合一区二区| 日韩精品一区二区三区中文不卡 | 麻豆91在线播放免费| 日韩和欧美的一区| 日本不卡一区二区三区| 视频精品一区二区| 日韩国产在线一| 日韩精彩视频在线观看| 视频一区在线视频| 日本欧美一区二区三区乱码| 日产精品久久久久久久性色| 琪琪一区二区三区| 久久电影网站中文字幕| 久久99精品国产麻豆婷婷| 韩国v欧美v亚洲v日本v| 国产激情视频一区二区三区欧美 | 国产精品麻豆欧美日韩ww| 国产精品久久久爽爽爽麻豆色哟哟| 欧美—级在线免费片|