Android Open Source - CampusUB1 Canvas Transformer Builder






From Project

Back to project page CampusUB1.

License

The source code is released under:

Apache License

If you think the Android project CampusUB1 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.slidingmenu.lib;
/*from   ww  w.  j  a  v a 2  s  . c o m*/
import android.graphics.Canvas;
import android.view.animation.Interpolator;

import com.slidingmenu.lib.SlidingMenu.CanvasTransformer;

public class CanvasTransformerBuilder {

  private CanvasTransformer mTrans;

  private static Interpolator lin = new Interpolator() {
    public float getInterpolation(float t) {
      return t;
    }
  };

  private void initTransformer() {
    if (mTrans == null)
      mTrans = new CanvasTransformer() {
      public void transformCanvas(Canvas canvas, float percentOpen) {  }
    };
  }

  public CanvasTransformer zoom(final int openedX, final int closedX, 
      final int openedY, final int closedY, 
      final int px, final int py) {
    return zoom(openedX, closedX, openedY, closedY, px, py, lin);
  }

  public CanvasTransformer zoom(final int openedX, final int closedX, 
      final int openedY, final int closedY,
      final int px, final int py, final Interpolator interp) {
    initTransformer();
    mTrans = new CanvasTransformer() {
      public void transformCanvas(Canvas canvas, float percentOpen) {
        mTrans.transformCanvas(canvas, percentOpen);
        float f = interp.getInterpolation(percentOpen);
        canvas.scale((openedX - closedX) * f + closedX,
            (openedY - closedY) * f + closedY, px, py);
      }      
    };
    return mTrans;
  }

  public CanvasTransformer rotate(final int openedDeg, final int closedDeg, 
      final int px, final int py) {
    return rotate(openedDeg, closedDeg, px, py, lin);
  }

  public CanvasTransformer rotate(final int openedDeg, final int closedDeg, 
      final int px, final int py, final Interpolator interp) {
    initTransformer();
    mTrans = new CanvasTransformer() {
      public void transformCanvas(Canvas canvas, float percentOpen) {
        mTrans.transformCanvas(canvas, percentOpen);
        float f = interp.getInterpolation(percentOpen);
        canvas.rotate((openedDeg - closedDeg) * f + closedDeg, 
            px, py);
      }      
    };
    return mTrans;
  }

  public CanvasTransformer translate(final int openedX, final int closedX, 
      final int openedY, final int closedY) {
    return translate(openedX, closedX, openedY, closedY, lin);
  }

  public CanvasTransformer translate(final int openedX, final int closedX, 
      final int openedY, final int closedY, final Interpolator interp) {
    initTransformer();
    mTrans = new CanvasTransformer() {
      public void transformCanvas(Canvas canvas, float percentOpen) {
        mTrans.transformCanvas(canvas, percentOpen);
        float f = interp.getInterpolation(percentOpen);
        canvas.translate((openedX - closedX) * f + closedX,
            (openedY - closedY) * f + closedY);
      }      
    };
    return mTrans;
  }

  public CanvasTransformer concatTransformer(final CanvasTransformer t) {
    initTransformer();
    mTrans = new CanvasTransformer() {
      public void transformCanvas(Canvas canvas, float percentOpen) {
        mTrans.transformCanvas(canvas, percentOpen);
        t.transformCanvas(canvas, percentOpen);
      }      
    };
    return mTrans;
  }

}




Java Source Code List

android.UnusedStub.java
com.dev.campus.CampusUB1App.java
com.dev.campus.LauncherActivity.java
com.dev.campus.SettingsActivity.java
com.dev.campus.directory.Contact.java
com.dev.campus.directory.DirectoryActivity.java
com.dev.campus.directory.DirectoryAdapter.java
com.dev.campus.directory.DirectoryManager.java
com.dev.campus.event.Category.java
com.dev.campus.event.EventAdapter.java
com.dev.campus.event.EventFragment.java
com.dev.campus.event.EventMultiChoiceModeListener.java
com.dev.campus.event.EventPagerAdapter.java
com.dev.campus.event.EventParser.java
com.dev.campus.event.EventViewActivity.java
com.dev.campus.event.Event.java
com.dev.campus.event.EventsActivity.java
com.dev.campus.event.Feed.java
com.dev.campus.home.HomeActivity.java
com.dev.campus.home.HomeAdapter.java
com.dev.campus.home.HomeEntryItem.java
com.dev.campus.home.HomeItem.java
com.dev.campus.home.HomeSeparatorItem.java
com.dev.campus.map.MapActivity.java
com.dev.campus.map.Position.java
com.dev.campus.schedule.Group.java
com.dev.campus.schedule.ScheduleActivity.java
com.dev.campus.schedule.ScheduleAdapter.java
com.dev.campus.schedule.ScheduleImportService.java
com.dev.campus.schedule.ScheduleParser.java
com.dev.campus.util.AboutDialog.java
com.dev.campus.util.FilterDialog.java
com.dev.campus.util.Persistence.java
com.dev.campus.util.PrefFragment.java
com.dev.campus.util.SubscribeDialog.java
com.dev.campus.util.TimeExtractor.java
com.dev.campus.util.UpcomingEventsDialog.java
com.slidingmenu.lib.CanvasTransformerBuilder.java
com.slidingmenu.lib.CustomViewAbove.java
com.slidingmenu.lib.CustomViewBehind.java
com.slidingmenu.lib.MenuInterface.java
com.slidingmenu.lib.SlidingMenu.java
com.slidingmenu.lib.app.SlidingActivityBase.java
com.slidingmenu.lib.app.SlidingActivityHelper.java
com.slidingmenu.lib.app.SlidingActivity.java
com.slidingmenu.lib.app.SlidingFragmentActivity.java
com.slidingmenu.lib.app.SlidingListActivity.java
com.slidingmenu.lib.app.SlidingMapActivity.java
com.slidingmenu.lib.app.SlidingPreferenceActivity.java