public Matrix getMatrixForRepeater(float amount) {
    PointF position = this.position == null ? null : this.position.getValue();
    ScaleXY scale = this.scale == null ? null : this.scale.getValue();

    matrix.reset();
    if (position != null) {
      matrix.preTranslate(position.x * amount, position.y * amount);
    }
    if (scale != null) {
      matrix.preScale(
          (float) Math.pow(scale.getScaleX(), amount),
          (float) Math.pow(scale.getScaleY(), amount));
    }
    if (this.rotation != null) {
      float rotation = this.rotation.getValue();
      PointF anchorPoint = this.anchorPoint == null ? null : this.anchorPoint.getValue();
      matrix.preRotate(rotation * amount, anchorPoint == null ? 0f : anchorPoint.x, anchorPoint == null ? 0f : anchorPoint.y);
    }

    return matrix;
  }
public Matrix getMatrixForRepeater ( float amount ) { PointF position = this . position == null ? null : this . position . getValue ( ) ; ScaleXY scale = this . scale == null ? null : this . scale . getValue ( ) ; matrix . reset ( ) ; if ( position != null ) { matrix . preTranslate ( position . x * amount , position . y * amount ) ; } if ( scale != null ) { matrix . preScale ( ( float ) Math . pow ( scale . getScaleX ( ) , amount ) , ( float ) Math . pow ( scale . getScaleY ( ) , amount ) ) ; } if ( this . rotation != null ) { float rotation = this . rotation . getValue ( ) ; PointF anchorPoint = this . anchorPoint == null ? null : this . anchorPoint . getValue ( ) ; matrix . preRotate ( rotation * amount , anchorPoint == null ? 0f : anchorPoint . x , anchorPoint == null ? 0f : anchorPoint . y ) ; } return matrix ; }
TODO: see if we can use this for the main {@link #getMatrix()} method.