/** * */ package mpicbg.trakem2.align; import ini.trakem2.display.Patch; import java.awt.geom.AffineTransform; import mpicbg.models.TranslationModel2D; public class TranslationTile2D extends AbstractAffineTile2D< mpicbg.models.TranslationModel2D > { public TranslationTile2D( final mpicbg.models.TranslationModel2D model, final Patch patch ) { super( model, patch ); } public TranslationTile2D( final Patch patch ) { this( new TranslationModel2D(), patch ); } /** * Initialize the model with the parameters of the {@link AffineTransform} * of the {@link Patch}. The {@link AffineTransform} should be a * Translation, otherwise the results will not be what you might expect. * This means, that: * <pre> * {@link AffineTransform#getScaleX()} == {@link AffineTransform#getScaleY()} == 1 * {@link AffineTransform#getShearX()} == {@link AffineTransform#getShearY()} == 0 * </pre> */ @Override protected void initModel() { final AffineTransform a = patch.getAffineTransform(); model.set( a.getTranslateX(), a.getTranslateY() ); } }