青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eryar

PipeCAD - Plant Piping Design Software.
PlantAssistant - Translate AVEVA RVM/SP3D VUE to glTF, STEP, etc.
posts - 606, comments - 590, trackbacks - 0, articles - 0

Qt with OpenCascade

Posted on 2013-08-18 17:46 eryar 閱讀(20152) 評論(25)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

Qt with OpenCascade

eryar@163.com

摘要Abstract:詳細(xì)介紹了如何在Qt中使用OpenCascade。

關(guān)鍵字Key Words:Qt、OpenCascade

一、引言 Introduction

1.1 Overview of Qt

Qt是1991年奇趣科技開發(fā)的一個跨平臺的C++圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所有功能。Qt很容易擴(kuò)展,并且允許真正地組件編程。基本上,Qt同X Window上的Motif,Openwin,GTK等圖形界面庫和Windows平臺上的MFC,OWL,VCL,ATL是同類型的東西。

Qt具有如下優(yōu)點(diǎn):

l 優(yōu)良的跨平臺特性:Qt支持下列操作系統(tǒng):Microsoft Windows 95/98, NT, Linux, Solaris, SunOS, HP-UX, FreeBSD, SCO等;

l 面向?qū)ο螅篞t良好的封裝機(jī)制使得Qt的模塊化程序非常高,可重用性較好,對于用戶開發(fā)來說是非常方便的。Qt提供了一種稱為signals/slots的安全類型來替代callback,這使得各個元件之間的協(xié)同工作變得非常簡單;

l 豐富的API:Qt包含多達(dá)250個以上的C++類,還提供基于模板的collections, serialization, file, I/O device, directory management, data/time類。甚至還包括正則表達(dá)式的處理功能;

l 支持2D、3D圖形渲染,支持OpenGL;

l 大量的開發(fā)文檔;

l XML支持;

Qt按不同的版本進(jìn)行發(fā)布:

n Qt商業(yè)版:提供給商業(yè)軟件開發(fā)。它們提供傳統(tǒng)商業(yè)軟件發(fā)行版并且提供在協(xié)議有效期內(nèi)的免費(fèi)升級和技術(shù)支持服務(wù)。

n Qt開源版:僅為了開發(fā)自由和開放源碼軟件,提供了和商業(yè)版同樣的功能。GNU通用公共許可證下,它是免費(fèi)的。

2009年3月發(fā)布的Qt4.5起,NOKIA為Qt增添了開源LGPL授權(quán)選擇。

1.2 Overview of OpenCascacde

OpenCascade(簡稱OCC)平臺是由法國Matra Datavision公司開發(fā)的CAD/CAE/CAM軟件平臺,可以說是世界上最重要的幾何造型平臺之一。開源OCC對象庫是一個面向?qū)ο蟮腃++類庫,用于快速設(shè)計領(lǐng)域的專業(yè)應(yīng)用程序。OCC主要用于開發(fā)二維和三維幾何建模應(yīng)用程序,包括通用的或?qū)I(yè)的計算機(jī)輔助設(shè)計(CAD)系統(tǒng)、計算機(jī)輔助制造(CAM)系統(tǒng)或分析領(lǐng)域的應(yīng)用程序、仿真應(yīng)用程序或圖形演示工具。OCC通過有機(jī)組織的C++庫文件提供了六個模塊:

l FoundationClasses

l ModelingData

l ModelingAlgorithms

l Visualization

l ApplicationFramework

l DataExchange

OCCT庫提供如下功能:

l 2D和3D幾何造型工具箱,可對任何物體造型;

n 創(chuàng)建基本圖元,如prism,cylinder, cone, torus;

n 對實(shí)體進(jìn)行布爾操作,addition, subtraction and intersection;

n 根據(jù)倒圓、倒角、草圖拉伸出幾何實(shí)體;

n 使用偏移offsets、成殼shelling、挖空hollowing和擠壓sweeps構(gòu)造幾何實(shí)體;

n 計算幾何實(shí)體屬性,如表面積、體積、重心、曲率半徑;

n 使用插值interpolation、逼近approximation、投影projection計算出幾何體;

