Android Open Source - webots-remote-control Camera View






From Project

Back to project page webots-remote-control.

License

The source code is released under:

GNU Lesser General Public License

If you think the Android project webots-remote-control 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 org.black_mesa.webots_remote_control.views;
/*w ww .j a  v a  2  s  . co m*/
import org.black_mesa.webots_remote_control.R;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;

public class CameraView extends View {
  private static final int DIV_HOR = 6;
  private static final int DIV_VER = 6;
  private static final int ALPHA = 0x80;
  private static final float STROKE_WIDTH = 4.5F;

  private Paint mPaint;
  private RectF mRectangle;
  private Bitmap mBitmapUp;
  private Bitmap mBitmapLeft;
  private Bitmap mBitmapRight;
  private Bitmap mBitmapDown;
  private float mL;
  private float mU;
  private float mR;
  private float mD;

  public CameraView(Context context) {
    super(context);
    commonConstructor();
  }

  public CameraView(Context context, AttributeSet attrs) {
    super(context, attrs);
    commonConstructor();
  }

  public CameraView(Context context, AttributeSet attrs, int defStyleAttr) {
    super(context, attrs, defStyleAttr);
    commonConstructor();
  }

  private void commonConstructor() {
    setFocusable(true);
    mPaint = new Paint();
    mRectangle = new RectF();
    mBitmapUp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_up);
    mBitmapLeft = BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_left);
    mBitmapRight = BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_right);
    mBitmapDown = BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_down);
  }

  @Override
  protected void onDraw(Canvas canvas) {
    mL = getWidth() / DIV_HOR;
    mU = getHeight() / DIV_VER;
    mR = mL * 5;
    mD = mU * 5;
    mRectangle.set(mL, mU, mR, mD);
    mPaint.setAntiAlias(true);
    mPaint.setColor(Color.RED);
    mPaint.setAlpha(ALPHA);
    mPaint.setStyle(Paint.Style.STROKE);
    mPaint.setStrokeWidth(STROKE_WIDTH);
    canvas.drawOval(mRectangle, mPaint);
    canvas.drawBitmap(mBitmapUp, (getWidth() - mBitmapUp.getWidth()) / 2, 0, mPaint);
    canvas.drawBitmap(mBitmapLeft, 0, (getHeight() - mBitmapLeft.getHeight()) / 2, mPaint);
    canvas.drawBitmap(mBitmapRight, getWidth() - mBitmapRight.getWidth(),
        (getHeight() - mBitmapLeft.getHeight()) / 2, mPaint);
    canvas.drawBitmap(mBitmapDown, (getWidth() - mBitmapDown.getWidth()) / 2,
        getHeight() - mBitmapDown.getHeight(), mPaint);
  }
}




Java Source Code List

org.black_mesa.webots_remote_control.activities.AboutFragment.java
org.black_mesa.webots_remote_control.activities.AddServerActivity.java
org.black_mesa.webots_remote_control.activities.CameraFragment.java
org.black_mesa.webots_remote_control.activities.ConnectionFragment.java
org.black_mesa.webots_remote_control.activities.MainActivity.java
org.black_mesa.webots_remote_control.client.CamerasManager.java
org.black_mesa.webots_remote_control.client.Client.java
org.black_mesa.webots_remote_control.client.ConnectionManager.java
org.black_mesa.webots_remote_control.client.ConnectionState.java
org.black_mesa.webots_remote_control.client.package-info.java
org.black_mesa.webots_remote_control.communication_structures.CameraInstructionQueue.java
org.black_mesa.webots_remote_control.communication_structures.CameraInstruction.java
org.black_mesa.webots_remote_control.communication_structures.CommunicationStructure.java
org.black_mesa.webots_remote_control.communication_structures.package-info.java
org.black_mesa.webots_remote_control.database.DataBaseContract.java
org.black_mesa.webots_remote_control.database.DataBaseHelper.java
org.black_mesa.webots_remote_control.database.DataSource.java
org.black_mesa.webots_remote_control.database.ServerListAdapter.java
org.black_mesa.webots_remote_control.database.Server.java
org.black_mesa.webots_remote_control.listeners.CameraJoysticksViewListener.java
org.black_mesa.webots_remote_control.listeners.CameraTouchListenerV1.java
org.black_mesa.webots_remote_control.listeners.CameraTouchListenerV2.java
org.black_mesa.webots_remote_control.listeners.CameraTouchListenerV3.java
org.black_mesa.webots_remote_control.listeners.CameraTouchListenerV4.java
org.black_mesa.webots_remote_control.listeners.CameraTouchListenerV5.java
org.black_mesa.webots_remote_control.listeners.ClientListener.java
org.black_mesa.webots_remote_control.listeners.ConnectionManagerListener.java
org.black_mesa.webots_remote_control.listeners.OnListEventsListener.java
org.black_mesa.webots_remote_control.listeners.package-info.java
org.black_mesa.webots_remote_control.utils.CameraTouchHandlerV1.java
org.black_mesa.webots_remote_control.utils.CameraTouchHandlerV2.java
org.black_mesa.webots_remote_control.utils.CameraTouchHandlerV3.java
org.black_mesa.webots_remote_control.utils.CameraTouchHandlerV4.java
org.black_mesa.webots_remote_control.utils.CameraTouchHandlerV5.java
org.black_mesa.webots_remote_control.utils.package-info.java
org.black_mesa.webots_remote_control.views.CameraJoysticksView.java
org.black_mesa.webots_remote_control.views.CameraView.java