相关疑难解决方法(0)

创建变换以从一个矩形映射到另一个矩形?

创建AffineTransform哪个地图坐标从一个矩形到另一个矩形(给出浮点/双矩形)的最简单方法是什么?

更新1

矩形可以完全不同.例如[(0,0) - (1,1)]和[(150,-14) - ( - 1000,-14.1)].转型应该统一转变.例如,矩形角应该一对一转换.例如,坐标(0,0)应转向(150,-14).

更新2

我需要AffineTransform对象,而不仅仅是计算.因为我想将它应用于Graphics对象.此外,我想以简单变换的一些连接的形式.

更新3

以下3项测试都失败了:

public class RectangleTransformTest {

    private static final double delta = 0.001;

    Rectangle2D r1 = new Rectangle2D.Double(-1, 0, 2, 0.01);
    Rectangle2D r2 = new Rectangle2D.Double(10, 20, 400, 300);

    AffineTransform t;

    Point2D src;
    Point2D dst1, dst2;

    @Test
    public void test1() {

        t = new AffineTransform();
        t.translate(+r2.getMinX()-r1.getMinX(), +r2.getMinY()-r1.getMinY());
        t.scale(r2.getWidth()/r1.getWidth(), r2.getHeight()/r1.getHeight());

    }

    @Test
    public void test2() {

        t = new AffineTransform();

        t.scale(r2.getWidth()/r1.getWidth(), r2.getHeight()/r1.getHeight());
        t.translate(+r2.getMinX()-r1.getMinX(), +r2.getMinY()-r1.getMinY()); …
Run Code Online (Sandbox Code Playgroud)

java transformation awt rectangles affinetransform

8
推荐指数
1
解决办法
2085
查看次数

标签 统计

affinetransform ×1

awt ×1

java ×1

rectangles ×1

transformation ×1