l 可視化功能提供對幾何實(shí)體的顯示、控制功能,例如:

n 三維旋轉(zhuǎn)3D rotation;

n 縮放Zoom;

n 著色Shading;

l 程序框架提供如下功能:

n 將非幾何數(shù)據(jù)與幾何實(shí)體關(guān)聯(lián);

n 參數(shù)化模型;

n Java Application Desktop(JAD);

OCCT庫是由Open CASCADE公司開發(fā)和市場運(yùn)作的。庫被設(shè)計成模塊化和易擴(kuò)展。

wps_clip_image-13969

Figure 1.1 OpenCascade架構(gòu)圖

二、Qt + OpenCascade

使用的開發(fā)工具為Qt Creator 2.7.0,Qt的版本為Qt 5.0.2。如下圖所示:

wps_clip_image-31905

Figure 3.1 Qt and Qt Creator version Info

OpenCascade的版本為OpenCASCADE6.5.5,如下圖所示:

wps_clip_image-23467

 

image

Figure 3.2 OpenCascade Version Info

在OpenCascade中創(chuàng)建三維場景的步驟分為:

1.Create attributes.

2.Create a 3D viewer.

3.Create a view.

4.Create an interactive context.

5.Create interactive objects.

6.Create primitives in the interactive object.

7.Display the interactive object.

詳細(xì)說明請參考《Visualization User’s Guide》。下面結(jié)合程序代碼進(jìn)行說明。

1. Create attributes. 

略;

2. Create a 3D viewer. 

 

1 // Create a 3D viewer.
2    try
3    {
4        myGraphicDevice = new Graphic3d_WNTGraphicDevice;
5    }
6    catch (Standard_Failure)
7    {
8        QMessageBox::critical(this, tr("About occQt"),
9            tr("<h2>Fatal error in graphic initialisation!</h2>"),
10            QMessageBox::Apply);
11    }
12 
13    myViewer = new V3d_Viewer(myGraphicDevice, Standard_ExtString("Visu3D"));
14    myViewer->Init();
15    myViewer->SetDefaultLights();
16    myViewer->SetLightOn();


3. Create a view.

1 // Create the view.
2 myView = theContext->CurrentViewer()->CreateView();

4. Create an interactive context.

1 // Create an interactive context.
2 myContext = new AIS_InteractiveContext(myViewer);
3 myContext->SetDisplayMode(AIS_Shaded);

5. Create interactive objects.

略;

6. Create primitives in the interactive object.

1 Handle_AIS_Shape aBox = new AIS_Shape(MF.Shape());
2 Handle_AIS_Shape aCone = new AIS_Shape(BRepPrimAPI_MakeCone(50, 30, 80));
3 Handle_AIS_Shape aSphere = new AIS_Shape(BRepPrimAPI_MakeSphere(60));

7. Display the interactive object.

1 myContext->Display(aBox);
2 myContext->Display(aCone);
3 myContext->Display(aSphere);

 

三、結(jié)論 Conclusion

編譯過程中遇到一些問題,主要是頭文件包含及庫引用問題。需要對Qt工程文件做如下設(shè)置:

l 因為程序使用了QGLWidget,所以在其工程中要引用OpenGL的庫。設(shè)置方法如下:QT += core gui opengl;

l 頭文件目錄的設(shè)置:INCLUDEPATH += D:\OpenCASCADE6.5.5\ros\inc;

l 引用庫的設(shè)置:

1   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKernel.lib
2   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKMath.lib
3   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKBRep.lib
4   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKTopAlgo.lib
5   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKPrim.lib
6   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKService.lib
7   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKV3d.lib
8   LIBS += D:\OpenCASCADE6.5.5\ros\win64\vc11\libd\TKFillet.lib

 

上述目錄根據(jù)不同的計算機(jī)需要做相應(yīng)修改。程序運(yùn)行結(jié)果如下圖所示:

wps_clip_image-18191

Figure 3.1 Sphere in occQt

image

Figure 3.2 Transformation in occQt

 

PDF Version and Sample Code: Qt with OpenCascade

Feedback

# re: Qt with OpenCascade  回復(fù)  更多評論   

