HTML+3.js formatting

formatting

by Bai Shiuan Huang

HTML

<h1 style="text-align:center"> Hw5 Helper </h1>

<hr>
<div id="container" style="float:left; margin:3px; width:60vw; height:60vw">
</div>
<div style="float:left; margin-left: 10px; width:32vw;">
  <button id="stepB" style="width:100%">Step</button>
  <p id="fuel">
  </p>
  <button id="but0">toggle</button>
  
</div>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/84/three.min.js"></script>
<script src="https://threejs.org/examples/js/controls/OrbitControls.js">


</script>
<script src="https://jyunming-chen.github.io/tutsplus/js/KeyboardState.js"></script>

JavaScript

var camera, scene, renderer;
var omega, theta, R;
var car;
var clock = new THREE.Clock();
var step = false;
var keyboard;
var fuel;
var engine = true;

init();
animate();

function init() {

  var ww = $("#container").innerWidth();
  var hh = $("#container").innerHeight();
  renderer = new THREE.WebGLRenderer();
  renderer.setSize(ww, hh);
  renderer.setClearColor(0x888888);
  $("#container").append(renderer.domElement);

  ////////////////////////////////////////////////

  scene = new THREE.Scene();
  camera = new THREE.PerspectiveCamera(50, ww / hh, 1, 1000);
  camera.position.set(0, 200, 300);

  car = new THREE.Mesh(new THREE.CircleGeometry(5, 20), new THREE.MeshBasicMaterial());
  scene.add(car);

  var gridXZ = new THREE.GridHelper(200, 20, 'red', 'white');
  scene.add(gridXZ);

  let controls = new THREE.OrbitControls(camera, renderer.domElement);
  window.addEventListener('resize', onWindowResize, false);
  /////////////
  theta = 0;
  omega = 0;
  R = 70;

  fuel = 100;

  // keyboard = new KeyboardState();
}


$("#stepB").on('mousedown', function(e) {
  console.log('mouse down')
  step = true;
  $(this).css("background-color", "yellow");
}).on('mouseup', function(e) {
  console.log('mouse up')
  step = false;
  $(this).css("background-color", "white");
});
/*    
$("#step").click(function() {
	console.log ('step')
	step = true;
});

$("#stop").click(function() {
	console.log ('stop')
	step = false;
});
*/

function onWindowResize() {
  var ww = $("#container").innerWidth();
  var hh = $("#container").innerHeight();

  camera.aspect = ww / hh;
  camera.updateProjectionMatrix();
  renderer.setSize(ww, hh);
}

function animate() {
  /*
  	keyboard.update();
    if (keyboard.pressed("S"))
    	step = true;
    else
    	step = false;
  */
  console.log(step)

  requestAnimationFrame(animate);
  render();

  dt = clock.getDelta();
  if (engine) {
    theta += omega * dt;
    car.position.set(R * Math.cos(theta), 0, -R * Math.sin(theta))

    if (step) {
   ...