锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品V欧洲精品V日韩精品,亚洲乱人伦精品图片,亚洲福利一区二区三区http://m.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://m.tkk7.com/Pudgy/articles/13703.htmlPudgy's WorldPudgy's WorldWed, 21 Sep 2005 23:26:00 GMThttp://m.tkk7.com/Pudgy/articles/13703.htmlhttp://m.tkk7.com/Pudgy/comments/13703.htmlhttp://m.tkk7.com/Pudgy/articles/13703.html#Feedback0http://m.tkk7.com/Pudgy/comments/commentRss/13703.htmlhttp://m.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://m.tkk7.com/Pudgy/articles/13702.htmlPudgy's WorldPudgy's WorldWed, 21 Sep 2005 23:23:00 GMThttp://m.tkk7.com/Pudgy/articles/13702.htmlhttp://m.tkk7.com/Pudgy/comments/13702.htmlhttp://m.tkk7.com/Pudgy/articles/13702.html#Feedback0http://m.tkk7.com/Pudgy/comments/commentRss/13702.htmlhttp://m.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://m.tkk7.com/Pudgy/articles/9622.htmlPudgy's WorldPudgy's WorldMon, 08 Aug 2005 17:12:00 GMThttp://m.tkk7.com/Pudgy/articles/9622.htmlhttp://m.tkk7.com/Pudgy/comments/9622.htmlhttp://m.tkk7.com/Pudgy/articles/9622.html#Feedback0http://m.tkk7.com/Pudgy/comments/commentRss/9622.htmlhttp://m.tkk7.com/Pudgy/services/trackbacks/9622.htmlThanks

]]>
主站蜘蛛池模板:
国产成人精品男人免费|
69成人免费视频|
国产偷窥女洗浴在线观看亚洲|
综合一区自拍亚洲综合图区|
免费a级毛片永久免费|
成人国产网站v片免费观看|
亚洲色欲久久久久综合网|
eeuss免费影院|
国产国拍精品亚洲AV片|
成人妇女免费播放久久久|
国产aⅴ无码专区亚洲av|
97在线视频免费播放|
亚洲av永久综合在线观看尤物|
毛片在线看免费版|
国产尤物在线视精品在亚洲|
mm1313亚洲精品国产|
a级成人免费毛片完整版|
亚洲婷婷天堂在线综合|
免费无遮挡无码视频网站|
日韩在线视频播放免费视频完整版|
亚洲精品成人久久久|
免费黄色电影在线观看|
亚洲国产成人久久99精品|
永久免费bbbbbb视频|
成人免费视频一区二区|
亚洲爆乳精品无码一区二区三区|
99久热只有精品视频免费看|
亚洲av永久无码精品三区在线4|
又爽又高潮的BB视频免费看|
99精品全国免费观看视频..|
亚洲jjzzjjzz在线观看|
亚洲天堂在线视频|
57pao一国产成永久免费|
成a人片亚洲日本久久|
亚洲av永久无码精品国产精品|
24小时日本在线www免费的|
v片免费在线观看|
亚洲熟妇无码爱v在线观看|
免费a级毛片在线观看|
免费人成在线观看网站品爱网|
亚洲精品无码永久在线观看男男|