2013-08-19 11:41 by tb
QT 還是比較簡單的

# re: Qt with OpenCascade  回復(fù)  更多評論   

2013-08-19 18:33 by eryar
Qt面向?qū)ο笞龅貌诲e。。。@tb

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-07 16:58 by rio
博主您好!我在winXP 32位機(jī)上用Qt creator 2.7.2 和直接安裝的 OCC 6.7.1 運(yùn)行您的這個demo. 在.pro文件中為了找到有關(guān)文件有幾行還改為類似如下
LIBS += D:\OpenCASCADE6.7.1\opencascade-6.7.1\win32\vc9\lib\TKernel.lib ... 等。

編譯時出現(xiàn)五處類似如下的問題:
代碼 TopoDS_Shape theBox = BRepPrimAPI_MakeBox(100, 60, 80) 編譯錯誤 conversion from 'BRepPrimAPI_MakeBox' to 'const TopoDS_Shape' is ambiguous

這是哪里出問題了呢?

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-07 17:02 by eryar
@rio
你是編譯的6.7.1的例子?
Sample Code for OpenCascade6.7.1: Qt with OpenCascade

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-10 11:39 by lijin
您好,請問我出現(xiàn)好多這種類型的錯誤是什么原因呢?
E:\OpenCasCade\occQt\occQt.cpp:158: error: undefined reference to `Graphic3d::InitGraphicDriver(Handle_Aspect_DisplayConnection const&)'
謝謝!
我用的是 OpenCascade6.7.1的例子,在win7下面Qt creator編譯的

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-10 19:42 by eryar
@lijin
是不是頭文件的路徑?jīng)]有設(shè)置?

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-13 10:23 by lijin
添加了的,您的那個VC11版的庫是自己重新編譯的是嗎?

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-13 14:56 by eryar
@lijin
是的,確保你用的是opencascade6.7版本。
使用Graphic3d::InitGraphicDriver這種方式是6.6以后用的

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-17 14:02 by rio
注意到下載可以直接安裝的 opencascade 6.7.1 windows 版是用 visual studio 編譯的。 這是否會導(dǎo)致使用 Qt creator 存在兼容的問題?

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-17 18:05 by eryar
@rio
如果你的Qt Creator也是用的VS的編譯器,應(yīng)該不會沖突。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-20 11:04 by rio
試了。用 visual studio 2010 的 vc++ 能編譯這個例子。Qt creator 還有問題。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-20 14:27 by eryar
@rio
這個例子適用在VS中用Qt的plugin來編譯。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-21 07:12 by soongv
Thank you very much for the code. It helps me a lot for setting up simple QT with OCCT (Window7(32-bit), QT 4.8.4, and OCCT6.7.1)

I also had a problem with graphic driver "Fatal error in graphic initialisation!" but finally solved it.

In graphic initialization section,

Handle_Aspect_DisplayConnection displayConnection; OR
Handle_Graphic3d_GraphicDriver graphicDriver;

I changed the handle to the one used in sample project opencascade-6.7.1/samples/qt/Tutorial


#include <OpenGl_GraphicDriver.hxx>

static Handle(OpenGl_GraphicDriver) graphicDriver;
if (graphicDriver.IsNull())
{
Handle(Aspect_DisplayConnection) displayConnection;
graphicDriver = new OpenGl_GraphicDriver (displayConnection);
}


Hope this help anyone who may have this problem.

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-10-21 09:49 by eryar
@soongv
Hi soongv,

You are welcome.

Thanks for your advice.

I will update the sample occQt according to your code.

Best Regards,
Xing

# re: Qt with OpenCascade  回復(fù)  更多評論   

2014-12-30 22:23 by eryar
更新occQt例子到OpenCASCADE6.8.0&Qt5.4:
http://m.shnenglu.com/eryar/archive/2014/12/29/209335.html
代碼下載:
https://github.com/eryar/occQt

# re: Qt with OpenCascade  回復(fù)  更多評論   

2015-04-01 20:39 by qwerty
你好,我用VS2010,運(yùn)行程序后彈出“Fatal Error in graphic initialisation”后就停止了,想問一下這是哪里出問題了

# re: Qt with OpenCascade  回復(fù)  更多評論   

2015-04-01 20:44 by eryar
@qwerty

可視化模塊加載失敗。
可能原因是與可視化相關(guān)的第三方庫的dll沒有找到等

# re: Qt with OpenCascade  回復(fù)  更多評論   

2016-01-04 17:59 by bns
OpenCascade我也在學(xué)習(xí) mark

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-24 17:44 by birds
您好,我是第一次通過vs2012+qt5.2編譯該案例,但是最后生成.exe文件前總是報錯,無法解析外部符號,VS2012中的部分報錯如下:

moc_vier.obj : error LNK2001: 無法解析的外部符號 "__declspec(dllimport) public: static struct QMetaObject const QGLWidget::staticMetaObject" (__imp_?staticMetaObject@QGLWidget@@2UQMetaObject@@B)
1>vier.obj : error LNK2019: 無法解析的外部符號 "__declspec(dllimport) public: __cdecl QGLWidget::QGLWidget(class QWidget *,class QGLWidget const *,class QFlags<enum Qt::WindowType>)" (__imp_??0QGLWidget@@QEAA@PEAVQWidget@@PEBV0@V?$QFlags@W4WindowType@Qt@@@@@Z),該符號在函數(shù) "public: __cdecl vier::vier(class opencascade::handle<class AIS_InteractiveContext>,class QWidget *)" (??0vier@@QEAA@V?$handle@VAIS_InteractiveContext@@@opencascade@@PEAVQWidget@@@Z) 中被引用
1>vier.obj : error LNK2019: 無法解析的外部符號 "__declspec(dllimport) public: virtual __cdecl QGLWidget::~QGLWidget(void)" (__imp_??1QGLWidget@@UEAA@XZ),該符號在函數(shù) "int `public: __cdecl vier::vier(class opencascade::handle<class AIS_InteractiveContext>,class QWidget *)'::`1'::dtor$1" (?dtor$1@?0???0vier@@QEAA@V?$handle@VAIS_InteractiveContext@@@opencascade@@PEAVQWidget@@@Z@4HA) 中被引用
1>vier.obj : error LNK2001: 無法解析的外部符號 "protected: virtual bool __cdecl QGLWidget::event(class QEvent *)" (?event@QGLWidget@@MEAA_NPEAVQEvent@@@Z)
1>vier.obj : error LNK2001: 無法解析的外部符號 "protected: virtual void __cdecl QGLWidget::glDraw(void)" (?glDraw@QGLWidget@@MEAAXXZ)
1>vier.obj : error LNK2001: 無法解析的外部符號 "protected: virtual void __cdecl QGLWidget::glInit(void)" (?glInit@QGLWidget@@MEAAXXZ)
1>vier.obj : error LNK2001: 無法解析的外部符號 "protected: virtual void __cdecl QGLWidget::initializeGL(void)" (?initializeGL@QGLWidget@@MEAAXXZ)
1>vier.obj : error LNK2001: 無法解析的外部符號 "protected: virtual void __cdecl QGLWidget::initializeOverlayGL(void)" (?initializeOverlayGL@QGLWidget@@MEAAXXZ)

