日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

手动选择显示_QGIS 二次开发笔记(2)——显示图层

發布時間:2023/12/19 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 手动选择显示_QGIS 二次开发笔记(2)——显示图层 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文使用 Zhihu On VSCode 創作并發布

基于 QGIS 二次開發,最首要的功能就是顯示圖層。這是個看似非常簡單的功能,但是在 QGIS 中寫了非常復雜的代碼,以支持各種數據源。
但是我們在二次開發中,一般不會支持那么多的數據源。這篇博客首先以 ESRI Shapefile 數據源為例,展示加載圖層的過程。

博客以創建好的工程開始,創建工程的過程網上資料很多,這里就不再贅述了。

添加地圖框

要想顯示圖層,首先要有一個顯示圖層的地方。在 QGIS SDK 中,使用類 QgsMapCanvas 顯示地圖。這個類需要 QT 中的 svg 組件,即

# QgsSdkApp.pro QT += core gui xml svg

如果我們想在 QMainWindow 派生類(我的工程中創建的類名是 QgsSdkApp ,以后直接用這個名稱)添加一個 QgsMapCanvas 類型的組件,
有以下三種方法:

  • 添加插件的方式:在 QT Designer 中添加插件,在 QT Designer 中繪制(我沒有實現成功,理論上可以)
  • 提升類型的方式:在 QT Designer 中使用“提升”功能,將 QWidget 組件提升為 QgsMapCanvas 類型
  • 手動創建的方式:在 QgsSdkApp.cpp 中手動創建 QgsMapCanvas 類型的對象,添加到窗口中
  • 下面一一展示。

    提升類型的方式

    選擇一個組件,右鍵單擊之后,單擊“提升為”按鈕,可以彈出提升窗口部件的對話框。

    打開“提升的窗口部件”對話框的方法

    提升的窗口部件對話框

    上面這個對話框,現在 1 所示的位置輸入要提升的類型的名稱,然后點擊 2 位置上的按鈕,在上面的列表上選中剛剛添加的提升類型,
    點擊 3 位置上的按鈕,即可將該組件提升為指定的類型(即 QgsMapCanvas 類型)。

    然后,在 cpp 文件中已經可以訪問到這個類型的組件了。

    手動創建的方式

    手動創建的方式就是在窗口類的構造函數中,構造一個 QgsMapCanvas 類型的對象,然后添加到窗口上。
    這種情況下和其他在 QT 中手動創建對象沒有差別,和其他一樣處理即可。

    添加圖層

    添加了地圖框(在類內使用一個指針 mMapCanvas ,指向這個地圖框)之后,下面就可以來添加圖層了。
    首先以 ESRI Shapefile 為例,介紹一下添加 QgsVectorLayer 的基本方法。

    添加矢量圖層的方法

    在 QgsSdkApp.ui 中可以添加一個 action ,并拖到工具欄上創建工具按鈕。點擊這個按鈕后開始添加圖層。
    這個過程網上有很多教程,這里就不再贅述了。

    如果要添加 ESRI Shapefile 圖層,我們需要先選擇這個文件。我們可以直接彈出一個文件選擇對話框。
    我們以選擇的文件路徑作為數據源的路徑,文件名(不含擴展名)為圖層名稱。

    void QgsSdkApp::on_actionShp_Layer_triggered() {QString filePath = QFileDialog::getOpenFileName(this, tr("Open ESRI Shapefile"), tr(""), tr("ESRI Shapefile (*.shp)"));QFileInfo fileInfo(filePath);if (fileInfo.exists()){QString fileName = fileInfo.baseName();addVectorLayer(filePath, fileName, "ogr");} }

    創建 addVectorLayer() 函數,用于添加圖層。我們可以以一種簡單的方式添加圖層,即直接創建 QgsVectorLayer 對象,并保存到一個列表(mMapLayerList)里。
    然后讓地圖框加載這個列表,即可顯示地圖。

    QgsVectorLayer *QgsSdkApp::addVectorLayer(const QString &vectorLayerPath, const QString &name, const QString &providerKey, bool guiWarning) {QgsVectorLayer* vectorLayer = new QgsVectorLayer(uri, layerName, providerKey);mMapLayerList.append(vectorLayer);mMapCanvas->setLayers(mMapLayerList);if (mMapLayerList.size() == 1){QgsMapLayer* firstLayer = mMapLayerList.first();QgsRectangle extent = mMapCanvas->mapSettings().layerExtentToOutputExtent(firstLayer, firstLayer->extent());mMapCanvas->setExtent(extent);}mMapCanvas->refresh(); }

    這個函數中除了添加了地圖,同時也限制了地圖框地顯示范圍,即設置為第一個圖層地顯示范圍。最后對地圖進行了刷新。但是這種方式會遇到很多問題:

  • 如果將來要設計 Layout ,那么這個地圖框的內容無法同步到 Layout 中的地圖框中。
  • 如果圖層的投影到地圖框的投影有多種轉換方式,那么無法選擇指定投影方式(尚未實現成功)
  • 如果圖層有子圖層,無法選擇子圖層(ESRI Shapefile 中不會遇到)
  • 如果圖層需要訪問驗證,無法獲取圖層(ESRI Shapefile 中不會遇到)
  • 在 QGIS 中,使用以下代碼以較為完善地設置添加地圖層,同時支持了很多其他功能。函數中創建的圖層直接添加到 QgsProject 中,以支持 Layout 等功能。

    QgsVectorLayer *QgsSdkApp::addVectorLayer(const QString &vectorLayerPath, const QString &name, const QString &providerKey, bool guiWarning) {QString baseName = QgsMapLayer::formatLayerName( name );/* Eliminate the need to instantiate the layer based on provider type.The caller is responsible for cobbling together the needed information toopen the layer*/QgsDebugMsg( "Creating new vector layer using " + vectorLayerPath+ " with baseName of " + baseName+ " and providerKey of " + providerKey );// if the layer needs authentication, ensure the master password is setbool authok = true;QRegExp rx( "authcfg=([a-z]|[A-Z]|[0-9]){7}" );if ( rx.indexIn( vectorLayerPath ) != -1 ){authok = false;if ( !QgsAuthGuiUtils::isDisabled( messageBar(), messageTimeout() ) ){authok = QgsApplication::authManager()->setMasterPassword( true );}}// create the layerQgsVectorLayer::LayerOptions options { QgsProject::instance()->transformContext() };// Default style is loaded later in this methodoptions.loadDefaultStyle = false;QgsVectorLayer *layer = new QgsVectorLayer( vectorLayerPath, baseName, providerKey, options );if ( authok && layer && layer->isValid() ){QStringList sublayers = layer->dataProvider()->subLayers();QgsDebugMsg( QStringLiteral( "got valid layer with %1 sublayers" ).arg( sublayers.count() ) );// If the newly created layer has more than 1 layer of data available, we show the// sublayers selection dialog so the user can select the sublayers to actually load.if ( sublayers.count() > 1 &&! vectorLayerPath.contains( QStringLiteral( "layerid=" ) ) &&! vectorLayerPath.contains( QStringLiteral( "layername=" ) ) ){QList< QgsMapLayer * > addedLayers = askUserForOGRSublayers( layer );// The first layer loaded is not useful in that case. The user can select it in// the list if he wants to load it.delete layer;layer = addedLayers.isEmpty() ? nullptr : qobject_cast< QgsVectorLayer * >( addedLayers.at( 0 ) );for ( QgsMapLayer *l : addedLayers )askUserForDatumTransform( l->crs(), QgsProject::instance()->crs(), l );}else{// Register this layer with the layers registryQList<QgsMapLayer *> myList;//set friendly name for datasources with only one layerQStringList sublayers = layer->dataProvider()->subLayers();if ( !sublayers.isEmpty() ){setupVectorLayer( vectorLayerPath, sublayers, layer,providerKey, options );}myList << layer;QgsProject::instance()->addMapLayers( myList );askUserForDatumTransform( layer->crs(), QgsProject::instance()->crs(), layer );bool ok;layer->loadDefaultStyle( ok );layer->loadDefaultMetadata( ok );}}else{if ( guiWarning ){QString message = layer->dataProvider() ? layer->dataProvider()->error().message( QgsErrorMessage::Text ) : tr( "Invalid provider" );QString msg = tr( "The layer %1 is not a valid layer and can not be added to the map. Reason: %2" ).arg( vectorLayerPath, message );visibleMessageBar()->pushMessage( tr( "Layer is not valid" ), msg, Qgis::Critical, messageTimeout() );}delete layer;return nullptr;}// Let render() do its own cursor management// QApplication::restoreOverrideCursor();return layer; } 注意其中的 QgsProject::instance()->addMapLayers( myList ); 一行,其實在 QGIS 中所有圖層都是通過 QgsProject 進行管理的,一般來說用戶無需自己管理。
    QGIS SDK 也提供了 QgsLayerTreeView 等一套類,用于顯示圖層的層級結構,使用也比較方便。
    但是如果有一些特別需要的功能,再進行自己管理。

    這個函數中還需要其他幾個函數,分別定義如下:

    QList<QgsMapLayer *> QgsSdkApp::askUserForOGRSublayers(QgsVectorLayer *layer) {QList<QgsMapLayer *> result;if ( !layer ){layer = qobject_cast<QgsVectorLayer *>( activeLayer() );if ( !layer || layer->providerType() != QLatin1String( "ogr" ) )return result;}QStringList sublayers = layer->dataProvider()->subLayers();QgsSublayersDialog::LayerDefinitionList list;QMap< QString, int > mapLayerNameToCount;bool uniqueNames = true;int lastLayerId = -1;const auto constSublayers = sublayers;for ( const QString &sublayer : constSublayers ){// OGR provider returns items in this format:// <layer_index>:<name>:<feature_count>:<geom_type>QStringList elements = splitSubLayerDef( sublayer );if ( elements.count() >= 4 ){QgsSublayersDialog::LayerDefinition def;def.layerId = elements[0].toInt();def.layerName = elements[1];def.count = elements[2].toInt();def.type = elements[3];// ignore geometry column name at elements[4]if ( elements.count() >= 6 )def.description = elements[5];if ( lastLayerId != def.layerId ){int count = ++mapLayerNameToCount[def.layerName];if ( count > 1 || def.layerName.isEmpty() )uniqueNames = false;lastLayerId = def.layerId;}list << def;}else{QgsDebugMsg( "Unexpected output from OGR provider's subLayers()! " + sublayer );}}// Check if the current layer uri contains the// We initialize a selection dialog and display it.QgsSublayersDialog chooseSublayersDialog( QgsSublayersDialog::Ogr, QStringLiteral( "ogr" ), this );chooseSublayersDialog.setShowAddToGroupCheckbox( true );chooseSublayersDialog.populateLayerTable( list );if ( !chooseSublayersDialog.exec() )return result;QString name = layer->name();auto uriParts = QgsProviderRegistry::instance()->decodeUri(layer->providerType(), layer->dataProvider()->dataSourceUri() );QString uri( uriParts.value( QStringLiteral( "path" ) ).toString() );// The uri must contain the actual uri of the vectorLayer from which we are// going to load the sublayers.QString fileName = QFileInfo( uri ).baseName();const auto constSelection = chooseSublayersDialog.selection();for ( const QgsSublayersDialog::LayerDefinition &def : constSelection ){QString layerGeometryType = def.type;QString composedURI = uri;if ( uniqueNames ){composedURI += "|layername=" + def.layerName;}else{// Only use layerId if there are ambiguities with namescomposedURI += "|layerid=" + QString::number( def.layerId );}if ( !layerGeometryType.isEmpty() ){composedURI += "|geometrytype=" + layerGeometryType;}QgsDebugMsg( "Creating new vector layer using " + composedURI );QString name = fileName + " " + def.layerName;QgsVectorLayer::LayerOptions options { QgsProject::instance()->transformContext() };options.loadDefaultStyle = false;QgsVectorLayer *layer = new QgsVectorLayer( composedURI, name, QStringLiteral( "ogr" ), options );if ( layer && layer->isValid() ){result << layer;}else{QString msg = tr( "%1 is not a valid or recognized data source" ).arg( composedURI );visibleMessageBar()->pushMessage( tr( "Invalid Data Source" ), msg, Qgis::Critical, messageTimeout() );delete layer;}}if ( !result.isEmpty() ){QgsSettings settings;bool addToGroup = settings.value( QStringLiteral( "/qgis/openSublayersInGroup" ), true ).toBool();bool newLayersVisible = settings.value( QStringLiteral( "/qgis/new_layers_visible" ), true ).toBool();QgsLayerTreeGroup *group = nullptr;if ( addToGroup )group = QgsProject::instance()->layerTreeRoot()->insertGroup( 0, name );QgsProject::instance()->addMapLayers( result, ! addToGroup );for ( QgsMapLayer *l : qgis::as_const( result ) ){bool ok;l->loadDefaultStyle( ok );l->loadDefaultMetadata( ok );if ( addToGroup )group->addLayer( l );}// Respect if user don't want the new group of layers visible.if ( addToGroup && ! newLayersVisible )group->setItemVisibilityCheckedRecursive( newLayersVisible );}return result; }bool QgsSdkApp::askUserForDatumTransform(const QgsCoordinateReferenceSystem &sourceCrs, const QgsCoordinateReferenceSystem &destinationCrs, const QgsMapLayer *layer) {Q_ASSERT( qApp->thread() == QThread::currentThread() );QString title;if ( layer ){// try to make a user-friendly (short!) identifier for the layerQString layerIdentifier;if ( !layer->name().isEmpty() ){layerIdentifier = layer->name();}else{const QVariantMap parts = QgsProviderRegistry::instance()->decodeUri( layer->providerType(), layer->source() );if ( parts.contains( QStringLiteral( "path" ) ) ){const QFileInfo fi( parts.value( QStringLiteral( "path" ) ).toString() );layerIdentifier = fi.fileName();}else if ( layer->dataProvider() ){const QgsDataSourceUri uri( layer->source() );layerIdentifier = uri.table();}}if ( !layerIdentifier.isEmpty() )title = tr( "Select Transformation for %1" ).arg( layerIdentifier );}return QgsDatumTransformDialog::run( sourceCrs, destinationCrs, this, mMapCanvas, title ); }static QStringList splitSubLayerDef( const QString &subLayerDef ) {return subLayerDef.split( QgsDataProvider::sublayerSeparator() ); }static void setupVectorLayer( const QString &vectorLayerPath,const QStringList &sublayers,QgsVectorLayer *&layer,const QString &providerKey,QgsVectorLayer::LayerOptions options ) {//set friendly name for datasources with only one layerQgsSettings settings;QStringList elements = splitSubLayerDef( sublayers.at( 0 ) );QString rawLayerName = elements.size() >= 2 ? elements.at( 1 ) : QString();QString subLayerNameFormatted = rawLayerName;if ( settings.value( QStringLiteral( "qgis/formatLayerName" ), false ).toBool() ){subLayerNameFormatted = QgsMapLayer::formatLayerName( subLayerNameFormatted );}if ( elements.size() >= 4 && layer->name().compare( rawLayerName, Qt::CaseInsensitive ) != 0&& layer->name().compare( subLayerNameFormatted, Qt::CaseInsensitive ) != 0 ){layer->setName( QStringLiteral( "%1 %2" ).arg( layer->name(), rawLayerName ) );}// Systematically add a layername= option to OGR datasets in case// the current single layer dataset becomes layer a multi-layer one.// Except for a few select extensions, known to be always single layer dataset.QFileInfo fi( vectorLayerPath );QString ext = fi.suffix().toLower();if ( providerKey == QLatin1String( "ogr" ) &&ext != QLatin1String( "shp" ) &&ext != QLatin1String( "mif" ) &&ext != QLatin1String( "tab" ) &&ext != QLatin1String( "csv" ) &&ext != QLatin1String( "geojson" ) &&! vectorLayerPath.contains( QStringLiteral( "layerid=" ) ) &&! vectorLayerPath.contains( QStringLiteral( "layername=" ) ) ){auto uriParts = QgsProviderRegistry::instance()->decodeUri(layer->providerType(), layer->dataProvider()->dataSourceUri() );QString composedURI( uriParts.value( QStringLiteral( "path" ) ).toString() );composedURI += "|layername=" + rawLayerName;auto newLayer = qgis::make_unique<QgsVectorLayer>( composedURI, layer->name(), QStringLiteral( "ogr" ), options );if ( newLayer && newLayer->isValid() ){delete layer;layer = newLayer.release();}} }

    這個函數中還需要以下幾個 Getter 函數,我們在窗口中提供對應的組件即可:

  • QgsMessageBar* messageBar() : 可以在狀態欄上創建一個 QgsMessageBar 的對象,用這個函數獲取
  • int messageTimeout() : 可以直接返回 500 ,或根據配置文件、設置等返回
  • QgsMessageBar* visibleMessageBar() : 可直接返回狀態欄上的 QgsMessageBar 對象
  • QgsMapLayer* activeLayer() : 需要使用 QgsLayerTreeView 類獲取,下面詳述
  • 但是現在,還不能在地圖上顯示,需要將 QgsMapCanvas 和 QgsProject 建立關聯,才能將 QgsProject 中的圖層同步到 QgsMapCanvas 中。
    使用的方法是在構造函數中添加如下代碼:

    QgsSdkApp::QgsSdkApp(QWidget *parent): QMainWindow(parent), ui(new Ui::QgsSdkApp) {ui->setupUi(this);mMapCanvas = ui->centralwidget;mMapCanvas->setObjectName(QStringLiteral("theMapCanvas"));/** [BEGIN] 添加的用于將 `QgsMapCanvas` 和 `QgsProject` 建立關聯的代碼 */mLayerTreeCanvasBridge = new QgsLayerTreeMapCanvasBridge(QgsProject::instance()->layerTreeRoot(), mMapCanvas, this);/** [END] */connect(ui->actionAdd_Shp_Layer, &QAction::triggered, this, &QgsSdkApp::on_actionShp_Layer_triggered); }

    這樣添加了圖層之后,就可以在地圖上顯示了。

    顯示矢量圖層

    添加其他圖層

    其他圖層的添加方法,都可以從 QGIS 的代碼中進行參考。在 qgisapp.cpp 文件中,有這個函數

    void QgisApp::dataSourceManager( const QString &pageName ) {if ( ! mDataSourceManagerDialog ){mDataSourceManagerDialog = new QgsDataSourceManagerDialog( mBrowserModel, this, mapCanvas() );connect( this, &QgisApp::connectionsChanged, mDataSourceManagerDialog, &QgsDataSourceManagerDialog::refresh );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::connectionsChanged, this, &QgisApp::connectionsChanged );connect( mDataSourceManagerDialog, SIGNAL( addRasterLayer( QString const &, QString const &, QString const & ) ),this, SLOT( addRasterLayer( QString const &, QString const &, QString const & ) ) );connect( mDataSourceManagerDialog, SIGNAL( addVectorLayer( QString const &, QString const &, QString const & ) ),this, SLOT( addVectorLayer( QString const &, QString const &, QString const & ) ) );connect( mDataSourceManagerDialog, SIGNAL( addVectorLayers( QStringList const &, QString const &, QString const & ) ),this, SLOT( addVectorLayers( QStringList const &, QString const &, QString const & ) ) );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::addMeshLayer, this, &QgisApp::addMeshLayer );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::showStatusMessage, this, &QgisApp::showStatusMessage );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::addDatabaseLayers, this, &QgisApp::addDatabaseLayers );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::replaceSelectedVectorLayer, this, &QgisApp::replaceSelectedVectorLayer );connect( mDataSourceManagerDialog, static_cast<void ( QgsDataSourceManagerDialog::* )()>( &QgsDataSourceManagerDialog::addRasterLayer ), this, static_cast<void ( QgisApp::* )()>( &QgisApp::addRasterLayer ) );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::handleDropUriList, this, &QgisApp::handleDropUriList );connect( this, &QgisApp::newProject, mDataSourceManagerDialog, &QgsDataSourceManagerDialog::updateProjectHome );connect( mDataSourceManagerDialog, &QgsDataSourceManagerDialog::openFile, this, &QgisApp::openFile );}else{mDataSourceManagerDialog->reset();}// Try to open the dialog on a particular pageif ( ! pageName.isEmpty() ){mDataSourceManagerDialog->openPage( pageName );}if ( QgsSettings().value( QStringLiteral( "/qgis/dataSourceManagerNonModal" ), true ).toBool() ){mDataSourceManagerDialog->show();}else{mDataSourceManagerDialog->exec();} }

    這個函數中有 addRasterLayer addVectorLayer addMeshLayer 等函數,是添加不同類型的圖層的方法。可以直接查看這些方法,學習其中的方法,放到工程中來。

    在下篇博客中,我計劃介紹添加 CSV 類型數據的方法。

    顯示圖層樹

    一般情況下我們都需要使用圖層樹來對圖層進行管理。下面我們就在界面上添加 QgsLayerTreeView 對象。

    我們首先在界面上創建一個 QWidget 組件,提升為 QgsLayerTreeView 類型。然后再構造函數中給其設置 Model 等。

    QgsSdkApp::QgsSdkApp(QWidget *parent) : QMainWindow(parent), ui(new Ui::QgsSdkApp) {ui->setupUi(this);mMapCanvas = ui->centralwidget;mMapCanvas->setObjectName(QStringLiteral("theMapCanvas"));mLayerTreeCanvasBridge = new QgsLayerTreeMapCanvasBridge(QgsProject::instance()->layerTreeRoot(), mMapCanvas, this);/** [BEGIN] 設置 QgsLayerTreeView 的 Model */QgsLayerTreeModel* model = new QgsLayerTreeModel(QgsProject::instance()->layerTreeRoot(), this);ui->layerTreeView->setModel(model);ui->layerTreeView->setObjectName(QStringLiteral( "theLayerTreeView" ));/** [END] */mInfoBar = new QgsMessageBar(this);ui->statusbar->addWidget(mInfoBar);connect(ui->actionAdd_Shp_Layer, &QAction::triggered, this, &QgsSdkApp::on_actionShp_Layer_triggered); } QT 中采用的 MVC 模型。 QT 中提供了 QTreeView 、 QListView 、 QTableView 等視圖(View),
    也提供了 QAbstractItemModel 、 QAbstractListModel 、 QAbstractTableModel 三種模型(Model),
    也會提供了一些 Delegate 委托(相當于控制器 Controller)。

    顯示圖層樹

    但是我們這個圖層樹僅僅有一個最基本的功能,而在 QGIS 中排序、右鍵菜單豐富的功能。
    對于右鍵菜單,QGIS 中使用了 Provider 的方式提供右鍵菜單的菜單項,我們需要將這些 Provider 的代碼復制過來,添加到工程中。

    // qgisapp.cpp [4493行] mLayerTreeView->setMenuProvider( new QgsAppLayerTreeViewMenuProvider( mLayerTreeView, mMapCanvas ) );

    對于排序等其他功能,我們可以按需添加。

    總結

    以上是生活随笔為你收集整理的手动选择显示_QGIS 二次开发笔记(2)——显示图层的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    午夜骚影| 日韩精品中文字幕在线观看 | 毛片激情永久免费 | 日韩在线视频看看 | 国产录像在线观看 | 一区二区三区在线播放 | 亚洲国产免费看 | 一级黄色大片在线观看 | 亚洲爽爽网 | 午夜黄色影院 | 久久久久99精品国产片 | 在线观看成年人 | 亚洲国产偷 | 国内精品久久久久久久 | av成人亚洲 | 91麻豆精品国产91久久久使用方法 | 国产精品婷婷午夜在线观看 | 99热精品在线 | 国产精品色婷婷 | 999视频在线观看 | 蜜臀av夜夜澡人人爽人人 | 国产一区国产二区在线观看 | 狠狠色噜噜狠狠狠狠2022 | 91亚色视频在线观看 | 欧美性做爰猛烈叫床潮 | 97国产精品一区二区 | 999ZYZ玖玖资源站永久 | 99精品视频在线观看免费 | 国产资源在线免费观看 | 国产成人精品亚洲精品 | 亚洲国产偷| 欧美少妇18p| 国产亚洲一区二区在线观看 | 国产麻豆精品久久一二三 | 国产精品久久在线观看 | 日韩一区二区三区高清免费看看 | 久久精品国产第一区二区三区 | 中文字幕中文字幕在线中文字幕三区 | 伊人热| 超碰在线97观看 | 日韩国产精品一区 | 久久国产精品免费 | 亚洲精品视频在线观看网站 | av理论电影| 91插插影库 | 日韩一区在线免费观看 | 在线观看精品一区 | 久久无码av一区二区三区电影网 | 国产精品一区二区三区四区在线观看 | 国产视频资源在线观看 | 911国产精品| 五月天伊人网 | 亚洲成人黄色在线 | 色在线最新 | 国产精品久久一区二区三区不卡 | 久久精品爱爱视频 | 九月婷婷人人澡人人添人人爽 | 婷婷久草| 欧美国产视频在线 | 男女拍拍免费视频 | 亚洲视屏一区 | 国产无遮挡又黄又爽在线观看 | 久久久999免费视频 日韩网站在线 | 国产福利不卡视频 | 97精品国产97久久久久久久久久久久 | 国内免费的中文字幕 | 免费在线一区二区三区 | 波多野结衣视频一区二区三区 | 久久国产精品久久久久 | 在线黄色免费av | 国产人免费人成免费视频 | 日韩精品一区二区三区水蜜桃 | 九九热有精品 | 麻豆国产精品va在线观看不卡 | 又紧又大又爽精品一区二区 | av在线超碰 | 西西大胆免费视频 | 亚洲精选视频免费看 | 成人国产精品一区二区 | 国产专区视频 | 亚洲黄色在线 | 精品久久久久久电影 | av网站地址 | 欧美午夜性| 久久人人爽人人爽人人片 | av成年人电影 | av在线电影播放 | 四虎5151久久欧美毛片 | 久久久久久国产一区二区三区 | 中文免费观看 | 亚洲动漫在线观看 | 亚洲精品视频在线观看免费视频 | 日本在线观看一区二区三区 | 字幕网资源站中文字幕 | 中文字幕日韩精品有码视频 | 国产精品一区二区白浆 | 日韩一区二区三区高清在线观看 | 夜夜躁日日躁狠狠久久88av | 操操日日 | 中文字幕在线网址 | 国产高潮久久 | 激情综合国产 | 999久久 | 99国产视频 | 久久99热精品 | 91成人精品一区在线播放69 | 成人免费精品 | 国产五月天婷婷 | 99精品国产99久久久久久福利 | 最新av在线网站 | 97热视频 | 日韩啪视频 | 91 在线视频 | 狠狠综合网 | 成人av资源网站 | 久99久中文字幕在线 | 精品国产一区二区三区久久久蜜月 | 欧美综合在线视频 | 99久久精品国产亚洲 | 成人资源站 | 久久久精华网 | 国产91精品久久久久久 | 亚洲成人二区 | 超碰97久久 | 国产视频精品免费播放 | 波多野结衣一区三区 | 天天干天天干天天色 | 九色自拍视频 | 色婷婷啪啪免费在线电影观看 | 亚洲精品大全 | 国产无区一区二区三麻豆 | 日韩黄在线观看 | 精品毛片一区二区免费看 | 中文成人字幕 | 日韩久久精品一区 | 成年人app网址 | 国产人成在线观看 | 亚洲一区二区麻豆 | 国产一区二区三区高清播放 | 99热这里只有精品在线观看 | 激情 一区二区 | 天天爽天天爽夜夜爽 | 在线观看一级片 | 亚洲一区网 | 国产精品久久久久久久婷婷 | 日韩欧美国产视频 | 亚洲网久久 | 色永久免费视频 | 国产中文字幕国产 | 欧美日韩在线观看一区二区三区 | 伊人宗合网 | 91在线成人 | 97超碰人 | 国产69精品久久99的直播节目 | 中文字幕 影院 | 又长又大又黑又粗欧美 | 国产一卡在线 | 国产69精品久久久久99尤 | av性网站| 亚洲狠狠丁香婷婷综合久久久 | 日韩免费在线 | 男女激情片在线观看 | 97成人精品视频在线播放 | 中文字幕文字幕一区二区 | 久久乐九色婷婷综合色狠狠182 | 国产精品美女视频 | 国产一区在线播放 | 欧美精品亚洲精品日韩精品 | 午夜在线观看一区 | 国产精品久久久久久久久大全 | 国产亚洲欧美在线视频 | 伊人色播 | 久久久久久久久久久久av | 国产精品免费看久久久8精臀av | 色综合综合 | 成人天堂网 | 九九久| 4438全国亚洲精品在线观看视频 | 国产综合视频在线观看 | 成人禁用看黄a在线 | 日本精品va在线观看 | 国产资源在线免费观看 | 国产亚洲一区 | 中文字幕在线播放一区二区 | 一本—道久久a久久精品蜜桃 | 深夜免费福利 | 亚洲男女精品 | 波多野结衣精品 | 亚洲精品久久久久中文字幕二区 | 国产精品美女视频 | 91九色最新地址 | 精品国产视频在线观看 | 欧美一级裸体视频 | 毛片黄色一级 | 天天射天天爽 | 久草视频国产 | 四虎在线免费观看 | 久久久在线观看 | 中文字幕第 | 日产av在线播放 | 欧美激情第八页 | 国产在线最新 | 国产一级一片免费播放放 | 成年人国产在线观看 | 成人天堂网 | av免费电影在线观看 | 伊人久久国产精品 | 成人在线播放免费观看 | 中文字幕在线高清 | 中文字幕一区av | 中文字幕av专区 | 国产精品一区二区久久精品爱微奶 | 亚洲黄在线观看 | 美女久久久 | av福利电影 | 精品久久一区 | 久久久久久高清 | 西西人体4444www高清视频 | 91综合色| 91av手机在线观看 | 亚洲资源一区 | 毛片在线播放网址 | 国产综合在线视频 | 久久精品欧美一区 | 91在线免费播放视频 | 亚洲成人精品久久 | 亚洲狠狠丁香婷婷综合久久久 | 久久免费毛片视频 | 久久久久国产成人精品亚洲午夜 | 日本不卡123 | 久久综合九色综合97婷婷女人 | 国产精品一区二区62 | 看片一区二区三区 | 91麻豆精品国产91久久久久 | 91精品视频在线播放 | 天天天天射 | 国产网红在线观看 | 国产糖心vlog在线观看 | 午夜久久网站 | 国产高清无av久久 | 日日摸日日 | 久久久www成人免费毛片麻豆 | 久久色在线播放 | 国产字幕av | 夜夜操网站 | 婷婷日 | 中文字幕免费国产精品 | 国产一区二区三区免费在线观看 | 国产精品久久久久久久久久白浆 | 欧美日韩不卡在线 | 在线a视频 | 国内精品亚洲 | 色99在线| 三级黄色免费 | 国产999视频在线观看 | 欧美a影视 | 欧美高清成人 | 国产99久久精品一区二区300 | 麻豆免费在线播放 | 精品视频中文字幕 | a在线播放 | 国产精品成人久久 | 精品久久久久久久久久 | 人人干人人做 | 中文字幕的 | 美女在线免费观看视频 | 日韩欧美69 | 精品国精品自拍自在线 | 婷婷六月丁 | 在线 成人| 在线之家免费在线观看电影 | 日批视频 | 国内精品视频一区二区三区八戒 | 久久综合给合久久狠狠色 | 国内偷拍精品视频 | 国产高清av免费在线观看 | 成人午夜精品福利免费 | 免费视频二区 | 在线成人高清电影 | 日韩av线观看 | 色综合久久久久久久 | 亚洲一区二区精品3399 | www.亚洲精品在线 | 欧美久久久久久久久久久久久 | 精品久久久久久亚洲综合网站 | 精品久久久久久久久亚洲 | 成人精品久久久 | 午夜av影院| 国产男女无遮挡猛进猛出在线观看 | 国产精品国产亚洲精品看不卡15 | 日韩字幕在线观看 | 黄色一级网| 九九九九九国产 | 99视频在线观看一区三区 | 色婷av | 国产在线精 | 免费网站观看www在线观看 | 日韩视频一区二区在线观看 | 欧美在线视频第一页 | 制服丝袜一区二区 | 国产丝袜 | 久久久久久国产精品久久 | 久久久一本精品99久久精品 | 日日夜夜人人精品 | 天天草综合| 婷婷伊人综合 | 欧美一级特黄aaaaaa大片在线观看 | av色一区 | 亚洲国产黄色 | 插插插色综合 | 日韩高清一区在线 | 欧美粗又大 | 国产精品video | 狠狠色丁香婷婷综合橹88 | 日韩精品久久久久久久电影竹菊 | 狠狠干网址 | 欧美日韩国产一区二区在线观看 | 18久久久| 人人搞人人干 | av黄免费看 | 国产一区免费观看 | 成人中文字幕+乱码+中文字幕 | 九九视频热 | 色午夜影院 | 日韩字幕 | 91在线看黄 | 久久精品成人 | 久久99亚洲网美利坚合众国 | 手机成人在线 | 狠狠的干狠狠的操 | 免费观看的黄色片 | 在线观看精品国产 | 国产精品99在线观看 | 欧美久久成人 | 中文字幕在线免费播放 | 91精品专区 | 91亚洲视频在线观看 | 久久99这里只有精品 | 久久久久久高潮国产精品视 | 久久夜夜爽 | 成 人 黄 色 视频 免费观看 | 99精品在线看 | 丝袜美女视频网站 | 日本女人的性生活视频 | 国产精品美女免费看 | 91丝袜美腿 | 国产99区 | 免费在线观看av的网站 | 日韩av不卡播放 | 午夜黄色 | 欧美淫视频 | 国产成人福利在线观看 | 在线导航av| 久久精品影片 | 成 人 黄 色 片 在线播放 | 亚洲黄色影院 | 日韩一区视频在线 | a级国产乱理论片在线观看 特级毛片在线观看 | 亚洲一区美女视频在线观看免费 | 色成人亚洲 | 午夜一级免费电影 | 日韩欧美一区二区三区视频 | 日本三级久久久 | 日本护士三级少妇三级999 | 五月开心婷婷网 | 久久精品牌麻豆国产大山 | 国产又粗又长的视频 | 中文字幕乱码一区二区 | 久久免费视频在线 | 色悠悠久久综合 | 97超碰人人模人人人爽人人爱 | 一区二区三区 亚洲 | 中文字幕频道 | 国产手机在线 | 日韩一区二区久久 | 国产美女网| 欧美福利久久 | 国产精品一区免费看8c0m | 欧美a级在线免费观看 | 日日插日日干 | 天天色天天射天天操 | 五月天丁香综合 | 日韩激情视频在线观看 | 久视频在线| 亚洲狠狠操 | 天天操天天射天天爱 | 韩日精品中文字幕 | 日韩美女黄色片 | 特级毛片在线观看 | 婷婷5月色 | 亚洲高清av | 国产精品入口麻豆www | 日韩一区二区三区高清在线观看 | 国产午夜精品免费一区二区三区视频 | 欧美日韩二三区 | 欧美国产日韩激情 | 三级在线视频播放 | 欧美极度另类性三渗透 | 欧美一区二区在线看 | 国产一级高清 | 久久字幕精品一区 | 亚洲一区欧美激情 | 亚洲精品成人在线 | av丁香花 | 亚洲国产成人在线播放 | 99国产精品一区 | 狠狠躁天天躁 | 日韩一区精品 | 麻豆首页| 欧美大片www | 日韩在线免费 | 久久久久久久国产精品视频 | 久久9999久久免费精品国产 | 亚洲欧洲av在线 | 亚洲国产一区二区精品专区 | 中文字幕资源网 | 久久超碰网 | 免费视频久久久久 | 中文字幕色在线 | 欧美另类交人妖 | 99精品视频在线看 | 91大神精品视频在线观看 | 黄色三级在线看 | 欧美人交a欧美精品 | 99久久精品免费一区 | 9i看片成人免费看片 | 日韩欧在线 | 中文字幕视频一区 | 国产精品精品国产婷婷这里av | 欧美国产精品一区二区 | 一级片黄色片网站 | 亚洲在线视频网站 | 国产一区二区在线免费 | 亚洲精选国产 | 婷婷成人亚洲综合国产xv88 | 国产成人精品一区二区三区在线观看 | 99热手机在线观看 | 国产精品男女啪啪 | 黄色一级大片在线免费看国产一 | 久久图| 亚洲国产精品成人va在线观看 | 中文字幕成人在线 | 黄色亚洲大片免费在线观看 | 国产美女在线精品免费观看 | 免费观看视频的网站 | 成人精品久久久 | 久久精品高清 | 欧美精品国产综合久久 | 免费人做人爱www的视 | 亚洲一区美女视频在线观看免费 | 精品亚洲在线 | 国产一级在线 | 欧美国产日韩在线观看 | 一区二区三区四区五区在线视频 | 国产精品欧美 | 国产精品久久久久影院 | 亚洲精品欧美成人 | 欧美日韩视频免费 | 亚洲精品mv在线观看 | 99亚洲国产 | av黄色一级片 | 国产小视频在线免费观看视频 | 久久久黄色免费网站 | 最近中文国产在线视频 | 中文字幕之中文字幕 | 中文字幕在线资源 | 2021国产精品 | 国内精品久久久久久久影视麻豆 | 久草精品免费 | 天天干天天操天天干 | 久久久久免费精品 | 精品一区二区三区久久 | 日日摸日日碰 | 草久久精品 | 久久久亚洲电影 | 欧美激情xxxx性bbbb | 亚洲天堂香蕉 | 国产精品久久久久久婷婷天堂 | 日韩在线理论 | 久久在线免费 | 国产精品一区二区免费在线观看 | 丁香一区二区 | 五月婷婷视频在线 | 国产无吗一区二区三区在线欢 | 黄色在线免费观看网站 | 午夜美女福利直播 | 欧美 日韩 国产 成人 在线 | 五月丁香 | 中文字幕在线一区二区三区 | 成人小视频在线观看免费 | 99色免费视频 | 欧美一级片在线 | 婷婷丁香国产 | 国产精品不卡在线 | 天天干,天天插 | 天天操网址 | а中文在线天堂 | 日韩精品视频在线观看免费 | www.91成人| 久久久99久久 | 天天操天天干天天爽 | 色人久久 | 一级黄色网址 | 国产无遮挡又黄又爽馒头漫画 | 亚洲一级理论片 | 日韩一三区 | 97视频精品 | 九色91av| 久黄色 | 亚洲激情在线视频 | 成人中文字幕+乱码+中文字幕 | 亚洲精品免费在线播放 | 日韩网站免费观看 | 岛国大片免费视频 | 日韩一区二区免费播放 | 久久免费中文视频 | 久久系列 | 992tv在线| 91在线成人 | 国产精品久久久久av福利动漫 | 欧美三级在线播放 | 日韩夜夜爽| 91av在| 在线免费观看黄色av | 欧美一区成人 | 久久久精选 | 国产美女精彩久久 | 色婷婷国产精品一区在线观看 | 五月婷婷操| 夜色在线资源 | 九九综合久久 | 国产又粗又猛又色 | 久久精品一区二区国产 | 嫩草伊人久久精品少妇av | 成人h视频在线 | 国产91在线观看 | 免费久久久久久久 | 激情xxxx| 国产精品美女www爽爽爽视频 | 国产精品一区电影 | 国产在线观看地址 | 精品国产一二三四区 | 狠狠干美女 | 精品国产自在精品国产精野外直播 | 国产精品视频免费在线观看 | 欧美午夜一区二区福利视频 | 日韩亚洲在线 | 国产精品情侣视频 | 又色又爽又黄高潮的免费视频 | 午夜天使 | 久久久久久久久毛片精品 | 亚洲极色 | 婷婷综合电影 | 国产四虎影院 | 亚洲视频综合在线 | 在线精品一区二区 | 久操97| 免费高清av在线看 | 激情婷婷综合网 | 五月婷久 | 狠狠色丁香久久婷婷综合丁香 | 在线观看岛国 | 99久久日韩精品视频免费在线观看 | 成人久久久久久久久久 | 黄a在线看| 6080yy精品一区二区三区 | 香蕉久久久久久av成人 | 在线激情av电影 | 久久久 精品 | 91手机电视 | 国产精品毛片久久久久久久久久99999999 | 国产精品久久久久久久久搜平片 | 337p日本大胆噜噜噜噜 | 依人成人综合网 | 成人av在线网 | 久久精品亚洲国产 | 91porny九色91啦中文 | 久久麻豆精品 | 国产精品久久久久婷婷二区次 | 二区三区av| 亚洲涩涩涩 | 成人久久毛片 | 亚洲精品视频免费在线 | 中文字幕第一页在线播放 | 色欧美成人精品a∨在线观看 | 美女网站免费福利视频 | 波多野结衣在线观看一区 | 亚洲国产精品成人女人久久 | 色资源网免费观看视频 | 9在线观看免费高清完整版 玖玖爱免费视频 | 91精品视频网站 | 国产伦理一区二区三区 | 成人黄色在线电影 | 亚洲成a人片77777kkkk1在线观看 | 国产中文字幕国产 | 精品一区二区亚洲 | 亚洲伊人网在线观看 | 免费看一及片 | 国产精品成人一区二区三区吃奶 | 青青色影院 | av免费看网站 | 丝袜网站在线观看 | 精品v亚洲v欧美v高清v | 国产精品21区 | 狠狠狠的干| 少妇bbr搡bbb搡bbb | av免费在线免费观看 | 在线 高清 中文字幕 | 五月婷婷久久综合 | 久草久草在线 | 亚洲电影成人 | 国产在线中文 | 中文字幕免费播放 | 国产91对白在线播 | 欧美人人 | 国产亚洲精品久久久久秋 | 最新的av网站 | 九九在线高清精品视频 | 国产精品中文在线 | 婷婷精品国产欧美精品亚洲人人爽 | 特级黄色视频毛片 | 天天射夜夜爽 | av3级在线 | 亚洲久久视频 | 一区二区三区视频网站 | 亚洲国产三级在线观看 | 国产剧在线观看片 | 国产高清一区二区 | 亚洲高清视频在线观看 | 日韩免费看 | 国产精品第52页 | 国产永久免费 | 天堂在线视频中文网 | 日韩特黄av| 狠狠色丁香九九婷婷综合五月 | 国产精品久久久久久久久毛片 | 操操综合 | 一级电影免费在线观看 | 国产欧美精品一区二区三区 | 欧美日韩高清一区二区三区 | 美女久久久 | 久久天天躁夜夜躁狠狠85麻豆 | 人人爽人人爽 | 日韩视频免费观看高清 | 国产免费久久av | 国产精品国产三级在线专区 | a天堂最新版中文在线地址 久久99久久精品国产 | 色资源网免费观看视频 | av三级在线看 | 国产精品一区专区欧美日韩 | 国产成人精品久久久 | 性色av香蕉一区二区 | 中文av字幕在线观看 | 久久艹国产视频 | 亚洲婷婷网| 国产一级电影免费观看 | 亚洲乱码精品 | 国产亚洲精品bv在线观看 | 美女视频永久黄网站免费观看国产 | 九九热精品国产 | 精品一二三区视频 | 婷婷成人在线 | 波多野结衣一区二区三区中文字幕 | 欧美日韩一区二区三区视频 | 九九热精品视频在线观看 | www.伊人网 | 91福利影院在线观看 | 日本黄色免费电影网站 | 国产一区二区三区免费视频 | 人人爱在线视频 | 天堂av网在线 | free. 性欧美.com | 国产在线资源 | 国产专区在线看 | 成片视频在线观看 | 亚洲成av人电影 | 97夜夜澡人人双人人人喊 | 99热这里是精品 | 成人国产精品一区 | 日本特黄一级片 | 夜夜夜精品 | 丁香资源影视免费观看 | 99久久精品国产亚洲 | 极品嫩模被强到高潮呻吟91 | 日韩av影视在线观看 | 成人亚洲精品久久久久 | 在线天堂中文在线资源网 | 嫩草av影院 | 韩国av一区 | 久久久黄色免费网站 | 国产成人精品a | 免费能看的黄色片 | 精品国产免费观看 | 亚洲区另类春色综合小说校园片 | 国产亚洲视频在线 | 在线欧美a | 日本高清dvd | 波多野结衣一区二区三区中文字幕 | 国产福利在线免费观看 | 99在线观看精品 | 在线国产日本 | 黄色软件视频大全免费下载 | 色婷婷在线观看视频 | 四虎欧美| 久久看片网 | 国产精品99久久久久久武松影视 | 亚洲国产精品久久久久久 | 色综合久久久久综合体 | 国产精品久久久久久久久久久久午 | 91精品国产九九九久久久亚洲 | 免费av电影网站 | 久久黄页 | 日韩激情片在线观看 | 国产999精品久久久久久 | 午夜性盈盈 | 97在线观看免费视频 | 免费网站看v片在线a | 操操爽| 视频国产一区二区三区 | 丁香九月婷婷综合 | 欧美成人按摩 | 久久国产一区二区三区 | 国产精国产精品 | 九九综合在线 | 国产高清视频色在线www | 五月婷婷婷婷婷 | 午夜精品成人一区二区三区 | 91色视频| 日韩精品一区在线播放 | 国产精品午夜久久久久久99热 | 色综合婷婷久久 | 国产不卡免费视频 | 草在线| 91精品一区二区三区久久久久久 | 亚洲综合网 | 91九色视频观看 | 香蕉视频免费看 | 国产精品自产拍 | 精品在线免费视频 | 天天色棕合合合合合合 | 国产久草在线 | 91在线视频播放 | 午夜精品视频一区 | 亚洲综合色丁香婷婷六月图片 | 中文字幕在线观看第一区 | 激情五月婷婷网 | 日韩在线高清视频 | 97超碰国产精品女人人人爽 | 黄网站污 | 激情在线免费视频 | 色诱亚洲精品久久久久久 | 亚洲国产精品久久久久婷婷884 | 特黄免费av | 日韩精品一区电影 | 在线成人看片 | 夜夜高潮夜夜爽国产伦精品 | 日韩视频a | 亚洲日本韩国一区二区 | 91免费日韩 | japanesexxxhd奶水| 亚洲综合五月天 | 国产在线视频不卡 | 免费看av在线 | 国产精品一区在线 | 在线色资源| 丁香花在线视频观看免费 | av无限看 | 91福利视频在线 | 人人插人人射 | 四虎成人精品在永久免费 | 婷婷丁香在线视频 | 国产精品高 | 97影视 | 黄色片视频在线观看 | 中文字幕在线免费 | 97成人资源 | 九九热免费视频在线观看 | 日韩手机在线观看 | 久久影视中文字幕 | 人人网av| 超碰在线天天 | 日韩激情第一页 | www.超碰97.com| 欧洲精品码一区二区三区免费看 | 日本久久成人中文字幕电影 | 国产精品一区二 | 中文字幕永久在线 | 最近中文字幕高清字幕免费mv | 国精产品999国精产品岳 | 亚洲综合在线一区二区三区 | 日韩精品亚洲专区在线观看 | 日韩欧美在线播放 | 久久国产精品视频观看 | 欧美精品中文 | 欧美另类一二三四区 | 丁香视频| 国产精品入口66mio女同 | 岛国精品一区二区 | 国内精品一区二区 | www黄色 | 欧美在线观看视频一区二区 | 国产一区在线不卡 | 97偷拍在线视频 | 日韩美女av在线 | 亚洲精品玖玖玖av在线看 | 国产福利一区二区在线 | 开心色插 | 正在播放五月婷婷狠狠干 | 精品国产福利在线 | 在线观看精品视频 | 久草精品视频在线看网站免费 | 中文字幕网站视频在线 | 日韩中文字幕电影 | 国产午夜一区 | 五月婷婷激情网 | 天天干 天天摸 天天操 | 在线欧美中文字幕 | 干狠狠| 久草免费在线 | 免费亚洲一区二区 | 天天色天天色天天色 | 欧美国产日韩一区二区三区 | 久久av一区二区三区亚洲 | 97在线超碰| 婷婷中文字幕在线观看 | 美女在线免费视频 | 手机看片午夜 | 成人全视频免费观看在线看 | 亚洲 综合 国产 精品 | 久久亚洲成人网 | 免费av观看网站 | 午夜在线免费视频 | 精品一区二区精品 | 欧美大片在线观看一区 | 97色综合| 免费日韩一区二区三区 | 麻豆影视网 | 国内精品小视频 | 亚洲国产精品视频 | 国内精品久久久久影院优 | 免费黄色网止 | 五月激情丁香 | 久久国产综合视频 | 久久久久久久国产精品视频 | 亚洲激情在线观看 | 少妇激情久久 | 欧美成人在线网站 | 日韩精品一区二区在线视频 | 欧美99热| 免费高清在线视频一区· | 亚洲九九九在线观看 | 一区在线电影 | av电影中文字幕 | 在线观看欧美成人 | 国产成人久久av免费高清密臂 | 丝袜美女在线观看 | 国产99在线免费 | 99精品视频免费在线观看 | 激情视频区 | 亚洲日本色 | 日韩午夜精品福利 | 在线视频在线观看 | 国产中文字幕在线视频 | 丁香狠狠 | 国产精品一区二区三区在线播放 | 麻豆国产露脸在线观看 | 在线观看岛国 | 日日草天天干 | 成人h视频在线 | 米奇狠狠狠888 | 中文字幕乱码电影 | 最新高清无码专区 | 午夜免费久久看 | 久久综合狠狠综合久久综合88 | 国产专区一 | 欧美久久久久 | 成人免费视频播放 | 97精品在线观看 | 欧美成人xxxxx| 九九免费观看全部免费视频 | www久草 | 久久久久久久久毛片精品 | 亚洲aⅴ一区二区三区 | 国产精品久久久亚洲 | 精品播放 | 国产精品高潮呻吟久久久久 | 最新国产精品亚洲 | 毛片网在线播放 | 午夜三级在线 | 亚洲一区二区视频在线 | 青青河边草观看完整版高清 | 午夜精品久久久久久久久久久久久久 | 日本xxxx.com | 狠狠躁夜夜躁人人爽超碰91 | 日韩欧美在线第一页 | 国产资源在线播放 | 免费裸体视频网 | 国产精品一区二区美女视频免费看 | 日韩在线观看免费 | 99一区二区三区 | 久草在在线视频 | 国产成人在线看 | 国产一区二区观看 | 免费看av片网站 | 91网页版免费观看 | 亚洲经典视频 | 四虎国产精品永久在线国在线 | 少妇bbr搡bbb搡bbb | 亚洲最新av网站 | 一级成人免费视频 | 91成人精品在线 | 伊人黄 | 欧美日韩免费在线观看视频 | av不卡在线看 | 日韩精品一区二区免费视频 | 2021国产精品视频 | 国产一区二区高清视频 | 日韩在线观看中文字幕 | 国产原创在线视频 | 国产一区二区三区免费视频 | 日韩中出在线 | 嫩小bbbb摸bbb摸bbb | 黄色小视频在线观看免费 | 久久久精品国产一区二区 | 91免费看黄色| 国产亚洲精品久久久久久久久久久久 | a天堂一码二码专区 | a在线播放 | 在线观看成人国产 | 伊人六月 | www.色午夜 | 一级黄色片在线免费看 | 人人爽网站 | 国产成人精品一区二区三区福利 | 国产中文欧美日韩在线 | 亚洲精品色| 97电影在线 | 91久久精品一区二区三区 | 五月天久久综合网 | 麻豆免费视频 | 国内精品久久久久久久影视麻豆 | 超碰电影在线观看 | 欧美精品免费一区二区 | 日韩极品在线 | 国产精品久久9 | 99视频一区 | 国产成人福利在线观看 | 天天躁日日躁狠狠躁av中文 | 国产婷婷视频在线 | 在线亚洲激情 | 成人一区二区在线 | 国产午夜精品在线 | 欧美一二三专区 | 91香蕉视频在线下载 | 国产精品免费一区二区三区在线观看 | 精品xxx| 国产二区精品 | 国产精品第一页在线 | 一级片免费观看视频 | 天天操天天爽天天干 | 成年人视频免费在线播放 | 一区二区三区四区精品视频 | 国产剧情一区二区在线观看 | 日本公妇在线观看 | 久久久精品久久 | 欧美精品亚洲精品日韩精品 | 中文字幕一区二区三区乱码不卡 | 九草在线观看 | 国产一区二区电影在线观看 | 在线 视频 一区二区 | 九九av | 色综合久久精品 | 91精品国自产在线观看 | 成人av影院在线观看 | 人人添人人澡 | 日本xxxx.com | 亚洲综合小说电影qvod | 97国产精品亚洲精品 | 国产亚洲精品久 | 久久国产精品视频观看 | 欧美一级看片 | 在线免费观看麻豆视频 | 久久人人爽人人人人片 | 日本论理电影 | 久久av影视 | 99久久这里有精品 | 国产在线免费观看 | 国产在线国偷精品产拍 | 日韩欧美综合 | 色婷婷在线视频 | 97超碰色| 西西4444www大胆无视频 | 九九免费在线视频 | 国产成人精品久久二区二区 | 激情在线网站 | 五月婷婷婷婷婷 | 精品国产欧美一区二区三区不卡 | 欧美a级在线 |