【问题标题】:multiple grapics2d objects多个 Graphics2d 对象
【发布时间】:2013-03-06 10:41:48
【问题描述】:

我需要对不同的图形对象(例如线条)应用不同的仿射变换,是否适合使用多个 Graphics2D 对象来执行此任务? 代码:

   Graphics2D g2seconds = (Graphics2D) g; // g - Graphics class
   Graphics2D g2minutes = (Graphics2D) g;

   AffineTransform atseconds =  
           AffineTransform.getRotateInstance(Math.PI/30*s, 0, 0);//s = Time in seconds
   AffineTransform atminutes =  
           AffineTransform.getRotateInstance(Math.PI/30*m, 0, 0);//m = Time in minutes

   g2seconds.setTransform(atseconds);
   g2seconds.drawLine(0, 0, 10, 10);

   g2minutes .setTransform(atminutes);
   g2minutes .drawLine(0, 0, 10, 10);

【问题讨论】:

  • 只需更改绘制它们之间的转换。为了尽快获得更好的帮助,请发帖SSCCE

标签: java awt java-2d affinetransform


【解决方案1】:

不,因为它们根本不是两个不同的对象,它们是对同一个对象的两个引用。

【讨论】:

    猜你喜欢
    • 2011-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-27
    • 1970-01-01
    相关资源
    最近更新 更多