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

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

?? cmyview.cpp

?? 本例程主要介紹了利用OpenGL來實現了如何建立一個落葉紛飛的場景
?? CPP
字號:
// CmyView.cpp : implementation of the CCmyView class
//

#include "stdafx.h"
#include "Cmy.h"
#include "MainFrm.h"
#include "CmyDoc.h"
#include "CmyView.h"
#define ABS(x) ((x)<0?-(x):(x>0)?(x):0)
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CCmyView

IMPLEMENT_DYNCREATE(CCmyView, CView)

BEGIN_MESSAGE_MAP(CCmyView, CView)
	//{{AFX_MSG_MAP(CCmyView)
	ON_WM_CREATE()
	ON_WM_DESTROY()
	ON_WM_SIZE()
	ON_WM_MOUSEMOVE()
	ON_WM_LBUTTONDOWN()
	ON_WM_LBUTTONUP()
	ON_COMMAND(ID_BUTTON32771, OnButton32771)
	ON_WM_TIMER()
	ON_COMMAND(ID_BUTTONleaf, OnBUTTONleaf)
	//}}AFX_MSG_MAP
	// Standard printing commands
	ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
	ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
	ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCmyView construction/destruction

CCmyView::CCmyView()
{
	// TODO: add construction code here
	my_pDC=NULL;
	mytbar=FALSE;
	mysbar=FALSE;



	leafnum=0;
	leafkey=TRUE;
	jb=0.0f;
}

CCmyView::~CCmyView()
{
}

BOOL CCmyView::PreCreateWindow(CREATESTRUCT& cs)
{
	// TODO: Modify the Window class or styles here by modifying
	//  the CREATESTRUCT cs
    cs.style=WS_CHILD|WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPCHILDREN;
	return CView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// CCmyView drawing

void CCmyView::OnDraw(CDC* pDC)
{
	CCmyDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	// TODO: add draw code for native data here
	static BOOL bBusy=FALSE;
	if(bBusy)  return;
	bBusy=TRUE;
	glClearColor(0.5f,0.5f,1.0f,1.0f);
    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    //glMatrixMode(GL_MODELVIEW);
	//	glLoadIdentity();
	//mydraw();
	//glFinish();
	
	glPushMatrix();
	mydraw();
    glPopMatrix();
	
	SwapBuffers(wglGetCurrentDC());
	
	bBusy=FALSE;
}

/////////////////////////////////////////////////////////////////////////////
// CCmyView printing

BOOL CCmyView::OnPreparePrinting(CPrintInfo* pInfo)
{
	// default preparation
	return DoPreparePrinting(pInfo);
}

void CCmyView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
	// TODO: add extra initialization before printing
}

void CCmyView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
	// TODO: add cleanup after printing
}

/////////////////////////////////////////////////////////////////////////////
// CCmyView diagnostics

#ifdef _DEBUG
void CCmyView::AssertValid() const
{
	CView::AssertValid();
}

void CCmyView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
}

CCmyDoc* CCmyView::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CCmyDoc)));
	return (CCmyDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CCmyView message handlers

int CCmyView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	first();
	return 0;
}

void CCmyView::OnDestroy() 
{
	CView::OnDestroy();
	
	// TODO: Add your message handler code here
	KillTimer(1);


	HGLRC hrc;
	hrc=::wglGetCurrentContext();
	::wglMakeCurrent(NULL,NULL);
	if (hrc)
		::wglDeleteContext(hrc);
	if(my_pDC)
		delete my_pDC;
}

void CCmyView::first()
{
	PIXELFORMATDESCRIPTOR pfd;
	int n;
	HGLRC hrc;
	my_pDC=new CClientDC(this);
	ASSERT(my_pDC!=NULL);
	if (!mypixelformat())return;
	n=::GetPixelFormat(my_pDC->GetSafeHdc());
	::DescribePixelFormat(my_pDC->GetSafeHdc(),n,sizeof(pfd),&pfd);
	
	hrc=wglCreateContext(my_pDC->GetSafeHdc());
	wglMakeCurrent(my_pDC->GetSafeHdc(),hrc);
	
	GetClientRect(&my_oldRect);
	glClearDepth(1.0f);
	glEnable(GL_DEPTH_TEST);
	glMatrixMode(GL_MODELVIEW);
	glLoadIdentity();
}

