Example usage for android.graphics RectF centerX

List of usage examples for android.graphics RectF centerX

Introduction

In this page you can find the example usage for android.graphics RectF centerX.

Prototype

public final float centerX() 

Source Link

Usage

From source file:com.yanzhenjie.album.widget.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/*from   w w w. j a v a 2s .c om*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.Yamate.Camera.Camera.java

/**
 * Configures the necessary {@link android.graphics.Matrix} transformation to `mTextureView`.
 * This method should be called after the camera preview size is determined in
 * setUpCameraOutputs and also the size of `mTextureView` is fixed.
 *
 * @param viewWidth  The width of `mTextureView`
 * @param viewHeight The height of `mTextureView`
 *//*from  ww w  . j  ava  2 s.  c o m*/
private void configureTransform(int viewWidth, int viewHeight) {
    Activity activity = mActivity;
    if (null == mPreviewSize || null == activity) {
        return;
    }
    int rotation = activity.getWindowManager().getDefaultDisplay().getRotation();
    Matrix matrix = new Matrix();
    RectF viewRect = new RectF(0, 0, viewWidth, viewHeight);
    RectF bufferRect = new RectF(0, 0, mPreviewSize.getHeight(), mPreviewSize.getWidth());
    float centerX = viewRect.centerX();
    float centerY = viewRect.centerY();
    if (Surface.ROTATION_90 == rotation || Surface.ROTATION_270 == rotation) {
        bufferRect.offset(centerX - bufferRect.centerX(), centerY - bufferRect.centerY());
        matrix.setRectToRect(viewRect, bufferRect, Matrix.ScaleToFit.FILL);
        float scale = Math.max((float) viewHeight / mPreviewSize.getHeight(),
                (float) viewWidth / mPreviewSize.getWidth());
        matrix.postScale(scale, scale, centerX, centerY);
        matrix.postRotate(90 * (rotation - 2), centerX, centerY);
    } else if (Surface.ROTATION_180 == rotation) {
        matrix.postRotate(180, centerX, centerY);
    }
    //mTextureView.setTransform(matrix);
}

From source file:com.homechart.app.commont.imagedetail.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/*from w w w  .  j av a 2 s. c om*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {

            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.example.imagegallerydemo.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override//from   www.  j av a 2s  .com
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
                Log.i(LOG_TAG, "onTouch getParent() returned null");
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.zxj.androidmvvm.common.view.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/*from   ww  w. j  a  v  a2  s  .co  m*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
                ILog.i("onTouch getParent() returned null");
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.sflib.CustomView.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/* w w w  .  j a  va 2  s  .  c o  m*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
                L.info(LOG_TAG, "onTouch getParent() returned null");
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:xue.myapp.common.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/*  ww  w .j a  v  a2s .co m*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
                LogUtil.i(LOG_TAG, "onTouch getParent() returned null");
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.kf5.sdk.system.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/*  w  w  w .j a va2s .c  o  m*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.cylan.jiafeigou.support.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override//  w w  w.  ja va  2  s  .c  om
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
                //                        LogManager.getLogger().i(LOG_TAG, "onTouch getParent() returned null");
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}

From source file:com.example.g40_70m.framedemo.view.photoview.PhotoViewAttacher.java

@SuppressLint("ClickableViewAccessibility")
@Override/*  w w  w . j a  v a 2s. c o m*/
public boolean onTouch(View v, MotionEvent ev) {
    boolean handled = false;

    if (mZoomEnabled && hasDrawable((ImageView) v)) {
        ViewParent parent = v.getParent();
        switch (ev.getAction()) {
        case ACTION_DOWN:
            // First, disable the Parent from intercepting the touch
            // event
            if (null != parent) {
                parent.requestDisallowInterceptTouchEvent(true);
            } else {
                L.w("onTouch getParent() returned null");
            }

            // If we're flinging, and the user presses down, cancel
            // fling
            cancelFling();
            break;

        case ACTION_CANCEL:
        case ACTION_UP:
            // If the user has zoomed less than min scale, zoom back
            // to min scale
            if (getScale() < mMinScale) {
                RectF rect = getDisplayRect();
                if (null != rect) {
                    v.post(new AnimatedZoomRunnable(getScale(), mMinScale, rect.centerX(), rect.centerY()));
                    handled = true;
                }
            }
            break;
        }

        // Try the Scale/Drag detector
        if (null != mScaleDragDetector) {
            boolean wasScaling = mScaleDragDetector.isScaling();
            boolean wasDragging = mScaleDragDetector.isDragging();

            handled = mScaleDragDetector.onTouchEvent(ev);

            boolean didntScale = !wasScaling && !mScaleDragDetector.isScaling();
            boolean didntDrag = !wasDragging && !mScaleDragDetector.isDragging();

            mBlockParentIntercept = didntScale && didntDrag;
        }

        // Check to see if the user double tapped
        if (null != mGestureDetector && mGestureDetector.onTouchEvent(ev)) {
            handled = true;
        }

    }

    return handled;
}