【问题标题】:Apply AffineTransform to TexturePaint将 AffineTransform 应用于 TexturePaint
【发布时间】:2015-09-15 04:28:14
【问题描述】:

我想知道如何在 java 中使用图像旋转纹理绘制。

通常旋转 Graphics2D g2 对象很容易,但我不想这样做。我也不想旋转我的形状并做一些疯狂的旋转缩放等。当绘画本身被缩放、旋转等时,通常很容易进行绘图和填充。

我也不想创建一个旋转的图像然后对其进行纹理绘制。

texturepaint 类中有一个 createContext,但我不知道如何使用它来旋转原始图像。

我希望你理解我所说的旋转纹理本身的意思:)?

谢谢。

编辑: 我在玩Java custom Paint implementation performance issue,但有一个我无法处理的问题。当开始平铺的位置有偏移时,它不会正确开始。

抱歉混淆了问题。

【问题讨论】:

    标签: java graphics textures


    【解决方案1】:

    我决定在变换画布之前创建第二个形状,然后将其旋转回来以匹配 trnsform 的倒数。

    这解决了我的问题。

    try {
        this.shape = new Path2D.Double(bx.createInverse().createTransformedShape(shape));
    } catch (NoninvertibleTransformException ex) {
    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 2013-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多