Class TranslateFlipContext

  • All Implemented Interfaces:
    java.io.Serializable, ProjectionContext

    public class TranslateFlipContext
    extends ReparentContext
    A ProjectionContext that translates and optionaly flips features.

    Use this to 'reverse complement' a feature hierachy, or just to shift it sideways a bit.

    If the flipping mode is dissabled, then all translated features are projected as having locations equivalent to feat.getLocation().translate(translation). If the flipping mode is enabled, then all features are flipped arround translation so that translation-i becomes translation+i.

    Author:
    Matthew Pocock
    See Also:
    Serialized Form
    • Constructor Detail

      • TranslateFlipContext

        public TranslateFlipContext​(FeatureHolder parent,
                                    FeatureHolder wrapped,
                                    int translate,
                                    boolean oppositeStrand)
        Create a new TranslateFlipContext with explicit translation and flip.

        Locations will be mapped according to the rules in @link ProjectionUtils.

        Parameters:
        parent - the parent to graft all projected features onto
        wrapped - the featurs to project
        translate - the translation
        oppositeStrand - wether or not to flip
      • TranslateFlipContext

        public TranslateFlipContext​(FeatureHolder parent,
                                    FeatureHolder wrapped,
                                    int min,
                                    int max)
        Create a new TranslateFlipContext that flips all featurs arround min and max.

        A Location at exactly min will become one at max, and a Location at exactly max will become one at min.

        This is equivalent to TranslateFlipContext(parent, wrapped, min + max, true) and is provided to make client code more readable.

        Parameters:
        parent - the parent to graft all projected features ont
        wrapped - the features to project
        min - the lower position
        max - the higher position
      • TranslateFlipContext

        public TranslateFlipContext​(FeatureHolder parent,
                                    FeatureHolder wrapped,
                                    int translation)
        Create a new TranslateFlipContext with translation only.

        This is equivalent to TranslateFlipContext(parent, wrapped, translation, false) and is provided to make client code more readable.

        Parameters:
        parent - the parent to graft all projected features onto
        wrapped - the featurs to project
        translation - the translation