BOOL CCmyView::mypixelformat()
{
	static PIXELFORMATDESCRIPTOR pfd=
	{
		sizeof(PIXELFORMATDESCRIPTOR),
			1,
			PFD_DRAW_TO_WINDOW|
			PFD_SUPPORT_OPENGL|
			PFD_DOUBLEBUFFER,
			PFD_TYPE_RGBA,
			24,
			0,0,0,0,0,0,
			0,
			0,
			0,
			0,0,0,0,
			32,
			0,
			0,
			PFD_MAIN_PLANE,
			0,
			0,0,0,
	};
	int pixelformat;
	
	if ((pixelformat=ChoosePixelFormat(my_pDC->GetSafeHdc(),&pfd))==0)
	{
		MessageBox("choosepixeformat failed");
		return FALSE;
	}
	if (SetPixelFormat(my_pDC->GetSafeHdc(),pixelformat,&pfd)==FALSE)
	{
		MessageBox("setpixwlformat failed");
		return FALSE;
	}
	return true;

}

void CCmyView::OnSize(UINT nType, int cx, int cy) 
{
	CView::OnSize(nType, cx, cy);
	
	// TODO: Add your message handler code here
	if (cy>0)
	{
		my_oldRect.right=cx;
		my_oldRect.bottom=cy;
		glMatrixMode(GL_PROJECTION);
		glLoadIdentity();
		
		glFrustum(-1.0,1.0,-1.0*cy/cx,1.0*cy/cx,5.0,40.0);
		glViewport(0,0,cx,cy);
	}
	RedrawWindow();
}

void CCmyView::mydraw()
{
	//glClearColor(0.2f,0.2f,0.2f,0.9f);
   // glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);

	glTranslatef(0.0f,0.0f,-5.0f);
	myfog();
    SetTimer(1,120,NULL);
	glEnable(GL_LINE_SMOOTH);
	glEnable(GL_POLYGON_SMOOTH);

	glEnable(GL_BLEND);
	glBlendFunc(GL_ONE,GL_SRC_ALPHA_SATURATE);

	glRotated(11,1.0,0.0,0.0);
	glPushMatrix();

	glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);
	glColor3f(0.8f,0.2f,0.0f);
	wall();
	glTranslatef(2.0f,0.0f,0.0f);
	wall();
	glColor3f(0.5f,0.5f,0.0f);
	glPolygonMode(GL_FRONT_AND_BACK,GL_LINE);
	wall();
	glTranslatef(-2.0f,0.0f,0.0f);
	wall();
	glColor3f(0.1f,0.0f,0.1f);
	land();
	glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);
	glColor3f(0.1f,0.2f,0.1f);
	land();
	glPopMatrix();

	for (int k=0;k<leafnum;k++)
	{
		glPushMatrix();
		glTranslatef(leafbh[k][0],leafbh[k][2],-34.0f*leafbh[k][1]+1.5f);
		glScalef(1.0f-leafbh[k][1],1.0f-leafbh[k][1],1.0f-leafbh[k][1]);
		if (leafbh[k][2]==-0.6f)
		{
			glRotated(-90,1.0,0.0,0.0);
			glRotated(leafbh[k][5]*180,0.0,0.0,1.0);
		}
		else{
			glRotated(leafbh[k][5]*180,0.0,1.0,0.0);
				glRotated(leafbh[k][3]*180,1.0,0.0,0.0);
					glRotated(leafbh[k][4]*180,0.0,0.0,1.0);
		}

		glScalef(0.5f,0.5f,0.5f);
		glColor3f(leafbh[k][3],leafbh[k][4]/1.1f,0.0f);
		myleaf2();
		glColor3f(leafbh[k][3]/1.1f,leafbh[k][4]/1.2f,0.0f);
		myleaf2();
		glPopMatrix();
	}

	glDisable(GL_BLEND);
	glDisable(GL_POLYGON_SMOOTH);
	glDisable(GL_LINE_SMOOTH);
	glDisable(GL_FOG);
}

