X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?p=creaWT.git;a=blobdiff_plain;f=wt%2Fbbtk_wt_PKG%2Fsrc%2FbbwtViewerNVWeb.cxx;fp=wt%2Fbbtk_wt_PKG%2Fsrc%2FbbwtViewerNVWeb.cxx;h=094ef1277eaf0d149445932f9b6e9555e1188918;hp=8fa80e4ef377bcbac25cb308f8b53f3b27024291;hb=693adbbdf002a39858d73a741ff0477ecf7fa0da;hpb=b7b0a13b53f02c107951c2561ce54c6b7db33684 diff --git a/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx b/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx index 8fa80e4..094ef12 100644 --- a/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx +++ b/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx @@ -89,137 +89,135 @@ BBTK_BLACK_BOX_IMPLEMENTATION(ViewerNVWeb,bbtk::WtBlackBox); //-------------------------------------------------------------------------------------------------------- void ViewerNVWeb::Process() { - printf("EED ViewerNVWeb::Process start\n "); - Wt::WContainerWidget* w = (Wt::WContainerWidget*)bbGetOutputWidget(); - std::string jsCom; - - //jsCom = "\ - var volume = new X.volume();\ - volume.spacing = [0.7,0.7,0.7 ];\ - volume.file = '" + bbGetInputImagePath() + "';\ - " +w->jsRef() + ".mVolume = volume;\ - setTimeout(function(){\ - var center = [0,0,0\ - ];\ - " +w->jsRef() + ".mVolume.center = center;\ - volume.center = [0,0,0];\ - " + wtWindow1->jsRef() + ".mRenderer.add(" + w->jsRef() + ".mVolume);\ - " + wtWindow1->jsRef() + ".mRenderer.onShowTime = function(){\ - " + w->jsRef() +".mVolume.upperThreshold =20000;\ - " + w->jsRef() +".mVolume.windowHigh =1670;\ - var gui = new dat.GUI();\ - var volumegui = gui.addFolder('Volume');\ - var vrController = volumegui.add(" + w->jsRef() +".mVolume, 'volumeRendering');\ - var opacityController = volumegui.add(" + w->jsRef() +".mVolume, 'opacity', 0, 1);\ - var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ - var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ - var sliceXController = volumegui.add(" + w->jsRef() +".mVolume, 'indexX', 0,volume.range[0] - 1);\ - var sliceYController = volumegui.add(" + w->jsRef() +".mVolume, 'indexY', 0,volume.range[1] - 1);\ - var sliceZController = volumegui.add(" + w->jsRef() +".mVolume, 'indexZ', 0,volume.range[2] - 1);\ - " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow2->jsRef() + ".mRenderer.render();\ - " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow3->jsRef() + ".mRenderer.render();\ - " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow4->jsRef() + ".mRenderer.render();\ - };\ - " + wtWindow1->jsRef() + ".mRenderer.render();\ - },500"; - - - if (firstTime==false) + std::string jsCom; +printf("EED ViewerNVWeb::Process %s\n", bbGetInputImagePath().c_str() ); + bool ok; + FILE *ff=fopen( bbGetInputImagePath().c_str() , "r" ); + if (ff) { - firstTime=false; - jsCom = "\ - var volume = new X.volume();\ - volume.spacing = [0.7,0.7,0.7 ];\ - volume.file = '" + bbGetInputImagePath() + "';\ - " +w->jsRef() + ".mVolume = volume;\ - var center = [0,0,0];\ - " +w->jsRef() + ".mVolume.center = center;\ - volume.center = [0,0,0];\ - setTimeout(function(){\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow1->jsRef() + ".mRenderer.render();\ - },300);\ - "; - w->doJavaScript(jsCom); - } + ok=true; + fclose(ff); + } else { + ok=false; + } - if (firstTime==true) + if (ok==true) { - firstTime=false; - jsCom = "\ - var volume = new X.volume();\ - volume.spacing = [0.7,0.7,0.7 ];\ - volume.file = '" + bbGetInputImagePath() + "';\ - " +w->jsRef() + ".mVolume = volume;\ - var center = [0,0,0];\ - " +w->jsRef() + ".mVolume.center = center;\ - volume.center = [0,0,0];\ - setTimeout(function(){\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow1->jsRef() + ".mRenderer.render();\ - },300);\ - setTimeout(function(){\ - " + w->jsRef() +".mVolume.upperThreshold =20000;\ - " + w->jsRef() +".mVolume.windowHigh =1670;\ - var gui = new dat.GUI();\ - var volumegui = gui.addFolder('Volume');\ - var vrController = volumegui.add(" + w->jsRef() +".mVolume, 'volumeRendering');\ - var opacityController = volumegui.add(" + w->jsRef() +".mVolume, 'opacity', 0, 1);\ - var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ - var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ - var sliceXController = volumegui.add(" + w->jsRef() +".mVolume, 'indexX', 0,volume.range[0] - 1);\ - var sliceYController = volumegui.add(" + w->jsRef() +".mVolume, 'indexY', 0,volume.range[1] - 1);\ - var sliceZController = volumegui.add(" + w->jsRef() +".mVolume, 'indexZ', 0,volume.range[2] - 1);\ - " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow2->jsRef() + ".mRenderer.render();\ - " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow3->jsRef() + ".mRenderer.render();\ - " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow4->jsRef() + ".mRenderer.render();\ - },3000);\ - "; - - // jsCom = "\ - var volume = new X.volume();\ - volume.spacing = [0.7,0.7,0.7 ];\ - volume.file = '" + bbGetInputImagePath() + "';\ - " +w->jsRef() + ".mVolume = volume;\ - var center = [0,0,0\ - ];\ - " +w->jsRef() + ".mVolume.center = center;\ - volume.center = [0,0,0];\ - setTimeout(function(){\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - },300);\ - " + wtWindow1->jsRef() + ".mRenderer.onShowTime = function(){\ - " + w->jsRef() +".mVolume.upperThreshold =20000;\ - " + w->jsRef() +".mVolume.windowHigh =1670;\ - var gui = new dat.GUI();\ - var volumegui = gui.addFolder('Volume');\ - var vrController = volumegui.add(" + w->jsRef() +".mVolume, 'volumeRendering');\ - var opacityController = volumegui.add(" + w->jsRef() +".mVolume, 'opacity', 0, 1);\ - var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ - var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ - var sliceXController = volumegui.add(" + w->jsRef() +".mVolume, 'indexX', 0,volume.range[0] - 1);\ - var sliceYController = volumegui.add(" + w->jsRef() +".mVolume, 'indexY', 0,volume.range[1] - 1);\ - var sliceZController = volumegui.add(" + w->jsRef() +".mVolume, 'indexZ', 0,volume.range[2] - 1);\ - " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow2->jsRef() + ".mRenderer.render();\ - " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow3->jsRef() + ".mRenderer.render();\ - " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow4->jsRef() + ".mRenderer.render();\ - };\ - " + wtWindow1->jsRef() + ".mRenderer.render();"; - - std::cout<<"LOADzzzzzzzzzzzzzzzzzzzzzzzzzzzz"<jsRef() + ".mVolume = volume;\ + var center = [0,0,0];\ + " +w->jsRef() + ".mVolume.center = center;\ + volume.center = [0,0,0];\ + setTimeout(function(){\ + " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow1->jsRef() + ".mRenderer.render();\ + },300);\ + } catch (err) {\ + } \ + "; +*/ + +/* + jsCom = "\ + try{\ + " +w->jsRef() + ".mVolume.file = '" + bbGetInputImagePath() + "';\ + setTimeout(function(){\ + " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow1->jsRef() + ".mRenderer.render();\ + },300);\ + } catch (err) {\ + } \ + "; + w->doJavaScript(jsCom); - } - +*/ + + } + + if (firstTime==true) + { + firstTime=false; + jsCom = "\ + try{\ + var volume = new X.volume();\ + volume.spacing = [0.7,0.7,0.7 ];\ + volume.file = '" + bbGetInputImagePath() + "';\ + " +w->jsRef() + ".mVolume = volume;\ + var center = [0,0,0];\ + " +w->jsRef() + ".mVolume.center = center;\ + volume.center = [0,0,0];\ + setTimeout(function(){\ + " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow1->jsRef() + ".mRenderer.render();\ + },300);\ + setTimeout(function(){\ + " + w->jsRef() +".mVolume.upperThreshold =20000;\ + " + w->jsRef() +".mVolume.windowHigh =1670;\ + var gui = new dat.GUI();\ + var volumegui = gui.addFolder('Volume');\ + var vrController = volumegui.add(" + w->jsRef() +".mVolume, 'volumeRendering');\ + var opacityController = volumegui.add(" + w->jsRef() +".mVolume, 'opacity', 0, 1);\ + var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ + var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ + var sliceXController = volumegui.add(" + w->jsRef() +".mVolume, 'indexX', 0,volume.range[0] - 1);\ + var sliceYController = volumegui.add(" + w->jsRef() +".mVolume, 'indexY', 0,volume.range[1] - 1);\ + var sliceZController = volumegui.add(" + w->jsRef() +".mVolume, 'indexZ', 0,volume.range[2] - 1);\ + " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow2->jsRef() + ".mRenderer.render();\ + " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow3->jsRef() + ".mRenderer.render();\ + " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow4->jsRef() + ".mRenderer.render();\ + },3000);\ + } catch(err) { \ + } \ + "; + + // jsCom = "\ + var volume = new X.volume();\ + volume.spacing = [0.7,0.7,0.7 ];\ + volume.file = '" + bbGetInputImagePath() + "';\ + " +w->jsRef() + ".mVolume = volume;\ + var center = [0,0,0\ + ];\ + " +w->jsRef() + ".mVolume.center = center;\ + volume.center = [0,0,0];\ + setTimeout(function(){\ + " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + },300);\ + " + wtWindow1->jsRef() + ".mRenderer.onShowTime = function(){\ + " + w->jsRef() +".mVolume.upperThreshold =20000;\ + " + w->jsRef() +".mVolume.windowHigh =1670;\ + var gui = new dat.GUI();\ + var volumegui = gui.addFolder('Volume');\ + var vrController = volumegui.add(" + w->jsRef() +".mVolume, 'volumeRendering');\ + var opacityController = volumegui.add(" + w->jsRef() +".mVolume, 'opacity', 0, 1);\ + var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ + var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ + var sliceXController = volumegui.add(" + w->jsRef() +".mVolume, 'indexX', 0,volume.range[0] - 1);\ + var sliceYController = volumegui.add(" + w->jsRef() +".mVolume, 'indexY', 0,volume.range[1] - 1);\ + var sliceZController = volumegui.add(" + w->jsRef() +".mVolume, 'indexZ', 0,volume.range[2] - 1);\ + " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow2->jsRef() + ".mRenderer.render();\ + " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow3->jsRef() + ".mRenderer.render();\ + " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ + " + wtWindow4->jsRef() + ".mRenderer.render();\ + };\ + " + wtWindow1->jsRef() + ".mRenderer.render();"; + + w->doJavaScript(jsCom); + } //if firsttime == true + } // ok //Wt::WApplication::instance()->refresh(); // wtWindow2->resize(Wt::WLength::Auto, 200); @@ -229,9 +227,6 @@ void ViewerNVWeb::Process() Wt::WApplication::instance()->refresh(); - - printf("EED ViewerNVWeb::Process END\n "); - }