hw5
by yi hom
HTML
<div id="info">hw5 <br/>
<button id="refresh">
reset
</button>
</div>
<script src="http://cdnjs.cloudflare.com/ajax/libs/three.js/r70/three.min.js"></script>
<script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/numeric/1.2.6/numeric.min.js"></script>
CSS
#info {
position: absolute;
top: 0px;
width: 100%;
padding: 10px;
text-align: center;
color: #ffff00
}
body {
overflow: hidden;
}
JavaScript
var camera, scene, renderer;
var mouse = new THREE.Vector2();
var points = [];
//var points = [[25,24],[5,7],[22,29],[19,22],[31,30],[23,27],[20,16],[10,11],[15,16],[11,9]];
//var points = [[2.5,2.4],[0.5,0.7],[2.2,2.9],[1.9,2.2],[3.1,3.0],[2.3,2.7],[2.0,1.6],[1.0,1.1],[1.5,1.6],[1.1,0.9]];
var tpoints = [];
var mesh;
var avex = 0;
var avey = 0;
var tavex,tavey;
var cov = [[],[]];
var ev;
var minxi = 0,minyi = 0,maxxi = 0,maxyi = 0;
var minx,miny,maxx,maxy;
var obb,obb1,obb2,obb3;
var mesh1,mesh2;
var p1= new THREE.Vector2(0,0),p2= new THREE.Vector2(0,0),p3= new THREE.Vector2(0,0),p4= new THREE.Vector2(0,0);
var center = [];
var size = [];
init();
animate();
function drawobb(){
var invev;
scene.remove(obb);
scene.remove(obb1);
scene.remove(obb2);
scene.remove(obb3);
var pcs1,pcs2;
p1= new THREE.Vector2(0,0),p2= new THREE.Vector2(0,0),p3= new THREE.Vector2(0,0),p4= new THREE.Vector2(0,0);
center = new THREE.Vector2(avex,avey);
size[0] = (maxx-minx)/2;
size[1] = (maxy-miny)/2;
size[0] = Math.abs(size[0]);
size[1] = Math.abs(size[1]);
//console.log(size[0]);
//console.log(size[1]);
//console.log("----------------");
pcs1 = new THREE.Vector2(size[0]*ev.E.x[0][0],size[0]*ev.E.x[0][1]);
pcs2 = new THREE.Vector2(size[1]*ev.E.x[1][0],size[1]*ev.E.x[1][1]);
//console.log(pcs2);
/* p1.add(center).add(pcs1).add(pcs2);
p2.add(center).sub(pcs1).add(pcs2);
p3.add(center).sub(pcs1).sub(pcs2);
p4.add(center).add(pcs1).sub(pcs2);*/
p1.add(center);p1.add(pcs1);p1.add(pcs2);
p2.add(center);p2.sub(pcs1);p2.add(pcs2);
p3.add(center);p3.sub(pcs1);p3.sub(pcs2);
p4.add(center);p4.add(pcs1);p4.sub(pcs2);
// console.log(p1);
/* console.log(p1);
console.log(p2);
console.log(p3);
console.log(p4);*/
var material = new THREE.LineBasicMaterial({
color: 0x0000ff
});
var geometry = new THREE.Geometry();
...