void CCmyView::OnMouseMove(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default
	CMainFrame* pframe=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pframe->xyshow(point.x,point.y);
	if (pframe->fullscreenkey)
	{
		if (point.y<5)
		{
			if (!mytbar)
			{
				mytbar=TRUE;
				pframe->PostMessage(WM_COMMAND,ID_VIEW_TOOLBAR);
			}
			else
			{
				if (mytbar)
				{
					mytbar=FALSE;
					pframe->PostMessage(WM_COMMAND,ID_VIEW_TOOLBAR);
				}
			}
		}
	}
	CView::OnMouseMove(nFlags, point);
}

void CCmyView::OnLButtonDown(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default
	CMainFrame* pframe=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pframe->xyshow(point.x,point.y);
	if (pframe->fullscreenkey)
	{
		if (!mysbar)
		{
			pframe->PostMessage(WM_COMMAND,ID_VIEW_STATUS_BAR);
			mysbar=TRUE;
		}
	}
	CView::OnLButtonDown(nFlags, point);
}

void CCmyView::OnLButtonUp(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default
	CMainFrame* pframe=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pframe->xyshow(point.x,point.y);
	if (pframe->fullscreenkey)
	{
		if (mysbar)
		{
			pframe->PostMessage(WM_COMMAND,ID_VIEW_STATUS_BAR);
			mysbar=FALSE;
		}
	}
	CView::OnLButtonUp(nFlags, point);
}

void CCmyView::OnButton32771() 
{
	// TODO: Add your command handler code here
	CMainFrame* pframe=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	if (pframe->fullscreenkey)
		
	{ if (!mysbar)
	{
		pframe->PostMessage(WM_COMMAND,ID_VIEW_STATUS_BAR);
		mysbar=TRUE;
	}
	   }else
	   {
		   if (mysbar)
		   {
			   pframe->PostMessage(WM_COMMAND,ID_VIEW_STATUS_BAR);mysbar=FALSE;
		   }
	   }
	   pframe->fullscreenkey=!pframe->fullscreenkey;
}

void CCmyView::land()
{
	BOOL kl=0;
	kl=0;
	for(int i=0;i<160;i++){
		glLineWidth(6.0f-0.16f*i);
		glBegin(GL_QUAD_STRIP);
		for(int j=0;j<22;j++){
			glVertex3f(-1.0f+0.2f*j-kl*0.1f,-0.61f,1.2f-0.25f*i);
			kl=!kl;
			glVertex3f(-1.0f+0.2f*j-kl*0.1f,-0.61f,0.95f-0.25f*i);
		};
		kl=!kl;
		glEnd();
	};
}

void CCmyView::wall()
{
	glShadeModel(GL_SMOOTH);
    BOOL kl=0;
	for(int i=0;i<36;i++){
		glLineWidth(4.0f-0.1f*i);
		glBegin(GL_QUAD_STRIP);
		for(int j=0;j<80;j++){
			glVertex3f(-1.0f,-0.6f+0.05f*i,1.2f-0.5f*j+kl*0.25f);
			glVertex3f(-1.0f,-0.55f+0.05f*i,1.2f-0.5f*j+kl*0.25f);
		};
		glEnd();
		kl=!kl;
	};
}

