X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scenegraph%2Fsrc%2Forg%2Fsimantics%2Fscenegraph%2Fg2d%2FG2DRenderingHints.java;h=992213c4595f8dfa5f375af72b00750e00ce71bf;hp=ff68dac5a692829ad157dc4180091dd9a3abb31a;hb=ceff53434e48f94c5d84ce12f3b1e21cabda457b;hpb=9bf20adbd213c9dff8aee036f5c2e5cff9e37baa diff --git a/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DRenderingHints.java b/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DRenderingHints.java index ff68dac5a..992213c45 100644 --- a/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DRenderingHints.java +++ b/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DRenderingHints.java @@ -12,6 +12,7 @@ package org.simantics.scenegraph.g2d; import java.awt.Component; +import java.awt.geom.AffineTransform; import java.awt.geom.Rectangle2D; import java.util.Map; @@ -105,4 +106,19 @@ public final class G2DRenderingHints { } }; + /** + * The current Graphics2D AffineTransform for all nodes under the special + * spatialRoot : RTreeNode. + * + * This can be used to optimize the creation and of new AffineTransforms by + * not having to use Graphics2D.getTransform to retrieve the current + * transformation which always creates new instances. + */ + public static final Key KEY_TRANSFORM_UNDER_SPATIAL_ROOT = new Key(2006) { + @Override + public boolean isCompatibleValue(Object val) { + return val instanceof AffineTransform || val == null; + } + }; + } \ No newline at end of file