Skip to content

Commit eebb04e

Browse files
committed
Code clean up and 3D preview improvements.
1 parent e7410b4 commit eebb04e

File tree

1 file changed

+59
-52
lines changed

1 file changed

+59
-52
lines changed

editor/main.js

+59-52
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ function changeOperation( select, id ) {
198198
}
199199

200200
function generateOperationSelect(id, operation) {
201-
201+
202202
var html = '<select onchange="changeOperation(this, '+id+')">';
203203
for (var i = 0; i < operations.length; i++ ) {
204204
if ( operation == operations[ i ] )
@@ -215,7 +215,7 @@ function generateOperationSelect(id, operation) {
215215

216216

217217
TGUI.Texture = function() {
218-
218+
219219
this.steps = [];
220220
this.name = "Unknown";
221221
this.counter = 0;
@@ -247,7 +247,7 @@ TGUI.Texture.prototype = {
247247
paramString += '.' + id + '( ' + step.params[ id ].join( ', ' ) + ' )';
248248
else
249249
paramString += '.' + id + '( ' + step.params[ id ] + ' )';
250-
250+
251251
}
252252

253253
switch( step.operation ) {
@@ -280,7 +280,7 @@ TGUI.Texture.prototype = {
280280

281281
}
282282
code+=";";
283-
283+
284284
ctx.putImageData( _texture.toImageData( ctx ), 0, 0 );
285285

286286
cube.material.map.needsUpdate = true;
@@ -289,7 +289,7 @@ TGUI.Texture.prototype = {
289289
Prism.highlightAll();
290290

291291
},
292-
292+
293293
getStepById: function ( id ) {
294294

295295
for ( var i = 0; i < this.steps.length; i++ ) {
@@ -313,34 +313,37 @@ TGUI.Texture.prototype = {
313313
texture.render();
314314

315315
}
316+
316317
},
317318

318-
regenerateStepList: function() {
319+
regenerateStepList: function () {
319320

320321
var options = [];
321-
322-
for (var i = 0; i < this.steps.length; i++ ) {
323-
322+
323+
for ( var i = 0; i < this.steps.length; i ++ ) {
324+
324325
var step = this.steps[ i ];
325326
var select = generateOperationSelect( step.id, step.operation );
326327
options.push( { value: step.id, html: select + ' (ID=' + step.id + ') ' + step.type +' <button onclick="texture.deleteStep(' + step.id + ')" style="color:#f99;float:right">delete</button>'} );
328+
327329
}
328-
330+
329331
stepList.setOptions( options );
330332

331333
if ( this.steps.length > 0 ) {
332-
334+
333335
var lastId = this.steps[ this.steps.length - 1 ].id;
334336
stepList.setValue( lastId );
335337
generatorSelected( lastId );
336338

337-
}
338-
else
339-
{
339+
} else {
340+
340341
if ( currentGenerator != null ) {
341342
generatorPanels[ currentGenerator.type ].dom.style.display = "none";
342343
}
344+
343345
}
346+
344347
},
345348

346349
add: function ( type, operation ) {
@@ -356,7 +359,7 @@ TGUI.Texture.prototype = {
356359
}
357360

358361
function updateControlParameter( e ) {
359-
362+
360363
if ( e.srcElement.id.indexOf(".") !== -1 ) {
361364

362365
var ids = e.srcElement.id.split(".");
@@ -369,6 +372,7 @@ function updateControlParameter( e ) {
369372
}
370373

371374
texture.render();
375+
372376
}
373377

374378
function generatorSelected( id ) {
@@ -389,14 +393,13 @@ function generatorSelected( id ) {
389393
for ( var idParam in TGUI.GeneratorDefinitions[ type ].parameters ) {
390394

391395
param = TGUI.GeneratorDefinitions[ type ].uiparameters[ idParam ];
392-
396+
393397
if ( param.length > 1 ) {
394-
395-
for ( var i = 0; i < param.length; i++ )
398+
399+
for ( var i = 0; i < param.length; i ++ )
396400
param[ i ].setValue( currentGenerator.params[ idParam ][ i ] );
397401

398-
}
399-
else {
402+
} else {
400403

401404
param[ 0 ].setValue( currentGenerator.params[ idParam ] );
402405
}
@@ -424,8 +427,8 @@ function init() {
424427

425428
document.getElementById("sidebar2").appendChild( stepList.dom );
426429

427-
for ( var definitionId in TGUI.GeneratorDefinitions )
428-
{
430+
for ( var definitionId in TGUI.GeneratorDefinitions ) {
431+
429432
var panel = new UI.CollapsiblePanel();
430433
panel.setId( definitionId );
431434

@@ -440,37 +443,37 @@ function init() {
440443
TGUI.GeneratorDefinitions[ definitionId ].uiparameters = {};
441444

442445
for ( var idParam in parameters ) {
443-
446+
444447
var param = parameters[ idParam ];
445-
448+
446449
var row = new UI.Panel();
447-
450+
448451
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ] = [];
449452

450453
row.setId( definitionId + "." + idParam );
451454
row.add( new UI.Text( idParam ).setWidth( '90px' ) );
452455

453456
switch ( param.type ) {
454457

455-
case "number":
458+
case "number":
456459
var c = new UI.Number().setWidth( '50px' ).onChange( updateControlParameter ).setId( idParam );
457-
if ( param.step )
460+
if ( param.step )
458461
c.step = param.step;
459462

460463
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ].push(c);
461464

462465
row.add( c );
463466
break;
464467

465-
case "vec2i":
468+
case "vec2i":
466469
var c1 = new UI.Integer().setWidth( '50px' ).onChange( updateControlParameter ).setId( idParam+'.0');
467470
var c2 = new UI.Integer().setWidth( '50px' ).onChange( updateControlParameter ).setId( idParam+'.1');
468471
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ].push(c1);
469472
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ].push(c2);
470473
row.add( c1, c2 );
471474
break;
472475

473-
case "vec2f":
476+
case "vec2f":
474477
var c1 = new UI.Number().setWidth( '50px' ).onChange( updateControlParameter ).setId( idParam+'.0');
475478
var c2 = new UI.Number().setWidth( '50px' ).onChange( updateControlParameter ).setId( idParam+'.1');
476479
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ].push(c1);
@@ -483,20 +486,25 @@ function init() {
483486
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ].push(c);
484487
row.add( c );
485488
break;
486-
489+
487490
case "color":
488491
var c = new UI.Color().setWidth( '50px' );
489492
TGUI.GeneratorDefinitions[ definitionId ].uiparameters[ idParam ].push(c);
490493
row.add( c );
491494
break;
492495

493-
default:
496+
default:
494497
console.error("Unknown param type",param.type);
495498
}
499+
496500
panel.add( row );
501+
497502
}
503+
498504
panel.dom.style.display = "none";
505+
499506
}
507+
500508
document.getElementById("sidebar").appendChild( container.dom );
501509

502510
}
@@ -506,55 +514,54 @@ var sphere;
506514
var material;
507515

508516
function init3D() {
509-
517+
510518
var scene = new THREE.Scene();
511-
519+
512520
var container = document.getElementById("preview3d");
513521

514-
var camera = new THREE.PerspectiveCamera( 75, container.clientWidth / container.clientHeight, 0.1, 1000 );
515-
var renderer = new THREE.WebGLRenderer();
522+
var camera = new THREE.PerspectiveCamera( 50, container.clientWidth / container.clientHeight, 0.1, 1000 );
523+
var renderer = new THREE.WebGLRenderer( { antialias: true } );
516524

517525
renderer.setSize( container.clientWidth, container.clientHeight );
518526
document.getElementById("preview3d").appendChild( renderer.domElement );
519527

520-
material = new THREE.MeshBasicMaterial( {
521-
color: 0xffffff,
528+
material = new THREE.MeshBasicMaterial( {
529+
color: 0xffffff,
522530
transparent: true,
523531
map: new THREE.Texture( document.getElementById("preview") ) } );
524-
525-
// Add cube
526-
var cubeGeometry = new THREE.BoxGeometry(10,10,10);
532+
533+
// Add cube
534+
var cubeGeometry = new THREE.BoxGeometry( 10, 10, 10 );
527535
cube = new THREE.Mesh( cubeGeometry, material );
528536
scene.add( cube );
529537

530-
var sphereGeometry = new THREE.SphereGeometry(10,10,10);
538+
var sphereGeometry = new THREE.SphereGeometry( 7, 10, 10 );
531539
sphere = new THREE.Mesh( sphereGeometry, material );
532540
scene.add( sphere );
533541
sphere.visible = false;
534542

535543
scene.add( new THREE.AmbientLight( 0x111111 ) );
536544

537545
camera.position.z = 20;
538-
539-
function renderScene()
540-
{
546+
547+
function renderScene() {
541548
requestAnimationFrame( renderScene );
542-
543-
var timer = 0.001 * Date.now();
549+
550+
var timer = 0.0005 * Date.now();
544551

545552
cube.rotation.y = timer;
546553
sphere.rotation.y = timer;
547-
554+
548555
renderer.render(scene, camera);
549556
}
550-
551-
renderScene();
557+
558+
renderScene();
552559
}
553560

554561
function showObject( button ) {
555562

556-
if ( button.id == "cube" )
557-
{
563+
if ( button.id == "cube" ) {
564+
558565
cube.visible = true;
559566
sphere.visible = false;
560567
button.className = "selected";
@@ -575,4 +582,4 @@ var texture = new TGUI.Texture();
575582
var stepList;
576583
var currentGenerator = null;
577584
var generatorPanels = {};
578-
var ctx;
585+
var ctx;

0 commit comments

Comments
 (0)