void CCmyView::myleaf2()
{
	glLineWidth(0.1f);
	glBegin(GL_LINES);
	glVertex3f(0.0f,0.0f,0.0f);
	glVertex3f(0.15f,-0.04f,0.0f);
	glVertex3f(0.0f,0.02f,0.0f);
	glVertex3f(0.2f,0.05f,0.0f);
	glVertex3f(0.0f,0.05f,0.0f);
	glVertex3f(0.18f,0.16f,0.0f);
	glVertex3f(0.0f,0.1f,0.0f);
	glVertex3f(0.09f,0.17f,0.0f);
	glVertex3f(0.0f,0.0f,0.0f);
	glColor3f(0.7f,0.5f,0.0f);
	glVertex3f(0.0f,0.3f,0.0f);
	
	glColor3f(0.5f,0.5f,0.0f);
	glVertex3f(0.0f,0.0f,0.0f);
	glColor3f(0.3f,0.5f,0.0f);
	glVertex3f(-0.15f,-0.04f,0.0f);
	glColor3f(0.5f,0.5f,0.0f);
	glVertex3f(0.0f,0.01f,0.0f);
	glColor3f(0.3f,0.5f,0.0f);
	glVertex3f(-0.2f,0.05f,0.0f);
	glColor3f(0.5f,0.5f,0.0f);
	glVertex3f(0.0f,0.04f,0.0f);
	glColor3f(0.3f,0.5f,0.0f);
	glVertex3f(-0.18f,0.16f,0.0f);
	glColor3f(0.5f,0.5f,0.0f);
	glVertex3f(0.0f,0.09f,0.0f);
	glColor3f(0.3f,0.5f,0.0f);
	glVertex3f(-0.09f,0.17f,0.0f);
	glColor3f(0.5f,0.5f,0.0f);
	glVertex3f(0.0f,0.0f,0.0f);
	glColor3f(0.3f,0.5f,0.0f);
	glVertex3f(-0.0f,0.3f,0.0f);
	
	 glEnd();

}

void CCmyView::myfog()
{
	glEnable(GL_FOG);
	//		GLfloat fogC[4] = {0.6f, 0.5f, 0.0f, 1.0f};
	GLfloat fogC[4] = {0.5f, 0.5f, 1.0f, 1.0f};
	glFogi (GL_FOG_MODE, GL_EXP2);
	glFogfv (GL_FOG_COLOR, fogC);
	glFogf (GL_FOG_DENSITY, 0.025f*ABS(jb));
	glFogf (GL_FOG_START, 7.0);
	glFogf (GL_FOG_END, 9.0);
		glHint (GL_FOG_HINT, GL_DONT_CARE);
}

void CCmyView::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	if (nIDEvent=1)
	{
		if (ABS(jb)>=6.1f)
		{
			jb=-6.0f;
		}
		else{
			jb=jb+0.05f;
		}

		leafbh[leafnum][0]=1.0f*(rand()-rand())/RAND_MAX;
		leafbh[leafnum][1]=1.0f*rand()/RAND_MAX;
		leafbh[leafnum][2]=1.0f*(rand()-rand())/RAND_MAX;
		leafbh[leafnum][3]=1.0f*rand()/RAND_MAX;
	    leafbh[leafnum][4]=1.0f*rand()/RAND_MAX;
        leafbh[leafnum][5]=1.0f*(rand()-rand())/RAND_MAX;

		leafnum++;
		if (leafnum>=599)
		{
			leafnum=200;
		}
		for (int k=0;k<leafnum;k++)
		{
			if (leafbh[k][2]<=-0.6f)
			{
				leafbh[k][2]=-0.6f;
			}
			else{
				leafbh[k][2]=leafbh[k][2]-0.025f;
				leafbh[k][5]=1.0f*(rand()-rand())/RAND_MAX;
			}
		}
		Invalidate(FALSE);
	}
	CView::OnTimer(nIDEvent);
}

void CCmyView::OnBUTTONleaf() 
{
	// TODO: Add your command handler code here
	/*if (leafkey)
	{
		SetTimer(1,120,NULL);

	}
	else{
		KillTimer(1);
	}

	leafkey=!leafkey;

	Invalidate(FALSE);*/
}

