锘??xml version="1.0" encoding="utf-8" standalone="yes"?>伊在人亚洲香蕉精品区麻豆,亚洲成a人片77777老司机,亚洲精品制服丝袜四区http://www.tkk7.com/Pudgy/category/2630.html<SCRIPT>
var dict_width = 'auto'
var dict_height = '72px'
var dict_background = 'transparent'
var dict_border = '0px dotted #000000'
var dict_textColor = '#6FBC4C'
var dict_fontSize = '100%'
var dict_encoding = 'Utf-8'
</SCRIPT>
<SCRIPT src="http://livid.cn/services/fortune"></SCRIPT>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>zh-cnWed, 28 Feb 2007 15:41:24 GMTWed, 28 Feb 2007 15:41:24 GMT60- Rotate Classhttp://www.tkk7.com/Pudgy/articles/13703.htmlPudgy's WorldPudgy's WorldWed, 21 Sep 2005 23:26:00 GMThttp://www.tkk7.com/Pudgy/articles/13703.htmlhttp://www.tkk7.com/Pudgy/comments/13703.htmlhttp://www.tkk7.com/Pudgy/articles/13703.html#Feedback0http://www.tkk7.com/Pudgy/comments/commentRss/13703.htmlhttp://www.tkk7.com/Pudgy/services/trackbacks/13703.html聽
聽聽聽聽/**
聽聽聽聽聽*聽Constant聽to聽specify聽that聽the聽bounding聽box聽should聽be聽not聽be聽changed聽
聽聽聽聽聽*聽for聽any聽angle聽of聽rotation聽when聽creating聽the聽rotated聽image.聽聽This聽
聽聽聽聽聽*聽means聽the聽returned聽image聽will聽be聽the聽same聽size聽as聽the聽given聽image.聽聽
聽聽聽聽聽*聽Of聽course,聽that聽also聽means聽the聽corners聽of聽the聽image聽may聽be聽cut聽off.聽聽
聽聽聽聽聽*/
聽聽聽聽public聽static聽final聽int聽NO_BOUNDING_BOX聽=聽0;
聽
聽聽聽聽/**
聽聽聽聽聽*聽Constant聽to聽specify聽that聽the聽exact聽bounding聽box聽should聽be聽used聽for聽
聽聽聽聽聽*聽the聽specified聽angle聽of聽rotation聽when聽creating聽the聽rotated聽image.聽聽
聽聽聽聽聽*聽This聽is聽the聽default聽option.聽聽When聽used,聽the聽rotated聽image聽may聽be聽
聽聽聽聽聽*聽larger聽then聽the聽source聽image,聽but聽no聽larger聽then聽needed聽to聽fit聽the聽
聽聽聽聽聽*聽rotated聽image聽exactly.聽聽Therefore,聽rotating聽the聽same聽image聽to聽various聽
聽聽聽聽聽*聽angles聽may聽result聽in聽varying聽image聽sizes.聽聽
聽聽聽聽聽*/
聽聽聽聽public聽static聽final聽int聽EXACT_BOUNDING_BOX聽=聽1;
聽
聽聽聽聽/**
聽聽聽聽聽*聽Constant聽to聽specify聽that聽the聽largest聽bounding聽box聽should聽be聽used聽when聽
聽聽聽聽聽*聽creating聽the聽rotated聽image.聽聽When聽used,聽the聽rotated聽image聽will聽be聽
聽聽聽聽聽*聽larger聽then聽the聽source聽image,聽but聽all聽rotated聽images聽of聽that聽same聽
聽聽聽聽聽*聽source聽image聽will聽be聽the聽same聽size,聽regardless聽of聽the聽angle聽of聽
聽聽聽聽聽*聽rotation.聽聽This聽may聽result聽in聽significant聽"empty聽space"聽between聽the聽
聽聽聽聽聽*聽edge聽of聽the聽returned聽image聽and聽the聽actual聽drawn聽pixel聽areas.聽聽
聽聽聽聽聽*/
聽聽聽聽public聽static聽final聽int聽LARGEST_BOUNDING_BOX聽=聽2;
聽聽聽聽/**
聽聽聽聽聽*聽Rotates聽the聽specified聽image聽the聽specified聽number聽of聽degrees.聽聽The聽
聽聽聽聽聽*聽rotation聽is聽performed聽around聽the聽center聽point聽of聽the聽image.聽聽
聽聽聽聽聽*聽
聽聽聽聽聽*聽@param聽聽img聽聽聽聽聽聽聽聽聽the聽image聽to聽rotate
聽聽聽聽聽*聽@param聽聽degrees聽聽聽聽聽the聽degrees聽to聽rotate
聽聽聽聽聽*聽@param聽聽bbm聽聽聽聽聽聽聽聽聽the聽bounding聽box聽mode,聽default聽is聽EXACT_BOUNDING_BOX
聽聽聽聽聽*聽@param聽聽background聽聽the聽background聽paint聽(texture,聽color聽or聽gradient),聽
聽聽聽聽聽*聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽can聽be聽null
聽聽聽聽聽*聽@return聽聽the聽image
聽聽聽聽聽*聽@see聽聽#NO_BOUNDING_BOX
聽聽聽聽聽*聽@see聽聽#EXACT_BOUNDING_BOX
聽聽聽聽聽*聽@see聽聽#LARGEST_BOUNDING_BOX
聽聽聽聽聽*/
聽聽聽聽public聽static聽BufferedImage聽rotateDegrees(Image聽img,聽double聽degrees,聽int聽bbm,聽Paint聽background)聽{
聽聽聽聽聽聽聽聽return聽rotateRadians(img,聽Math.toRadians(degrees),聽bbm,聽background);
聽聽聽聽}
聽
聽聽聽聽/**
聽聽聽聽聽*聽Rotates聽the聽specified聽image聽the聽specified聽number聽of聽radians.聽聽The聽
聽聽聽聽聽*聽rotation聽is聽performed聽around聽the聽center聽point聽of聽the聽image.聽聽This聽
聽聽聽聽聽*聽method聽is聽provided聽for聽convenience聽of聽applications聽using聽radians.聽聽
聽聽聽聽聽*聽For聽most聽people,聽degrees聽is聽simpler聽to聽use.聽聽
聽聽聽聽聽*聽
聽聽聽聽聽*聽@param聽聽img聽聽聽聽聽聽聽聽聽the聽image聽to聽rotate
聽聽聽聽聽*聽@param聽聽radians聽聽聽聽聽the聽radians聽to聽rotate
聽聽聽聽聽*聽@param聽聽bbm聽聽聽聽聽聽聽聽聽the聽bounding聽box聽mode,聽default聽is聽EXACT_BOUNDING_BOX
聽聽聽聽聽*聽@param聽聽background聽聽the聽background聽paint聽(texture,聽color聽or聽gradient),聽
聽聽聽聽聽*聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽can聽be聽null
聽聽聽聽聽*聽@return聽聽the聽image
聽聽聽聽聽*聽@see聽聽#NO_BOUNDING_BOX
聽聽聽聽聽*聽@see聽聽#EXACT_BOUNDING_BOX
聽聽聽聽聽*聽@see聽聽#LARGEST_BOUNDING_BOX
聽聽聽聽聽*/
聽聽聽聽public聽static聽BufferedImage聽rotateRadians(Image聽img,聽double聽radians,聽int聽bbm,聽Paint聽background)聽{
聽聽聽聽聽聽聽聽//聽get聽the聽original聽image's聽width聽and聽height
聽聽聽聽聽聽聽聽int聽iw聽=聽img.getWidth(null);
聽聽聽聽聽聽聽聽int聽ih聽=聽img.getHeight(null);
聽聽聽聽聽聽聽聽//聽calculate聽the聽new聽image's聽size聽based聽on聽bounding聽box聽mode
聽聽聽聽聽聽聽聽Dimension聽dim;
聽聽聽聽聽聽聽聽if(bbm聽==聽NO_BOUNDING_BOX)聽{
聽聽聽聽聽聽聽聽聽聽聽聽dim聽=聽new聽Dimension(iw,聽ih);
聽聽聽聽聽聽聽聽}聽else聽if(bbm聽==聽LARGEST_BOUNDING_BOX)聽{
聽聽聽聽聽聽聽聽聽聽聽聽dim聽=聽getLargestBoundingBox(iw,聽ih);
聽聽聽聽聽聽聽聽}聽else聽{聽//聽EXACT_BOUNDING_BOX
聽聽聽聽聽聽聽聽聽聽聽聽dim聽=聽getBoundingBox(iw,聽ih,聽Math.toDegrees(radians));
聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽//聽get聽the聽new聽image's聽width聽and聽height
聽聽聽聽聽聽聽聽int聽w聽=聽dim.width;
聽聽聽聽聽聽聽聽int聽h聽=聽dim.height;
聽聽聽聽聽聽聽聽//聽get聽the聽location聽to聽draw聽the聽original聽image聽on聽the聽new聽image
聽聽聽聽聽聽聽聽int聽x聽=聽(w/2)-(iw/2);
聽聽聽聽聽聽聽聽int聽y聽=聽(h/2)-(ih/2);
聽聽聽聽聽聽聽聽//聽need聽to聽copy聽the聽given聽image聽to聽a聽new聽BufferedImage聽because聽
聽聽聽聽聽聽聽聽//聽it聽is,聽in聽most聽cases,聽going聽to聽be聽a聽larger聽image聽so聽it聽
聽聽聽聽聽聽聽聽//聽needs聽to聽be聽drawn聽centered聽on聽the聽larger聽image
聽聽聽聽聽聽聽聽BufferedImage聽bi聽=聽new聽BufferedImage(w,聽h,聽BufferedImage.TYPE_INT_ARGB);
聽聽聽聽聽聽聽聽Graphics2D聽g2d聽=聽bi.createGraphics();
聽聽聽聽聽聽聽聽//聽set聽some聽rendering聽hints聽for聽better聽looking聽images
聽聽聽聽聽聽聽聽g2d.setRenderingHints(renderingHints);
聽聽聽聽聽聽聽聽//聽draw聽the聽background聽paint,聽if聽necessary
聽聽聽聽聽聽聽聽if(background聽!=聽null)聽{
聽聽聽聽聽聽聽聽聽聽聽聽g2d.setPaint(background);
聽聽聽聽聽聽聽聽聽聽聽聽g2d.fillRect(0,聽0,聽w,聽h);
聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽//聽if聽not聽rotating,聽just聽draw聽it聽normally,聽else聽create聽a聽transform
聽聽聽聽聽聽聽聽if(radians聽==聽0.0)聽{
聽聽聽聽聽聽聽聽聽聽聽聽g2d.drawImage(img,聽x,聽y,聽iw,聽ih,聽null);
聽聽聽聽聽聽聽聽}聽else聽{
聽聽聽聽聽聽聽聽聽聽聽聽g2d.rotate(radians,聽w/2,聽h/2);
聽聽聽聽聽聽聽聽聽聽聽聽g2d.translate(x,聽y);
聽聽聽聽聽聽聽聽聽聽聽聽g2d.drawImage(img,聽0,聽0,聽iw,聽ih,聽null);
聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽g2d.dispose();
聽聽聽聽聽聽聽聽return聽bi;
聽聽聽聽}
聽
聽聽聽聽/**
聽聽聽聽聽*聽Gets聽the聽largest聽bounding聽box聽size聽that聽can聽hold聽an聽image聽of聽the聽
聽聽聽聽聽*聽specified聽size聽at聽any聽angle聽of聽rotation.聽聽
聽聽聽聽聽*聽
聽聽聽聽聽*聽@param聽聽width聽聽聽the聽image聽width
聽聽聽聽聽*聽@param聽聽height聽聽the聽image聽height
聽聽聽聽聽*聽@return聽聽the聽bounding聽box聽size
聽聽聽聽聽*/
聽聽聽聽public聽static聽Dimension聽getLargestBoundingBox(int聽width,聽int聽height)聽{
聽聽聽聽聽聽聽聽//聽The聽largest聽bounding聽box聽is聽the聽largest聽area聽needed聽to聽fit聽the聽
聽聽聽聽聽聽聽聽//聽specified聽image聽at聽any聽angle聽or聽rotation.聽聽This聽is聽simpler聽then聽
聽聽聽聽聽聽聽聽//聽getting聽the聽bounding聽box聽for聽a聽given聽angle聽because聽the聽largest聽
聽聽聽聽聽聽聽聽//聽box聽will聽put聽the聽corner聽of聽the聽image聽box聽directly聽along聽the聽
聽聽聽聽聽聽聽聽//聽vertical聽or聽horizontal聽axis聽from聽the聽image聽center聽point.聽聽The聽
聽聽聽聽聽聽聽聽//聽distance聽between聽the聽image聽rectangle's聽center聽and聽any聽corner聽
聽聽聽聽聽聽聽聽//聽is聽the聽hypotenuse聽of聽a聽right聽triangle聽who's聽other聽sides聽are聽
聽聽聽聽聽聽聽聽//聽half聽the聽width聽(a)聽and聽half聽the聽height聽(b)聽of聽the聽rectangle.聽聽
聽聽聽聽聽聽聽聽//聽A聽little聽a^2聽+聽b^2聽=聽c^2聽calculation聽and聽we聽get聽the聽length聽of聽
聽聽聽聽聽聽聽聽//聽the聽hypotenuse.聽聽Double聽that聽to聽get聽a聽square聽within聽which聽the聽
聽聽聽聽聽聽聽聽//聽image聽can聽be聽rotated聽at聽any聽angle聽without聽clipping聽the聽image.聽聽
聽聽聽聽聽聽聽聽double聽a聽=聽(double)width聽/聽2.0;
聽聽聽聽聽聽聽聽double聽b聽=聽(double)height聽/聽2.0;
聽聽聽聽聽聽聽聽//聽use聽Math.ceil()聽to聽round聽up聽to聽an聽int聽value
聽聽聽聽聽聽聽聽int聽c聽=聽(int)Math.ceil(Math.sqrt((a聽*聽a)聽+聽(b聽*聽b))聽*聽2.0);
聽聽聽聽聽聽聽聽return聽new聽Dimension(c,聽c);
聽聽聽聽}
聽
聽聽聽聽/**
聽聽聽聽聽*聽Gets聽the聽optimal/smallest聽bounding聽box聽size聽that聽can聽hold聽an聽image聽of聽
聽聽聽聽聽*聽the聽specified聽size聽at聽the聽specified聽angle聽of聽rotation.聽聽
聽聽聽聽聽*聽
聽聽聽聽聽*聽@param聽聽width聽聽聽the聽image聽width
聽聽聽聽聽*聽@param聽聽height聽聽the聽image聽height
聽聽聽聽聽*聽@return聽聽the聽bounding聽box聽size
聽聽聽聽聽*/
聽聽聽聽public聽static聽Dimension聽getBoundingBox(int聽width,聽int聽height,聽double聽degrees)聽{
聽聽聽聽聽聽聽聽degrees聽=聽normalizeDegrees(degrees);
聽聽聽聽聽聽聽聽//聽if聽no聽rotation聽or聽180聽degrees,聽the聽size聽won't聽change
聽聽聽聽聽聽聽聽if(degrees聽==聽0.0聽||聽degrees聽==聽180.0)聽{
聽聽聽聽聽聽聽聽聽聽聽聽return聽new聽Dimension(width,聽height);
聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽//聽if聽90聽or聽270聽(quarter聽or聽3-quarter聽rotations)聽the聽width聽becomes聽
聽聽聽聽聽聽聽聽//聽the聽height,聽and聽vice聽versa
聽聽聽聽聽聽聽聽if(degrees聽==聽90.0聽||聽degrees聽==聽270.0)聽{
聽聽聽聽聽聽聽聽聽聽聽聽return聽new聽Dimension(height,聽width);
聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽//聽for聽any聽other聽rotation,聽we聽need聽to聽do聽some聽trigonometry,聽
聽聽聽聽聽聽聽聽//聽derived聽from聽description聽found聽at:聽聽
聽聽聽聽聽聽聽聽//聽http://www.codeproject.com/csharp/rotateimage.asp
聽聽聽聽聽聽聽聽double聽radians聽=聽Math.toRadians(degrees);
聽聽聽聽聽聽聽聽double聽aW聽=聽Math.abs(Math.cos(radians)聽*聽width);
聽聽聽聽聽聽聽聽double聽oW聽=聽Math.abs(Math.sin(radians)聽*聽width);
聽聽聽聽聽聽聽聽double聽aH聽=聽Math.abs(Math.cos(radians)聽*聽height);
聽聽聽聽聽聽聽聽double聽oH聽=聽Math.abs(Math.sin(radians)聽*聽height);
聽聽聽聽聽聽聽聽//聽use聽Math.ceil()聽to聽round聽up聽to聽an聽int聽value
聽聽聽聽聽聽聽聽int聽w聽=聽(int)Math.ceil(aW聽+聽oH);
聽聽聽聽聽聽聽聽int聽h聽=聽(int)Math.ceil(oW聽+聽aH);
聽聽聽聽聽聽聽聽return聽new聽Dimension(w,聽h);
聽聽聽聽}

]]>- Rotate Image 45 Degreeshttp://www.tkk7.com/Pudgy/articles/13702.htmlPudgy's WorldPudgy's WorldWed, 21 Sep 2005 23:23:00 GMThttp://www.tkk7.com/Pudgy/articles/13702.htmlhttp://www.tkk7.com/Pudgy/comments/13702.htmlhttp://www.tkk7.com/Pudgy/articles/13702.html#Feedback0http://www.tkk7.com/Pudgy/comments/commentRss/13702.htmlhttp://www.tkk7.com/Pudgy/services/trackbacks/13702.html聽Rotate Image 45 Degrees
聽
/*
Java聽Media聽APIs:聽Cross-Platform聽Imaging,聽Media聽and聽Visualization
Alejandro聽Terrazas
Sams,聽Published聽November聽2002,聽
ISBN聽0672320940
*/
import聽java.awt.Graphics;
import聽java.awt.Graphics2D;
import聽java.awt.Image;
import聽java.awt.Insets;
import聽java.awt.MediaTracker;
import聽java.awt.Toolkit;
import聽java.awt.geom.AffineTransform;
import聽java.awt.geom.Point2D;
import聽java.awt.image.AffineTransformOp;
import聽java.awt.image.BufferedImage;
import聽java.awt.image.BufferedImageOp;
import聽javax.swing.JFrame;
/**
聽*聽RotateImage45Degrees.java聽-聽1.聽scales聽an聽image's聽dimensions聽by聽a聽factor聽of
聽*聽two聽2.聽rotates聽it聽45聽degrees聽around聽the聽image聽center聽3.聽displays聽the
聽*聽processed聽image
聽*/
public聽class聽RotateImage45Degrees聽extends聽JFrame聽{
聽聽private聽Image聽inputImage;
聽聽private聽BufferedImage聽sourceBI;
聽聽private聽BufferedImage聽destinationBI聽=聽null;
聽聽private聽Insets聽frameInsets;
聽聽private聽boolean聽sizeSet聽=聽false;
聽聽public聽RotateImage45Degrees(String聽imageFile)聽{
聽聽聽聽addNotify();
聽聽聽聽frameInsets聽=聽getInsets();
聽聽聽聽inputImage聽=聽Toolkit.getDefaultToolkit().getImage(imageFile);
聽聽聽聽MediaTracker聽mt聽=聽new聽MediaTracker(this);
聽聽聽聽mt.addImage(inputImage,聽0);
聽聽聽聽try聽{
聽聽聽聽聽聽mt.waitForID(0);
聽聽聽聽}聽catch聽(InterruptedException聽ie)聽{
聽聽聽聽}
聽聽聽聽sourceBI聽=聽new聽BufferedImage(inputImage.getWidth(null),聽inputImage
聽聽聽聽聽聽聽聽.getHeight(null),聽BufferedImage.TYPE_INT_ARGB);
聽聽聽聽Graphics2D聽g聽=聽(Graphics2D)聽sourceBI.getGraphics();
聽聽聽聽g.drawImage(inputImage,聽0,聽0,聽null);
聽聽聽聽AffineTransform聽at聽=聽new聽AffineTransform();
聽聽聽聽//聽scale聽image
聽聽聽聽at.scale(2.0,聽2.0);
聽聽聽聽//聽rotate聽45聽degrees聽around聽image聽center
聽聽聽聽at.rotate(45.0聽*聽Math.PI聽/聽180.0,聽sourceBI.getWidth()聽/聽2.0,聽sourceBI
聽聽聽聽聽聽聽聽.getHeight()聽/聽2.0);
聽聽聽聽/*
聽聽聽聽聽*聽translate聽to聽make聽sure聽the聽rotation聽doesn't聽cut聽off聽any聽image聽data
聽聽聽聽聽*/
聽聽聽聽AffineTransform聽translationTransform;
聽聽聽聽translationTransform聽=聽findTranslation(at,聽sourceBI);
聽聽聽聽at.preConcatenate(translationTransform);
聽聽聽聽//聽instantiate聽and聽apply聽affine聽transformation聽filter
聽聽聽聽BufferedImageOp聽bio;
聽聽聽聽bio聽=聽new聽AffineTransformOp(at,聽AffineTransformOp.TYPE_BILINEAR);
聽聽聽聽destinationBI聽=聽bio.filter(sourceBI,聽null);
聽聽聽聽int聽frameInsetsHorizontal聽=聽frameInsets.right聽+聽frameInsets.left;
聽聽聽聽int聽frameInsetsVertical聽=聽frameInsets.top聽+聽frameInsets.bottom;
聽聽聽聽setSize(destinationBI.getWidth()聽+聽frameInsetsHorizontal,聽destinationBI
聽聽聽聽聽聽聽聽.getHeight()
聽聽聽聽聽聽聽聽+聽frameInsetsVertical);
聽聽聽聽show();
聽聽}
聽聽/*
聽聽聽*聽find聽proper聽translations聽to聽keep聽rotated聽image聽correctly聽displayed
聽聽聽*/
聽聽private聽AffineTransform聽findTranslation(AffineTransform聽at,聽BufferedImage聽bi)聽{
聽聽聽聽Point2D聽p2din,聽p2dout;
聽聽聽聽p2din聽=聽new聽Point2D.Double(0.0,聽0.0);
聽聽聽聽p2dout聽=聽at.transform(p2din,聽null);
聽聽聽聽double聽ytrans聽=聽p2dout.getY();
聽聽聽聽p2din聽=聽new聽Point2D.Double(0,聽bi.getHeight());
聽聽聽聽p2dout聽=聽at.transform(p2din,聽null);
聽聽聽聽double聽xtrans聽=聽p2dout.getX();
聽聽聽聽AffineTransform聽tat聽=聽new聽AffineTransform();
聽聽聽聽tat.translate(-xtrans,聽-ytrans);
聽聽聽聽return聽tat;
聽聽}
聽聽public聽void聽paint(Graphics聽g)聽{
聽聽聽聽if聽(destinationBI聽!=聽null)
聽聽聽聽聽聽g.drawImage(destinationBI,聽frameInsets.left,聽frameInsets.top,聽this);
聽聽}
聽聽public聽static聽void聽main(String[]聽args)聽{
聽聽聽聽new聽RotateImage45Degrees("fruits.png");
聽聽}
}
聽

]]> - Hello, everyone!!http://www.tkk7.com/Pudgy/articles/9622.htmlPudgy's WorldPudgy's WorldMon, 08 Aug 2005 17:12:00 GMThttp://www.tkk7.com/Pudgy/articles/9622.htmlhttp://www.tkk7.com/Pudgy/comments/9622.htmlhttp://www.tkk7.com/Pudgy/articles/9622.html#Feedback0http://www.tkk7.com/Pudgy/comments/commentRss/9622.htmlhttp://www.tkk7.com/Pudgy/services/trackbacks/9622.htmlThanks

]]>
主站蜘蛛池模板:
久久久久久亚洲AV无码专区|
美女被cao免费看在线看网站|
国产男女猛烈无遮挡免费视频网站
|
黄色成人免费网站|
亚洲精华液一二三产区|
日韩免费码中文在线观看|
国产成人亚洲综合在线|
青青草国产免费久久久91|
亚洲日韩精品无码专区加勒比☆
|
国产免费区在线观看十分钟|
亚洲第一黄片大全|
香蕉国产在线观看免费|
亚洲精品午夜无码电影网|
久久精品无码精品免费专区|
亚洲综合久久久久久中文字幕|
无遮免费网站在线入口|
亚洲a无码综合a国产av中文|
国产va在线观看免费|
久久久亚洲裙底偷窥综合|
一区二区三区AV高清免费波多|
精品国产亚洲男女在线线电影|
国产成人精品日本亚洲专区6|
精品免费久久久久国产一区|
亚洲成av人在线视|
美女啪啪网站又黄又免费|
16女性下面无遮挡免费|
国产成人精品日本亚洲11|
免费jjzz在线播放国产|
免费91麻豆精品国产自产在线观看
|
国产国拍亚洲精品福利|
免费无码成人AV在线播放不卡|
亚洲经典在线中文字幕|
午夜免费福利影院|
99re6在线精品免费观看|
gogo全球高清大胆亚洲|
曰批全过程免费视频在线观看无码
|
sss日本免费完整版在线观看|
热99RE久久精品这里都是精品免费|
亚洲AV无码一区二区乱子伦
|
亚洲成a人不卡在线观看|
国产成人免费高清在线观看|