Android Open Source - Marble-Run Accelero






From Project

Back to project page Marble-Run.

License

The source code is released under:

Apache License

If you think the Android project Marble-Run 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 nttu.edu.handler;
/*w  ww  .  ja  va 2  s .c om*/
import nttu.edu.activities.PlayActivity;
import android.app.Activity;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.view.WindowManager;

public class Accelero implements SensorEventListener{
  public static float X, Y, Z;
  private SensorManager manager;
  private Sensor meter;
  private boolean successful;
  private int screenRotation;
  private WindowManager windowManager;
  
  private static final int[][] AXIS = {  //ROTATION in order: 0, 90, 180, 270
    {1, -1, 0, 1}, {-1, -1, 1, 0}, {-1, 1, 0, 1}, {1, 1, 1, 0}
  };
  
  public Accelero() {
    successful = false;
  }
  
  public void onAccuracyChanged(Sensor arg0, int arg1) {
  }
  
  public void onSensorChanged(SensorEvent e) {
    screenRotation = windowManager.getDefaultDisplay().getRotation(); 
    if (e.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
      final int[] axis = AXIS[screenRotation];
      X = (float) (axis[0]) * e.values[axis[2]];
      Y = (float) (axis[1]) * e.values[axis[3]];
      Z = e.values[2];
    }
  }
  
  public void resume(PlayActivity parent){
    windowManager = (WindowManager) parent.getSystemService(Activity.WINDOW_SERVICE);
    manager = (SensorManager) parent.getSystemService(Context.SENSOR_SERVICE);
    if (manager.getSensorList(Sensor.TYPE_ACCELEROMETER).size() > 0) meter = manager.getSensorList(Sensor.TYPE_ACCELEROMETER).get(0);
    if (!(successful = manager.registerListener(this, meter, SensorManager.SENSOR_DELAY_GAME)))
      throw new RuntimeException("Couldn't register SensorEventListener.");
  }
  
  public void pause(){
    if (successful)
      manager.unregisterListener(this, meter);
  }
}




Java Source Code List

nttu.edu.activities.LevelSelectionActivity.java
nttu.edu.activities.MenuActivity.java
nttu.edu.activities.NewLoadingActivity.java
nttu.edu.activities.PlayActivity.java
nttu.edu.activities.ScoreActivity.java
nttu.edu.activities.SettingsActivity.java
nttu.edu.alt.NewBall.java
nttu.edu.alt.NewCue.java
nttu.edu.alt.NewHole.java
nttu.edu.alt.Obstacle.java
nttu.edu.ball.Ball.java
nttu.edu.ball.Cue.java
nttu.edu.ball.Marble.java
nttu.edu.entity.Border.java
nttu.edu.entity.Bumper.java
nttu.edu.entity.Coin.java
nttu.edu.entity.Connector.java
nttu.edu.entity.CurvePipe.java
nttu.edu.entity.Entity.java
nttu.edu.entity.Funnel.java
nttu.edu.entity.Hole.java
nttu.edu.entity.Path.java
nttu.edu.entity.Pipe.java
nttu.edu.entity.Ramp.java
nttu.edu.entity.ShortFunnel.java
nttu.edu.entity.Tee.java
nttu.edu.entity.Terrain.java
nttu.edu.entity.Void.java
nttu.edu.graphics.Art.java
nttu.edu.graphics.RenderView.java
nttu.edu.handler.Accelero.java
nttu.edu.handler.ImageInfo.java
nttu.edu.handler.Info.java
nttu.edu.handler.Loading.java
nttu.edu.handler.ModPlayer.java
nttu.edu.handler.MusicHandler.java
nttu.edu.hud.BestScore.java
nttu.edu.hud.Compass.java
nttu.edu.hud.GoalCompass.java
nttu.edu.hud.HUDMenu.java
nttu.edu.hud.HUDScore.java
nttu.edu.hud.MarbleCompass.java
nttu.edu.hud.TimeBasedScore.java
nttu.edu.level.HUD.java
nttu.edu.level.Stage.java
nttu.edu.score.Format.java
nttu.edu.score.Score.java
nttu.edu.sound.Sound.java