Нарисовать изображение в виде трапеции в Java

У меня есть требование нарисовать png/jpg в форме трапеции. .Например: высота постепенно уменьшается по оси X. Я не мог найти API для этого, я вижу, что есть API AffineTransform, который может делать такие виды, но не мог понять, можно ли достичь трапеции. заранее спасибо за помощь

Я пробовал что-то в этом роде,

            Image image = imageIcon.getImage();
            Graphics2D g2 = (Graphics2D) g;
            AffineTransform saveXform = g2.getTransform();
            AffineTransform toCenterAt = new AffineTransform();
            //toCenterAt.concatenate(toCenterAt);
            toCenterAt.translate(-(image.getWidth(null)/2), -(image.getHeight(null)/2));
            //toCenterAt.setToRotation(5,4,4,4);
            toCenterAt.scale(0.1, 1);


            g2.transform(toCenterAt);

            g2.drawImage(image, 200,200, null);

            g2.setTransform(saveXform);

person Ravisha    schedule 21.12.2015    source источник
comment
Что вы пробовали до сих пор? Пожалуйста, отредактируйте свой вопрос!   -  person jogo    schedule 21.12.2015
comment
Вы можете взглянуть на методы AffineTransforms shear   -  person MadProgrammer    schedule 21.12.2015
comment
(также @MadProgrammer) В Аффинное преобразование параллельные линии остаются параллельными. Таким образом, невозможно создать (нетривиальную) трапециевидную форму из прямоугольника с помощью аффинного преобразования. Есть решения, т.е. как это общее искажение изображения на основе 4 угловых точек, которое я создал некоторое время назад , но обратите внимание, что это было лишь небольшим доказательством концепции. Для хорошей производительности более подходящим может быть какой-нибудь игровой движок (с базовым OpenGL).   -  person Marco13    schedule 21.12.2015