X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.scenegraph%2Fsrc%2Forg%2Fsimantics%2Fscenegraph%2Fg2d%2FG2DRenderingHints.java;h=992213c4595f8dfa5f375af72b00750e00ce71bf;hb=e353ca45b2ad3ce36ea48336feca56e86ad0b089;hp=ff68dac5a692829ad157dc4180091dd9a3abb31a;hpb=0a40f3664e55387464c9490bbbcd563fddefd451;p=simantics%2Fplatform.git 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