hit demo
by Alan Lin
HTML
<div id="info">Baseball demo
<br/>
<br/>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r78/three.min.js"></script>
<script src="https://dl.dropboxusercontent.com/u/3587259/Code/Threejs/OrbitControls.js"></script>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="https://jyunming-chen.github.io/tutsplus/js/KeyboardState.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/dat-gui/0.5.1/dat.gui.min.js"></script>
CSS
#info {
position: absolute;
top: 2%;
width: 100%;
padding: 10px;
text-align: center;
color: #ffff00
}
body {
overflow: hidden;
}
JavaScript
var scene, renderer, camera;
var controls;
var keyboard = new KeyboardState();
var clock = new THREE.Clock();
var clock2 = new THREE.Clock();
var turn = false, turn2 = true ;
var period = 0.5;
var long = 0 , v0 = 0;
var ball;
var batR = 0.5, batH = 8;
var ballr = 0.7;
var hitturn = false , hitting;
var ss = 0;
function onDocumentMouseDown(event) {
event.preventDefault();
if ( event.button === 0){ // left button
turn = true;
clock.start();
}
if ( event.button === 2){ // roller
turn = false;
turn2 = true;
clock = new THREE.Clock();
hitturn = false;
baseball.position.set(0,8,0);
}
}
/*
$('#shoot').click(function() {
if(hitturn) hitturn = !hitturn;
turn = !turn;
turn2 =true;
if(turn) {
clock.start();
$(this).text("reset");
}
else {
baseball.position.set(0,5,0);
$(this).text("start");
clock = new THREE.Clock();
clock2 = new THREE.Clock();
}
});
*/
init();
animate();
var batpose1= {
batorigin_XX: -6.0,
batorigin_YY: 12.0,
batorigin_ZZ: 4.0,
batorigin_Y: -2.0,
batorigin_Z: 1.0
};
var batpose2= {
batorigin_XX: -5.3,
batorigin_YY: 10.0,
batorigin_ZZ: 3.3,
batorigin_Y: -1.4,
batorigin_Z: 0.6
};
var batpose3= {
batorigin_XX: -5.7,
batorigin_YY: 8.3,
batorigin_ZZ: 2.2,
batorigin_Y: -0.7,
batorigin_Z: 0.3
};
var batpose4= {
batorigin_XX: -5.0,
batorigin_YY: 7.5,
batorigin_ZZ: 1.1,
batorigin_Y: 0.0,
batorigin_Z: -0.1
};
var batpose5= {
batorigin_XX: -5.3,
batorigin_YY: 8.3,
batorigin_ZZ: -0.2,
batorigin_Y: 0.3,
batorigin_Z: 0.0
};
var batpose6= {
batorigin_XX: -5.6,
batorigin_YY: 9.2,
batorigin_ZZ: -1.8,
batorigin_Y: 0.7,
batorigin_Z: 0.1
};
var batpose7= {
batorigin_XX: -6.0,
batorigin_YY: 10.0,
batorigin_ZZ: -3.0,
batorigin_Y: 1.0,
batorigin_Z: 0.2
};
var batpose8= {
batorigin_XX: -8.0,
batorigin_YY: 11.5,
batorigin_ZZ: -3.6,
...