void CCmyView::myleaf()
{
	glShadeModel(GL_SMOOTH);
	glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);

	glBegin(GL_TRIANGLE_FAN);
	glVertex3f(0.0f,0.0f,0.0f);
	glVertex3f(0.16f,-0.05f,0.0f);
	glVertex3f(0.2f,-0.05f,0.0f);
	glVertex3f(0.1f,0.0f,0.0f);
	glVertex3f(0.2f,0.05f,0.0f);
	glVertex3f(0.1f,0.06f,0.0f);
	glVertex3f(0.16f,0.08f,0.0f);
	glVertex3f(0.18f,0.16f,0.0f);
	glVertex3f(0.1f,0.16f,0.0f);
	glVertex3f(0.08f,0.09f,0.0f);
	glVertex3f(0.09f,0.17f,0.0f);
	glColor3f(0.6f,0.5f,0.0f);
	glVertex3f(0.0f,0.3f,0.0f);
	
	glColor3f(0.6f,0.5f,0.0f);
	glVertex3f(0.0f,0.3f,0.0f);
	glColor3f(0.6f,0.5f,0.0f);
	glVertex3f(-0.09f,0.17f,0.0f);
	glVertex3f(-0.08f,0.09f,0.0f);
	glVertex3f(-0.1f,0.16f,0.0f);
	glVertex3f(-0.18f,0.16f,0.0f);
	glVertex3f(-0.16f,0.08f,0.0f);
	glVertex3f(-0.1f,0.06f,0.0f);
	glVertex3f(-0.2f,0.05f,0.0f);
	glVertex3f(-0.1f,0.0f,0.0f);
	glVertex3f(-0.2f,-0.05f,0.0f);
	glVertex3f(-0.16f,-0.05f,0.0f);
	    glEnd();


}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日本欧洲亚洲| 久久精品国产一区二区三| 日日骚欧美日韩| 成人小视频免费在线观看| 欧美私人免费视频| 亚洲国产精品二十页| 视频一区二区国产| 91视频国产资源| 久久久久久久久99精品| 亚洲一二三专区| 成人激情动漫在线观看| 26uuu国产在线精品一区二区| 一区二区三区欧美日| 国产宾馆实践打屁股91| 欧美mv日韩mv亚洲| 日韩经典中文字幕一区| 欧美午夜一区二区三区免费大片| 国产精品青草综合久久久久99| 美日韩一级片在线观看| 欧美日韩国产欧美日美国产精品| 亚洲视频在线观看一区| 国产99精品国产| 久久免费看少妇高潮| 久久国产精品色| 日韩女同互慰一区二区| 日韩av电影免费观看高清完整版 | 99re热这里只有精品视频| www激情久久| 精品亚洲国产成人av制服丝袜| 欧美精品18+| 三级一区在线视频先锋| 欧美日韩在线观看一区二区| 亚洲一区二区在线免费看| 一本高清dvd不卡在线观看| 亚洲三级免费电影| 91丨porny丨蝌蚪视频| 一区二区三区中文字幕| 欧美又粗又大又爽| 午夜视频一区在线观看| 欧美日韩一区高清| 蜜臀av性久久久久蜜臀aⅴ四虎 | www.在线成人| 一色桃子久久精品亚洲| 91视频.com| 亚洲图片欧美色图| 91精品国产综合久久香蕉的特点| 日本成人在线一区| 久久精品夜色噜噜亚洲a∨| 国产精品99久久久久久有的能看| 国产日韩精品一区二区三区 | 日本一区二区三区dvd视频在线| 精品亚洲国产成人av制服丝袜| 久久精品夜色噜噜亚洲a∨| 成人在线视频一区| 亚洲一区二区三区中文字幕在线| 欧美日韩中文字幕一区二区| 日本成人中文字幕| 欧美国产精品中文字幕| 欧美体内she精高潮| 美国十次综合导航| 亚洲视频一区二区在线观看| 欧美男女性生活在线直播观看| 久久精品国产秦先生| 中文字幕制服丝袜一区二区三区 | 欧美精品乱人伦久久久久久| 久久爱www久久做| 亚洲欧洲制服丝袜| 91精品国产全国免费观看| 国产成人8x视频一区二区| 亚洲午夜精品在线| 国产欧美一区二区在线| 欧美日韩高清一区二区三区| 国产精品一区专区| 亚洲成av人片观看| 国产精品每日更新在线播放网址| 欧美视频完全免费看| 成人午夜视频网站| 日本伊人午夜精品| 一色屋精品亚洲香蕉网站| 日韩欧美国产午夜精品| 欧美在线观看一区二区| 国产风韵犹存在线视精品| 亚洲va韩国va欧美va精品| 国产欧美日韩三级| 欧美成人性福生活免费看| 一本大道av伊人久久综合| 国产精品99久久久久久似苏梦涵| 亚洲第一综合色| 1000部国产精品成人观看| 日韩欧美一级二级| 欧美日韩精品系列| 色综合激情久久| hitomi一区二区三区精品| 国产乱对白刺激视频不卡| 男人的天堂亚洲一区| 亚洲综合色成人| 国产精品女主播av| 国产亚洲午夜高清国产拍精品 | 99久久夜色精品国产网站| 激情伊人五月天久久综合| 日韩vs国产vs欧美| 亚洲午夜免费电影| 一区二区三区在线高清| 国产精品乱码人人做人人爱| 久久免费美女视频| 精品99一区二区三区| 日韩欧美资源站| 欧美一区二区三区在线| 色中色一区二区| 91官网在线观看| 色999日韩国产欧美一区二区| 99在线精品免费| 99久久99久久免费精品蜜臀| 成人18视频日本| 97精品久久久午夜一区二区三区 | 久久毛片高清国产| 久久综合久久99| 久久蜜桃av一区二区天堂| 久久九九国产精品| 欧美激情在线一区二区三区| 国产日韩欧美精品电影三级在线| 久久精品人人爽人人爽| 中文字幕免费一区| 亚洲视频电影在线| 亚洲成人一二三| 日韩中文字幕亚洲一区二区va在线 | 91官网在线免费观看| 欧美亚洲图片小说| 欧美日韩视频在线观看一区二区三区| 欧美日韩在线一区二区| 3d动漫精品啪啪1区2区免费| 日韩视频一区二区三区| 久久免费视频色| 亚洲男人电影天堂| 日韩综合小视频| 国产精品66部| 色婷婷国产精品| 在线不卡的av| 久久奇米777| 亚洲男帅同性gay1069| 午夜精品久久一牛影视| 韩国精品一区二区| 99久久精品国产网站| 欧美偷拍一区二区| 久久久久亚洲综合| 亚洲理论在线观看| 蜜桃视频在线观看一区二区| 风间由美一区二区av101| 色婷婷综合久久久| 欧美成人女星排行榜| 中文字幕一区在线| 日本 国产 欧美色综合| 国产999精品久久| 欧美另类变人与禽xxxxx| 国产亚洲成年网址在线观看| 亚洲在线视频免费观看| 激情五月婷婷综合| 色婷婷综合久色| 久久噜噜亚洲综合| 精品亚洲成a人| 欧美亚洲国产怡红院影院| 精品理论电影在线观看 | 久久99国内精品| 久久久影视传媒| 欧美色图一区二区三区| 欧美精品第一页| 欧美成va人片在线观看| 亚洲精品免费在线| 国产成人免费视频| 日韩小视频在线观看专区| 亚洲美女视频一区| 国产成人亚洲综合a∨猫咪| 欧美日韩mp4| 亚洲精品国产一区二区精华液 | 国产精品资源站在线| 欧美网站一区二区| 综合久久一区二区三区| 国产精品99久久久久久有的能看 | 久久久精品影视| 热久久久久久久| 欧美系列在线观看| 亚洲色图视频网站| 丁香婷婷综合五月| 久久久久久久性| 久久99精品久久久久婷婷| 欧美精品乱码久久久久久| 一级做a爱片久久| 99精品在线免费| 中文字幕在线播放不卡一区| 国内外精品视频| 精品第一国产综合精品aⅴ| 日产欧产美韩系列久久99| 欧美日韩和欧美的一区二区| 亚洲男人的天堂在线观看| av一本久道久久综合久久鬼色| 国产日韩欧美精品在线| 国产成人综合视频| 国产欧美日本一区二区三区| 99久久久久免费精品国产| 亚洲欧洲99久久|