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=a01654ce2a6a4bb7e5ed4f5c04845eb525662fcd;hb=4d3f88eb0edb95b8bc7dedb136f0048ff3918506;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..a01654ce2 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,9 +12,12 @@ package org.simantics.scenegraph.g2d; import java.awt.Component; +import java.awt.geom.AffineTransform; import java.awt.geom.Rectangle2D; import java.util.Map; +import org.simantics.scenegraph.g2d.color.ColorFilter; + /** * @author Tuukka Lehtonen * See {@link G2DPDFRenderingHints} @@ -105,4 +108,30 @@ 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; + } + }; + + /* + * A rendering hint for storing the active ColorFilter which can be used e.g. + * for coloring BufferedImages. + */ + public static final Key KEY_COLOR_FILTER = new Key(2007) { + @Override + public boolean isCompatibleValue(Object val) { + return val instanceof ColorFilter || val == null; + } + }; + } \ No newline at end of file