然后我又在qt5.2中編譯了一次,它又是在生成執(zhí)行文件前出錯,錯誤如下:

occt.obj:-1: error: LNK2019: 無法解析的外部符號 "public: __cdecl BRepPrimAPI_MakeBox::BRepPrimAPI_MakeBox(double,double,double)" (??0BRepPrimAPI_MakeBox@@QEAA@NNN@Z),該符號在函數(shù) "private: void __cdecl occt::makeBox(void)" (?makeBox@occt@@AEAAXXZ) 中被引用
occt.obj:-1: error: LNK2019: 無法解析的外部符號 "public: __cdecl BRepPrimAPI_MakeBox::BRepPrimAPI_MakeBox(class gp_Pnt const &,class gp_Pnt const &)" (??0BRepPrimAPI_MakeBox@@QEAA@AEBVgp_Pnt@@0@Z),該符號在函數(shù) "private: void __cdecl occt::transform(void)" (?transform@occt@@AEAAXXZ) 中被引用
。。。。

求博主老師幫幫我,謝謝。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-27 20:18 by eryar
@birds
都是鏈接錯誤,配置好lib庫就可以了。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-29 10:06 by birds
謝謝博主,已解決,但是后來我在調(diào)試時發(fā)現(xiàn)內(nèi)存錯誤,

