Android Open Source - jmini3d Parent Scene






From Project

Back to project page jmini3d.

License

The source code is released under:

Copyright 2012 Mobialia http://www.mobialia.com/ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to ...

If you think the Android project jmini3d 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 jmini3d.demo;
/*from w  w w. j  a  v a2  s.c o m*/
import jmini3d.Font;
import jmini3d.Object3d;
import jmini3d.Rect;
import jmini3d.Scene;
import jmini3d.Texture;
import jmini3d.geometry.SpriteGeometry;
import jmini3d.material.SpriteMaterial;

public class ParentScene extends Scene {

  Font font = new ArialFont();

  String title;

  Object3d titleObject3d;
  Rect fm = new Rect();

  Object3d buttonRight;
  Object3d buttonLeft;

  public ParentScene(String title) {
    this.title = title;

    titleObject3d = font.getTextLine(title, fm);
    addHudElement(titleObject3d);

    SpriteMaterial buttonRightMaterial = new SpriteMaterial(new Texture("arrow_right.png"));
    SpriteGeometry buttonRightGeometry = new SpriteGeometry(1);
    buttonRightGeometry.addSprite(0, 0, 0, 0);
    buttonRight = new Object3d(buttonRightGeometry, buttonRightMaterial);
    addHudElement(buttonRight);

    SpriteMaterial buttonLeftMaterial = new SpriteMaterial(new Texture("arrow_left.png"));
    SpriteGeometry buttonLeftGeometry = new SpriteGeometry(1);
    buttonLeftGeometry.addSprite(0, 0, 0, 0);
    buttonLeft = new Object3d(buttonLeftGeometry, buttonLeftMaterial);
    addHudElement(buttonLeft);
  }

  /**
   * Hud elements need viewport size, this method is also called each time that the viewport is changed
   */
  @Override
  public void onViewPortChanged(int width, int height) {
    // DO not exceed screen width
    float titleScale = ((float) width) / ((float) fm.right);
    if (titleScale > 1) {
      titleScale = 1f;
    }
    titleObject3d.setScale(titleScale);
    // center in screen
    titleObject3d.setPosition((width - (((float) fm.right) * titleScale)) / 2, fm.bottom * titleScale * 0.5f, 0);

    float buttonWidth = Math.min(width, height) / 5;
    ((SpriteGeometry) buttonLeft.getGeometry3d()).setSpritePosition(0, 0, height - buttonWidth, buttonWidth, height);
    ((SpriteGeometry) buttonRight.getGeometry3d()).setSpritePosition(0, width - buttonWidth, height - buttonWidth, width, height);
  }

  public void update() {

  }
}




Java Source Code List

cocoonjs.CocoonJsLinker.java
jmini3d.Blending.java
jmini3d.Camera.java
jmini3d.Color4.java
jmini3d.CubeMapTexture.java
jmini3d.Font.java
jmini3d.GpuObjectStatus.java
jmini3d.MatrixUtils.java
jmini3d.Object3d.java
jmini3d.Rect.java
jmini3d.SceneController.java
jmini3d.Scene.java
jmini3d.Texture.java
jmini3d.Utils.java
jmini3d.Vector3.java
jmini3d.android.Activity3d.java
jmini3d.android.GeometryBuffers.java
jmini3d.android.GlSurfaceView3d.java
jmini3d.android.GpuUploader.java
jmini3d.android.Program.java
jmini3d.android.Renderer3d.java
jmini3d.android.ResourceLoader.java
jmini3d.android.compat.CompatibilityWrapper5.java
jmini3d.android.demo.DemoActivity.java
jmini3d.android.input.InputController.java
jmini3d.demo.ArialFont.java
jmini3d.demo.CubeScene.java
jmini3d.demo.CubesScene.java
jmini3d.demo.DemoSceneController.java
jmini3d.demo.EnvMapCubeScene.java
jmini3d.demo.NormalMapScene.java
jmini3d.demo.ParentScene.java
jmini3d.demo.TeapotGeometry.java
jmini3d.demo.TeapotScene.java
jmini3d.geometry.BoxGeometry.java
jmini3d.geometry.Geometry.java
jmini3d.geometry.PlaneGeometry.java
jmini3d.geometry.SkyboxGeometry.java
jmini3d.geometry.SpriteGeometry.java
jmini3d.geometry.VariableGeometry.java
jmini3d.gwt.Canvas3d.java
jmini3d.gwt.EngineResources.java
jmini3d.gwt.EntryPoint3d.java
jmini3d.gwt.GeometryBuffers.java
jmini3d.gwt.GpuUploader.java
jmini3d.gwt.MyInt16Array.java
jmini3d.gwt.Program.java
jmini3d.gwt.Renderer3d.java
jmini3d.gwt.ResourceLoader.java
jmini3d.gwt.TextureLoadedListener.java
jmini3d.gwt.demo.DemoEntryPoint.java
jmini3d.gwt.input.InputController.java
jmini3d.input.KeyListener.java
jmini3d.input.TouchListener.java
jmini3d.input.TouchPointer.java
jmini3d.light.AmbientLight.java
jmini3d.light.DirectionalLight.java
jmini3d.light.Light.java
jmini3d.light.PointLight.java
jmini3d.material.Material.java
jmini3d.material.PhongMaterial.java
jmini3d.material.SpriteMaterial.java
jmini3d.utils.Fnt2Class.java
jmini3d.utils.Obj2Class.java