this.d.length-2},kn.isNaN=function(){return!this.s},kn.isNegative=kn.isNeg=function(){return this.s<0},kn.isPositive=kn.isPos=function(){return this.s>0},kn.isZero=function(){return!!this.d&&0===this.d[0]},kn.lessThan=kn.lt=function(n){return this.cmp(n)<0},kn.lessThanOrEqualTo=kn.lte=function(n){return this.cmp(n)<1},kn.logarithm=kn.log=function(n){var i,r,s,u,c,a,h,l,d=this,p=d.constructor,g=p.precision,w=p.rounding,v=5;if(null==n)n=new p(10),i=!0;else{if(n=new p(n),r=n.d,n.s<0||!r||!r[0]||n.eq(1))return new p(NaN);i=n.eq(10)}if(r=d.d,d.s<0||!r||!r[0]||d.eq(1))return new p(r&&!r[0]?-1/0:1!=d.s?NaN:r?0:1/0);if(i)if(r.length>1)c=!0;else{for(u=r[0];u%10===0;)u/=10;c=1!==u}if(xn=!1,h=g+v,a=m(d,h),s=i?f(p,h+10):m(n,h),l=Sn(a,s,h,1),t(l.d,u=g,w))do if(h+=10,a=m(d,h),s=i?f(p,h+10):m(n,h),l=Sn(a,s,h,1),!c){+e(l.d).slice(u+1,u+15)+1==1e14&&(l=o(l,g+1,0));break}while(t(l.d,u+=10,w));return xn=!0,o(l,g,w)},kn.minus=kn.sub=function(n){var e,i,t,r,s,u,f,a,h,l,d,p,g=this,w=g.constructor;if(n=new w(n),!g.d||!n.d)return g.s&&n.s?g.d?n.s=-n.s:n=new w(n.d||g.s!==n.s?g:NaN):n=new w(NaN),n;if(g.s!=n.s)return n.s=-n.s,g.plus(n);if(h=g.d,p=n.d,f=w.precision,a=w.rounding,!h[0]||!p[0]){if(p[0])n.s=-n.s;else{if(!h[0])return new w(3===a?-0:0);n=new w(g)}return xn?o(n,f,a):n}if(i=qn(n.e/Rn),l=qn(g.e/Rn),h=h.slice(),s=l-i){for(d=0>s,d?(e=h,s=-s,u=p.length):(e=p,i=l,u=h.length),t=Math.max(Math.ceil(f/Rn),u)+2,s>t&&(s=t,e.length=1),e.reverse(),t=s;t--;)e.push(0);e.reverse()}else{for(t=h.length,u=p.length,d=u>t,d&&(u=t),t=0;u>t;t++)if(h[t]!=p[t]){d=h[t]0;--t)h[u++]=0;for(t=p.length;t>s;){if(h[--t]
r?(i=h,r=-r,u=l.length):(i=l,t=s,u=h.length),s=Math.ceil(f/Rn),u=s>u?s+1:u+1,r>u&&(r=u,i.length=1),i.reverse();r--;)i.push(0);i.reverse()}for(u=h.length,r=l.length,0>u-r&&(r=u,i=l,l=h,h=i),e=0;r;)e=(h[--r]=h[r]+l[r]+e)/Pn|0,h[r]%=Pn;for(e&&(h.unshift(e),++t),u=h.length;0==h[--u];)h.pop();return n.d=h,n.e=c(h,t),xn?o(n,f,a):n},kn.precision=kn.sd=function(n){var e,i=this;if(void 0!==n&&n!==!!n&&1!==n&&0!==n)throw Error(Mn+n);return i.d?(e=h(i.d),n&&i.e+1>e&&(e=i.e+1)):e=NaN,e},kn.round=function(){var n=this,e=n.constructor;return o(new e(n),n.e+1,e.rounding)},kn.sine=kn.sin=function(){var n,e,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(n=t.precision,e=t.rounding,t.precision=n+Math.max(i.e,i.sd())+Rn,t.rounding=1,i=x(t,M(t,i)),t.precision=n,t.rounding=e,o(dn>2?i.neg():i,n,e,!0)):new t(NaN)},kn.squareRoot=kn.sqrt=function(){var n,i,t,r,s,u,c=this,f=c.d,a=c.e,h=c.s,l=c.constructor;if(1!==h||!f||!f[0])return new l(!h||0>h&&(!f||f[0])?NaN:f?c:1/0);for(xn=!1,h=Math.sqrt(+c),0==h||h==1/0?(i=e(f),(i.length+a)%2==0&&(i+="0"),h=Math.sqrt(i),a=qn((a+1)/2)-(0>a||a%2),h==1/0?i="1e"+a:(i=h.toExponential(),i=i.slice(0,i.indexOf("e")+1)+a),r=new l(i)):r=new l(h.toString()),t=(a=l.precision)+3;;)if(u=r,r=u.plus(Sn(c,u,t+2,1)).times(.5),e(u.d).slice(0,t)===(i=e(r.d)).slice(0,t)){if(i=i.slice(t-3,t+1),"9999"!=i&&(s||"4999"!=i)){(!+i||!+i.slice(1)&&"5"==i.charAt(0))&&(o(r,a+1,1),n=!r.times(r).eq(c));break}if(!s&&(o(u,a+1,0),u.times(u).eq(c))){r=u;break}t+=4,s=1}return xn=!0,o(r,a,l.rounding,n)},kn.tangent=kn.tan=function(){var n,e,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(n=t.precision,e=t.rounding,t.precision=n+10,t.rounding=1,i=i.sin(),i.s=1,i=Sn(i,new t(1).minus(i.times(i)).sqrt(),n+10,0),t.precision=n,t.rounding=e,o(2==dn||4==dn?i.neg():i,n,e,!0)):new t(NaN)},kn.times=kn.mul=function(n){var e,i,t,r,s,u,f,a,h,l=this,d=l.constructor,p=l.d,g=(n=new d(n)).d;if(n.s*=l.s,!(p&&p[0]&&g&&g[0]))return new d(!n.s||p&&!p[0]&&!g||g&&!g[0]&&!p?NaN:p&&g?0*n.s:n.s/0);for(i=qn(l.e/Rn)+qn(n.e/Rn),a=p.length,h=g.length,h>a&&(s=p,p=g,g=s,u=a,a=h,h=u),s=[],u=a+h,t=u;t--;)s.push(0);for(t=h;--t>=0;){for(e=0,r=a+t;r>t;)f=s[r]+g[t]*p[r-t-1]+e,s[r--]=f%Pn|0,e=f/Pn|0;s[r]=(s[r]+e)%Pn|0}for(;!s[--u];)s.pop();for(e?++i:s.shift(),t=s.length;!s[--t];)s.pop();return n.d=s,n.e=c(s,i),xn?o(n,d.precision,d.rounding):n},kn.toBinary=function(n,e){return y(this,2,n,e)},kn.toDecimalPlaces=kn.toDP=function(n,e){var t=this,r=t.constructor;return t=new r(t),void 0===n?t:(i(n,0,gn),void 0===e?e=r.rounding:i(e,0,8),o(t,n+t.e+1,e))},kn.toExponential=function(n,e){var t,r=this,s=r.constructor;return void 0===n?t=u(r,!0):(i(n,0,gn),void 0===e?e=s.rounding:i(e,0,8),r=o(new s(r),n+1,e),t=u(r,!0,n+1)),r.isNeg()&&!r.isZero()?"-"+t:t},kn.toFixed=function(n,e){var t,r,s=this,c=s.constructor;return void 0===n?t=u(s):(i(n,0,gn),void 0===e?e=c.rounding:i(e,0,8),r=o(new c(s),n+s.e+1,e),t=u(r,!1,n+r.e+1)),s.isNeg()&&!s.isZero()?"-"+t:t},kn.toFraction=function(n){var i,t,r,s,o,u,c,f,a,l,d,p,g=this,w=g.d,m=g.constructor;if(!w)return new m(g);if(a=t=new m(1),r=f=new m(0),i=new m(r),o=i.e=h(w)-g.e-1,u=o%Rn,i.d[0]=On(10,0>u?Rn+u:u),null==n)n=o>0?i:a;else{if(c=new m(n),!c.isInt()||c.lt(a))throw Error(Mn+c);n=c.gt(i)?o>0?i:a:c}for(xn=!1,c=new m(e(w)),l=m.precision,m.precision=o=w.length*Rn*2;d=Sn(c,i,0,1,1),s=t.plus(d.times(r)),1!=s.cmp(n);)t=r,r=s,s=a,a=f.plus(d.times(s)),f=s,s=i,i=c.minus(d.times(s)),c=s;return s=Sn(n.minus(t),r,0,1,1),f=f.plus(s.times(a)),t=t.plus(s.times(r)),f.s=a.s=g.s,p=Sn(a,r,o,1).minus(g).abs().cmp(Sn(f,t,o,1).minus(g).abs())<1?[a,r]:[f,t],m.precision=l,xn=!0,p},kn.toHexadecimal=kn.toHex=function(n,e){return y(this,16,n,e)},kn.toNearest=function(n,e){var t=this,r=t.constructor;if(t=new r(t),null==n){if(!t.d)return t;n=new r(1),e=r.rounding}else{if(n=new r(n),void 0!==e&&i(e,0,8),!t.d)return n.s?t:n;if(!n.d)return n.s&&(n.s=t.s),n}return n.d[0]?(xn=!1,4>e&&(e=[4,5,7,8][e]),t=Sn(t,n,0,e,1).times(n),xn=!0,o(t)):(n.s=t.s,t=n),t},kn.toNumber=function(){return+this},kn.toOctal=function(n,e){return y(this,8,n,e)},kn.toPower=kn.pow=function(n){var i,r,s,u,c,f,a,h=this,l=h.constructor,p=+(n=new l(n));if(!(h.d&&n.d&&h.d[0]&&n.d[0]))return new l(On(+h,p));if(h=new l(h),h.eq(1))return h;if(s=l.precision,c=l.rounding,n.eq(1))return o(h,s,c);if(i=qn(n.e/Rn),r=n.d.length-1,a=i>=r,f=h.s,a){if((r=0>p?-p:p)<=Ln)return u=d(l,h,r,s),n.s<0?new l(1).div(u):o(u,s,c)}else if(0>f)return new l(NaN);return f=0>f&&1&n.d[Math.max(i,r)]?-1:1,r=On(+h,p),i=0!=r&&isFinite(r)?new l(r+"").e:qn(p*(Math.log("0."+e(h.d))/Math.LN10+h.e+1)),i>l.maxE+1||i0?f/0:0):(xn=!1,l.rounding=h.s=1,r=Math.min(12,(i+"").length),u=w(n.times(m(h,s+r)),s),u=o(u,s+5,1),t(u.d,s,c)&&(i=s+10,u=o(w(n.times(m(h,i+r)),i),i+5,1),+e(u.d).slice(s+1,s+15)+1==1e14&&(u=o(u,s+1,0))),u.s=f,xn=!0,l.rounding=c,o(u,s,c))},kn.toPrecision=function(n,e){var t,r=this,s=r.constructor;return void 0===n?t=u(r,r.e<=s.toExpNeg||r.e>=s.toExpPos):(i(n,1,gn),void 0===e?e=s.rounding:i(e,0,8),r=o(new s(r),n,e),t=u(r,n<=r.e||r.e<=s.toExpNeg,n)),r.isNeg()&&!r.isZero()?"-"+t:t},kn.toSignificantDigits=kn.toSD=function(n,e){var t=this,r=t.constructor;return void 0===n?(n=r.precision,e=r.rounding):(i(n,1,gn),void 0===e?e=r.rounding:i(e,0,8)),o(new r(t),n,e)},kn.toString=function(){var n=this,e=n.constructor,i=u(n,n.e<=e.toExpNeg||n.e>=e.toExpPos);return n.isNeg()&&!n.isZero()?"-"+i:i},kn.truncated=kn.trunc=function(){return o(new this.constructor(this),this.e+1,1)},kn.valueOf=kn.toJSON=function(){var n=this,e=n.constructor,i=u(n,n.e<=e.toExpNeg||n.e>=e.toExpPos);return n.isNeg()?"-"+i:i};var Sn=function(){function n(n,e,i){var t,r=0,s=n.length;for(n=n.slice();s--;)t=n[s]*e+r,n[s]=t%i|0,r=t/i|0;return r&&n.unshift(r),n}function e(n,e,i,t){var r,s;if(i!=t)s=i>t?1:-1;else for(r=s=0;i>r;r++)if(n[r]!=e[r]){s=n[r]>e[r]?1:-1;break}return s}function i(n,e,i,t){for(var r=0;i--;)n[i]-=r,r=n[i]1;)n.shift()}return function(t,r,s,u,c,f){var a,h,l,d,p,g,w,m,v,N,b,x,E,M,y,q,O,F,A,D,Z=t.constructor,P=t.s==r.s?1:-1,R=t.d,L=r.d;if(!(R&&R[0]&&L&&L[0]))return new Z(t.s&&r.s&&(R?!L||R[0]!=L[0]:L)?R&&0==R[0]||!L?0*P:P/0:NaN);for(f?(p=1,h=t.e-r.e):(f=Pn,p=Rn,h=qn(t.e/p)-qn(r.e/p)),A=L.length,O=R.length,v=new Z(P),N=v.d=[],l=0;L[l]==(R[l]||0);l++);if(L[l]>(R[l]||0)&&h--,null==s?(M=s=Z.precision,u=Z.rounding):M=c?s+(t.e-r.e)+1:s,0>M)N.push(1),g=!0;else{if(M=M/p+2|0,l=0,1==A){for(d=0,L=L[0],M++;(O>l||d)&&M--;l++)y=d*f+(R[l]||0),N[l]=y/L|0,d=y%L|0;g=d||O>l}else{for(d=f/(L[0]+1)|0,d>1&&(L=n(L,d,f),R=n(R,d,f),A=L.length,O=R.length),q=A,b=R.slice(0,A),x=b.length;A>x;)b[x++]=0;D=L.slice(),D.unshift(0),F=L[0],L[1]>=f/2&&++F;do d=0,a=e(L,b,A,x),0>a?(E=b[0],A!=x&&(E=E*f+(b[1]||0)),d=E/F|0,d>1?(d>=f&&(d=f-1),w=n(L,d,f),m=w.length,x=b.length,a=e(w,b,m,x),1==a&&(d--,i(w,m>A?D:L,m,f))):(0==d&&(a=d=1),w=L.slice()),m=w.length,x>m&&w.unshift(0),i(b,w,x,f),-1==a&&(x=b.length,a=e(L,b,A,x),1>a&&(d++,i(b,x>A?D:L,x,f))),x=b.length):0===a&&(d++,b=[0]),N[l++]=d,a&&b[0]?b[x++]=R[q]||0:(b=[R[q]],x=1);while((q++=10;d/=10)l++;v.e=l+h*p-1,o(v,c?s+v.e+1:s,u,g)}return v}}();if(Nn=I(Nn),mn=new Nn(mn),vn=new Nn(vn),"function"==typeof define&&define.amd)define(function(){return Nn});else if("undefined"!=typeof module&&module.exports){if(module.exports=Nn,!bn)try{bn=require("crypto")}catch(Tn){}}else n||(n="undefined"!=typeof self&&self&&self.self==self?self:Function("return this")()),ln=n.Decimal,Nn.noConflict=function(){return n.Decimal=ln,Nn},n.Decimal=Nn}(this);
+//# sourceMappingURL=doc/decimal.js.map
\ No newline at end of file
diff --git a/js/mapviewgl.js b/js/mapviewgl.js
index 11cb7db..62a2887 100644
--- a/js/mapviewgl.js
+++ b/js/mapviewgl.js
@@ -2,12 +2,15 @@ if ( ! Detector.webgl ) Detector.addGetWebGLMessage();
var camera, controls, scene, renderer;
var clock = new THREE.Clock();
+var raycaster = new THREE.Raycaster();
+var mouse = new THREE.Vector2(), INTERSECTED;
var WIDTH = window.innerWidth , HEIGHT = window.innerHeight
window.onload = function() {
loadData(function() {
init();
animate();
+populateUserFields();
});
}
@@ -54,18 +57,13 @@ function init() {
controls.dampingFactor = 0.25;
controls.enableZoom = true;
controls.addEventListener( 'change', render );
-
-
-
-
+ document.addEventListener( 'mousedown', onCanvasClick, false );
var Text2D = THREE_Text.Text2D;
var SpriteText2D = THREE_Text.SpriteText2D;
var textAlign = THREE_Text.textAlign
-var raycaster = new THREE.Raycaster();
-var mouse = new THREE.Vector2();
var b_geometry, b_material, b_mesh, p_geometry, p_material, p_mesh, s_geometry, s_material, s_mesh, l_text;
@@ -83,7 +81,7 @@ for (var key in jsonEmpire) {
b_mesh.position.x = border.x;
b_mesh.position.y = border.y;
b_mesh.position.z = border.z;
- b_mesh.name = border.name;
+ b_mesh.name = escapeHTML(border.name);
scene.add( b_mesh );
if (border.radius > 10) {
l_text = new Text2D(border.name, { align: textAlign.center, font: '25px Arial', fillStyle: '#777' , antialias: false });
@@ -105,9 +103,9 @@ for (var key in jsonEmpire) {
p_mesh.position.x=planet.x;
p_mesh.position.y=planet.y;
p_mesh.position.z=planet.z;
- p_mesh.name = planet.name;
+ p_mesh.name = escapeHTML(planet.name);
scene.add( p_mesh );
- l_text = new Text2D(planet.name, { align: textAlign.right, font: '12px Arial', fillStyle: '#FFF' , antialias: false });
+ l_text = new Text2D(escapeHTML(planet.name), { align: textAlign.right, font: '12px Arial', fillStyle: '#FFF' , antialias: false });
l_text.material.alphaTest = 0.0;
l_text.position.set(planet.x,planet.y,planet.z);
l_text.scale.set(0.25,0.25,0.25);
@@ -123,9 +121,9 @@ for (var key in jsonEmpire) {
s_mesh.position.x=base.x;
s_mesh.position.y=base.y;
s_mesh.position.z=base.z;
- s_mesh.name = base.name;
+ s_mesh.name = escapeHTML(base.name);
scene.add( s_mesh );
- l_text = new Text2D(base.name, { align: textAlign.left, font: '12px Arial', fillStyle: '#ABABAB' , antialias: false });
+ l_text = new Text2D(escapeHTML(base.name), { align: textAlign.left, font: '12px Arial', fillStyle: '#ABABAB' , antialias: false });
l_text.material.alphaTest = 0.0;
l_text.position.set(base.x,base.y+3,base.z);
l_text.scale.set(0.20,0.20,0.20);
@@ -148,20 +146,46 @@ window.onresize = function() {
render();
}
+function onCanvasClick( event ) {
+
+ //event.preventDefault();
+
+ mouse.x = ( event.clientX / window.innerWidth ) * 2 - 1;
+ mouse.y = - ( event.clientY / window.innerHeight ) * 2 + 1;
+
+ raycaster.setFromCamera( mouse, camera );
+ var intersects = raycaster.intersectObjects( scene.children );
+
+ if ( intersects.length > 0 ) {
+ if ( INTERSECTED != intersects[ 0 ].object ) {
+
+ INTERSECTED = intersects[ 0 ].object;
+ // console.log( INTERSECTED.name );
+ document.getElementById(lastInputBox).value = INTERSECTED.name;
+
+ }
+
+ } else {
+
+ INTERSECTED = null;
+
+ }
+
+ }
+
function animate() {
var delta = clock.getDelta();
requestAnimationFrame( animate );
scene.updateMatrixWorld()
controls.update(delta);
render();
-
-
- }
+}
function render () {
//requestAnimationFrame( render );
renderer.render( scene, camera );
+ // find intersections
}
@@ -187,7 +211,7 @@ function zoomfocus(name) {
for (var type in types) {
var objects = listobjects(types[type]);
for ( var key in objects ) {
- if (escapeHTML(key) == name) {
+ if (key == name) {
var object = objects[key];
controls.target.x = object.x;
controls.target.y = object.y;
@@ -225,3 +249,53 @@ function removeEntity(object) {
scene.remove( selectedObject );
animate();
}
+
+// Calculates SU/s with given warp factor
+function calcSUpS(warpfactor) {
+ // 14.0*29.979246*1298.737508 = 257494817.55 SU/s
+ // Velocity = WF^3.333333*lightspeed*cochranes
+ // 3087467836.3256578445 = 1 Parsec
+ var cochranes = 1298.737508; // Average cochranes
+ var lightspeed = 29.979246; // Lightspeed constant
+ var exponent = 3.333333;
+
+ var sus = Math.pow(warpfactor,exponent) * lightspeed * cochranes ;
+ return sus;
+}
+
+function su2pc ( su ) {
+ return su / 3087467836.3256578445;
+}
+
+// Calculates ETA for given distance and velocity.
+// Velocity should be supplied as an array of speed and unit
+function calcETA(velocity,distance) {
+ var speed = velocity.speed;
+ var unit = velocity.unit;
+ var seconds;
+ switch (unit) {
+ case 'SU/s':
+ seconds = new Decimal( distance / su2pc(speed) );
+ break;
+ case 'PC/s':
+ seconds = new Decimal( distance / speed );
+ break;
+ case 'WF':
+ seconds = distance / su2pc(calcSUpS(speed));
+ break;
+ default:
+ throw "Invalid unit of speed."
+ }
+
+ return seconds;
+
+}
+
+// Calculate the distance between two named points ( Stations or Bases )
+function calcDist(pointa, pointb) {
+ var obj_A = scene.getObjectByName(pointa);
+ var obj_B = scene.getObjectByName(pointb);
+
+ var distance = obj_A.position.distanceTo(obj_B.position);
+ return distance;
+}
diff --git a/js/three.js b/js/three.js
index c8418a0..5d86dad 100644
--- a/js/three.js
+++ b/js/three.js
@@ -2504,9 +2504,9 @@ THREE.Vector3.prototype = {
projectOnVector: function ( vector ) {
var scalar = vector.dot( this ) / vector.lengthSq();
-
+
return this.copy( vector ).multiplyScalar( scalar );
-
+
},
projectOnPlane: function () {
@@ -3551,7 +3551,7 @@ THREE.Euler.prototype = {
return function reorder( newOrder ) {
q.setFromEuler( this );
-
+
return this.setFromQuaternion( q, newOrder );
};
@@ -4649,7 +4649,7 @@ THREE.Matrix3.prototype = {
return this.identity();
}
-
+
var detInv = 1 / det;
te[ 0 ] = t11 * detInv;
@@ -5383,7 +5383,7 @@ THREE.Matrix4.prototype = {
return this.identity();
}
-
+
var detInv = 1 / det;
te[ 0 ] = t11 * detInv;
@@ -33000,7 +33000,7 @@ THREE.SpritePlugin = function ( renderer, sprites ) {
}
function painterSortStable ( a, b ) {
-
+
if ( a.renderOrder !== b.renderOrder ) {
return a.renderOrder - b.renderOrder;
@@ -36164,7 +36164,7 @@ THREE.CubicBezierCurve.prototype.getPoint = function ( t ) {
var b3 = THREE.ShapeUtils.b3;
- return new THREE.Vector2(
+ return new THREE.Vector2(
b3( t, this.v0.x, this.v1.x, this.v2.x, this.v3.x ),
b3( t, this.v0.y, this.v1.y, this.v2.y, this.v3.y )
);
@@ -36175,7 +36175,7 @@ THREE.CubicBezierCurve.prototype.getTangent = function( t ) {
var tangentCubicBezier = THREE.CurveUtils.tangentCubicBezier;
- return new THREE.Vector2(
+ return new THREE.Vector2(
tangentCubicBezier( t, this.v0.x, this.v1.x, this.v2.x, this.v3.x ),
tangentCubicBezier( t, this.v0.y, this.v1.y, this.v2.y, this.v3.y )
).normalize();
@@ -36237,7 +36237,7 @@ THREE.EllipseCurve = function ( aX, aY, xRadius, yRadius, aStartAngle, aEndAngle
this.aEndAngle = aEndAngle;
this.aClockwise = aClockwise;
-
+
this.aRotation = aRotation || 0;
};
@@ -36263,7 +36263,7 @@ THREE.EllipseCurve.prototype.getPoint = function ( t ) {
angle = this.aStartAngle + t * deltaAngle;
}
-
+
var x = this.aX + this.xRadius * Math.cos( angle );
var y = this.aY + this.yRadius * Math.sin( angle );
@@ -36346,7 +36346,7 @@ THREE.QuadraticBezierCurve3 = THREE.Curve.create(
function ( t ) {
- var b2 = THREE.ShapeUtils.b2;
+ var b2 = THREE.ShapeUtils.b2;
return new THREE.Vector3(
b2( t, this.v0.x, this.v1.x, this.v2.x ),
@@ -40467,7 +40467,7 @@ THREE.ArrowHelper.prototype.setColor = function ( color ) {
*/
THREE.BoxHelper = function ( object, color ) {
-
+
if ( color === undefined ) color = 0xffff00;
var indices = new Uint16Array( [ 0, 1, 1, 2, 2, 3, 3, 0, 4, 5, 5, 6, 6, 7, 7, 4, 0, 4, 1, 5, 2, 6, 3, 7 ] );
@@ -41869,4 +41869,3 @@ THREE.MorphBlendMesh.prototype.update = function ( delta ) {
}
};
-
diff --git a/webviewgl.htm b/webviewgl.htm
index c050382..d9f847c 100644
--- a/webviewgl.htm
+++ b/webviewgl.htm
@@ -2,6 +2,7 @@
+
@@ -30,8 +31,8 @@
ul.wvg-navbar li { width:auto; height: 100%; float: left; } .wvg-tablink { margin: 0; padding: 0; padding: 8px 10px; font-weight: bold; text-align: center; font-family: 'Space Mono', monospace; color:#67989A; }
.wvg-tab-active { background-color: #0D4A4D; color: #003133; }
.wvg-tools { width: 100%; height: 98%; background: #333; display: none; color: #AAA; padding-top: 2vh; padding-left:1vw; padding-right: 2.5vw;}
- .wvg-tools select {
- width: 75%;
+ .wvg-tools select, .wvg-tools input {
+ width: 12vw;
padding: 5px;
font-size: 16px;
line-height: 1;
@@ -43,8 +44,9 @@
color: #67989A;
margin: 0 auto;
}
- .wvg-tools span { text-align: center; color: #FFF; font-family: 'Space Mono', monospace; margin: 0 auto;}
- .wvg-first { display: block; }
+ .wvg-tools input { background: #333; width: 11.4vw; }
+ .wvg-tools span { text-align: center; color: #FFF; font-family: 'Space Mono', monospace; display: block; padding-right: 3vw; }
+ .wvg-first { display: block; }
#wrapper { height: inherit; width: 100%; }
.active { display: block; }
input[type=radio], input[type=checkbox] {
@@ -86,17 +88,22 @@
font-family: 'Space Mono', monospace;
color: #003133;
font-size: 14px;
+ font-weight: bolder;
width: 75%;
height: 4vh;
padding: 3px;
+ margin-top:1vh;
border: solid #67878A 1px;
text-decoration: none;
}
-
.btn:hover {
background: #0D4A4D;
text-decoration: none;
}
+ .tool-header { font-weight: bold; padding-top: 5vh; display: block; }
+
+ .toolsep { margin-right: 1vw; padding:0; padding-top: 1vh; padding-bottom: 2.5vh; border-bottom: 1px #AAA solid; height: 1vh; display: block; width: 64%;}
+ .calc_data { padding-top: 2.5vh; font-size: 0.9em; }
@@ -105,16 +112,47 @@