HWND winID = (HWND) (winId());
Handle_WNT_Window hWnd = new WNT_Window(winID);
myView->SetWindow(hWnd); //當(dāng)程序運(yùn)行到這一行時,突然報錯:
0x00007FF9B3DEF218 處(位于 occt.exe 中)有未經(jīng)處理的異常:Microsoft C++ 異常: Standard_Failure,位于內(nèi)存位置 0x000000CF5EBDDB10 處。

這時程序就跳到OpenGl_ShaderManager.hxx文件的
Standard_Boolean BindFboBlitProgram()
{
if (myBlitProgram.IsNull())
{
prepareStdProgramFboBlit();
}
return !myBlitProgram.IsNull()
&& myContext->BindProgram (myBlitProgram); //執(zhí)行到這兒出錯
}

求博主看看這又是什么方面的問題。萬分感謝。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-29 10:13 by eryar
@birds
你用的occt哪個版本?

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-29 13:28 by birds
我是用vs2013+Qt5.6.2 編譯opencascade7.0的

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-30 09:46 by eryar
@birds
可能是shader文件路徑設(shè)置問題。
需要在環(huán)境變量中設(shè)置shader文件路徑。

# re: Qt with OpenCascade  回復(fù)  更多評論   

2018-05-30 10:30 by birds
謝謝 已解決,就是添加了環(huán)境變量。萬分感謝博主。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产综合色一区二区三区| 欧美99在线视频观看| 欧美电影免费观看| 亚洲人成网站精品片在线观看| 在线观看日韩精品| 在线免费高清一区二区三区| 亚洲黄色片网站| 一区二区三区黄色| 久久国产加勒比精品无码| 久久一区中文字幕| 91久久精品日日躁夜夜躁国产| 亚洲精品国精品久久99热一| 亚洲综合第一| 欧美18av| 国产欧美高清| 亚洲三级电影全部在线观看高清| 亚洲综合日韩| 欧美a级片网| 一本色道久久综合亚洲精品婷婷 | 国产精品你懂的在线欣赏| 国产精品一区久久久| 亚洲国产裸拍裸体视频在线观看乱了| 9久re热视频在线精品| 久久精品国产久精国产思思| 亚洲第一中文字幕| 亚洲欧美日本另类| 欧美激情一区在线观看| 国产综合久久| 亚洲欧美偷拍卡通变态| 欧美激情一区二区| 欧美一区二区三区日韩视频| 欧美福利在线| 在线不卡中文字幕| 欧美一区网站| 亚洲视频在线播放| 欧美国产大片| 1000部国产精品成人观看 | 欧美高清视频| 亚洲一区中文字幕在线观看| 欧美搞黄网站| 亚洲黄一区二区三区| 久久久久久91香蕉国产| 亚洲天堂成人| 国产精品对白刺激久久久| 亚洲精品永久免费精品| 久久精品成人欧美大片古装| 一区二区三区黄色| 欧美视频精品在线| 一区二区免费看| 亚洲理论在线观看| 欧美精品综合| 一区二区三区日韩欧美| 亚洲精品视频一区| 欧美大胆a视频| 亚洲福利视频在线| 久久影音先锋| 欧美亚洲免费电影| 欧美一区二区三区电影在线观看| 欧美在线亚洲在线| 国产精品无码永久免费888| 在线视频国内自拍亚洲视频| 久久精品亚洲乱码伦伦中文 | 久久精品视频在线观看| 国产女主播一区二区三区| 亚洲自拍三区| 亚洲制服丝袜在线| 国产一区二区主播在线| 葵司免费一区二区三区四区五区| 欧美在线一二三四区| 伊伊综合在线| 亚洲国产精品999| 欧美国产成人在线| 91久久香蕉国产日韩欧美9色| 久久免费精品视频| 午夜一区在线| 国产亚洲精品成人av久久ww| 午夜老司机精品| 一区二区三区精品视频在线观看| 久久精品1区| 国精品一区二区| 久久高清福利视频| 午夜精品影院| 国产一区二区三区黄| 久久久免费精品| 久久久久国产精品厨房| 精品69视频一区二区三区| 久久婷婷国产综合尤物精品| 久久九九热re6这里有精品| 国产精品稀缺呦系列在线| 亚洲欧美日韩人成在线播放| 亚洲午夜精品一区二区| 亚洲第一福利在线观看| 99国产麻豆精品| 黄色综合网站| 在线亚洲+欧美+日本专区| 一区二区三区我不卡| 日韩视频一区| 尤物在线精品| 亚洲网站在线| 亚洲三级电影全部在线观看高清| 亚洲视频狠狠| 亚洲精品久久久久久久久久久久久| 亚洲私人影院| 亚洲精品一二| 久久精品成人欧美大片古装| 在线视频亚洲一区| 久久午夜精品| 久久国产精品电影| 欧美视频二区| 亚洲国产精品女人久久久| 国产一区二区三区网站| 亚洲一级黄色| 一片黄亚洲嫩模| 欧美v日韩v国产v| 久热精品视频在线免费观看| 亚洲福利久久| 久久av资源网| 欧美淫片网站| 欧美日韩亚洲一区| 男人的天堂亚洲在线| 国产精品久久久久久五月尺| 欧美激情1区2区| 精品99一区二区| 亚洲欧美日韩一区在线观看| 一区二区三区国产盗摄| 麻豆精品传媒视频| 麻豆av福利av久久av| 国产亚洲成人一区| 午夜精品久久久久影视| 亚洲视频欧洲视频| 欧美日韩精品高清| 日韩视频免费观看| 在线一区欧美| 欧美日韩欧美一区二区| 亚洲精品1234| 日韩亚洲欧美高清| 欧美日韩国产精品一区| 亚洲精品久久久久久久久久久久| 亚洲经典在线看| 老司机免费视频久久| 免费久久99精品国产自| 在线看不卡av| 欧美岛国激情| 亚洲精品网址在线观看| 一区二区三区欧美视频| 国产精品护士白丝一区av| 亚洲一区二区三区激情| 欧美亚洲午夜视频在线观看| 国产欧美视频一区二区三区| 午夜精品久久久久久久| 久久久久久久一区二区三区| 精品91在线| 欧美国产日韩一区二区在线观看 | 久久九九免费视频| 亚洲第一精品久久忘忧草社区| 久久精品视频免费| 亚洲片在线观看| 新片速递亚洲合集欧美合集| 国内精品一区二区| 欧美高清视频一区二区三区在线观看| 亚洲福利专区| 亚洲一区二区三区乱码aⅴ| 国产日韩欧美另类| 你懂的视频一区二区| 一本久久精品一区二区| 久久精品国产一区二区电影| 亚洲国产电影| 欧美日韩精品一区二区天天拍小说| 亚洲一区二区视频在线| 欧美成年人网| 亚洲欧美国产日韩中文字幕| 一区二区三区在线观看欧美| 欧美日韩网址| 久久精品综合网| 99re6这里只有精品| 久久久久久久久伊人| 在线一区视频| 亚洲福利小视频| 国产精品欧美激情| 欧美激情一级片一区二区| 亚洲婷婷综合久久一本伊一区| 亚洲无线一线二线三线区别av| 欧美一区二区成人6969| 伊人久久大香线| 欧美日韩一区二区三区四区在线观看 | 欧美成人dvd在线视频| 亚洲免费视频一区二区| 欧美福利在线| 久久久久久一区二区| 亚洲在线观看免费视频| 亚洲经典自拍| 在线观看91精品国产入口| 国产精品乱人伦中文| 欧美日本高清| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲欧美日韩综合国产aⅴ| 亚洲精品国产精品国产自| 母乳一区在线观看| 久久精品99久久香蕉国产色戒 | 在线观看欧美精品|