X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=wt%2Fbbtk_wt_PKG%2Fsrc%2FbbwtViewerNVWeb.cxx;h=8fa80e4ef377bcbac25cb308f8b53f3b27024291;hb=0aca619f319ce0cf836ff7735740704b1db4de93;hp=33dd441b31c5aacfd3f09169de6cde381e622a90;hpb=6575e8694c2f1c0d56d5acc00d8bb329f53eb65a;p=creaWT.git diff --git a/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx b/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx index 33dd441..8fa80e4 100644 --- a/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx +++ b/wt/bbtk_wt_PKG/src/bbwtViewerNVWeb.cxx @@ -82,260 +82,19 @@ BBTK_BLACK_BOX_IMPLEMENTATION(ViewerNVWeb,bbtk::WtBlackBox); //===== // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) //===== -/*void ViewerNVWeb::Process() -{ - - //------------- This part works perfectly, uncomment it for use it safe - /*Wt::WContainerWidget* w = (Wt::WContainerWidget*)bbGetOutputWidget(); - - cont++; - std::string jsCom; - - - //jsCom = "\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +bbGetInputImagePath() + ".mObject);\ - " + wtWindow1->jsRef() + ".mRenderer.render();"; - - std::cout<jsRef() + ".mRenderer.add(volume);\ - " + wtWindow1->jsRef() + ".mRenderer.render();"; - - - jsCom = "\ - var volume = new X.volume();\ - volume.file = '" + bbGetInputImagePath() + "';\ - " + w->jsRef() +".mVolume = volume;\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow1->jsRef() + ".mRenderer.render();"; - - - if(nType.size() >1) - { - jsCom = jsCom + "\ - " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow2->jsRef() + ".mRenderer.render();"; - } - if(nType.size() >2 ) - { - jsCom = jsCom + "\ - " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow3->jsRef() + ".mRenderer.render();"; - } - if(nType.size() > 3) - { - jsCom = jsCom + "\ - " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow4->jsRef() + ".mRenderer.render();"; - } - - - - - std::cout<<"PROCESSSSS>>>>"<doJavaScript(jsCom); - */ - - /* Wt::WContainerWidget* w = (Wt::WContainerWidget*)bbGetOutputWidget(); - - cont++; - std::string jsCom; - - std::cout<<"Process ----"<jsRef() +".mVolume = volume;\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow1->jsRef() + ".mRenderer.render();"; - - // jsCom = jsCom + "\ - var gui = new dat.GUI();\ - var volumegui = gui.addFolder('Volume');\ - var vrController = volumegui.add(volume, 'volumeRendering');\ - var opacityController = volumegui.add(volume, 'opacity', 0, 1).listen();\ - var lowerThresholdController = volumegui.add(volume, 'lowerThreshold',volume.min, volume.max);\ - var upperThresholdController = volumegui.add(volume, 'upperThreshold',volume.min, volume.max);\ - volumegui.open();"; - - //jsCom = jsCom + "\ - 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).listen();\ - var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', " + w->jsRef() +".mVolume.min," + w->jsRef() +".mVolume.max);\ - var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', " + w->jsRef() +".mVolume.min," + w->jsRef() +".mVolume.max);\ - volumegui.open();"; - - - - - - - - - if(nType.size() >1) - { - jsCom = jsCom + "\ - setTimeout(function(){\ - " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow2->jsRef() + ".mRenderer.render();"; - } - - if(nType.size() >2 ) - { - jsCom = jsCom + "\ - " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow3->jsRef() + ".mRenderer.render();"; - } - - if(nType.size() > 3) - { - jsCom = jsCom + "\ - " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow4->jsRef() + ".mRenderer.render();\ - " + w->jsRef() +".mVolume.upperTheshold =0;\ - " + w->jsRef() +".mVolume.windowLow =0;\ - " + w->jsRef() +".mVolume.windowHigh =1900;"; - - - jsCom = jsCom + "\ - 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).listen();\ - var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ - var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ - volumegui.open();\ - var lowerThresholdController = volumegui.add(" + w->jsRef() +".mVolume, 'lowerThreshold'," + w->jsRef() +".mVolume.min, " + w->jsRef() +".mVolume.max);\ - var upperThresholdController = volumegui.add(" + w->jsRef() +".mVolume, 'upperThreshold'," + w->jsRef() +".mVolume.min, " + w->jsRef() +".mVolume.max);"; - } - - - if(nType.size() >1) - { - jsCom = jsCom + "\ - },2000);"; - } - - - - - std::cout<<"PROCESSSSS>>>>"<doJavaScript(jsCom); - - Wt::WApplication::instance()->refresh(); - - - -}*/ - -void ViewerNVWeb::Process() -{ - - - Wt::WContainerWidget* w = (Wt::WContainerWidget*)bbGetOutputWidget(); - - cont++; - std::string jsCom; - - std::cout<<"Process ----"<jsRef() +".mVolume = volume;\ - " + wtWindow1->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow1->jsRef() + ".onShowTime = function(){"; - - - if(nType.size() >1) - { - jsCom = jsCom + "\ - " + wtWindow2->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow2->jsRef() + ".mRenderer.render();"; - } - - if(nType.size() >2 ) - { - jsCom = jsCom + "\ - " + wtWindow3->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow3->jsRef() + ".mRenderer.render();"; - } - - if(nType.size() > 3) - { - jsCom = jsCom + "\ - " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ - " + wtWindow4->jsRef() + ".mRenderer.render();\ - " + w->jsRef() +".mVolume.upperTheshold =0;\ - " + w->jsRef() +".mVolume.windowLow =0;\ - " + w->jsRef() +".mVolume.windowHigh =1900;"; - - - jsCom = jsCom + "\ - 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).listen();\ - var lowerWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowLow', 0,2000);\ - var upperWindowController = volumegui.add(" + w->jsRef() +".mVolume, 'windowHigh', 0,2000);\ - volumegui.open();\ - var lowerThresholdController = volumegui.add(" + w->jsRef() +".mVolume, 'lowerThreshold'," + w->jsRef() +".mVolume.min, " + w->jsRef() +".mVolume.max);\ - var upperThresholdController = volumegui.add(" + w->jsRef() +".mVolume, 'upperThreshold'," + w->jsRef() +".mVolume.min, " + w->jsRef() +".mVolume.max);"; - } - - - jsCom = jsCom + "\ - };\ - " + wtWindow1->jsRef() + ".mRenderer.render();"; - - - - std::cout<<"PROCESSSSS>>>>"<doJavaScript(jsCom); - - Wt::WApplication::instance()->refresh(); - - - -} //-------------------------------------------------------------------------------------------------------- -//-------------------------------------------------------------------------------------------------------- - - - -void ViewerNVWeb::loadImage() +void ViewerNVWeb::Process() { + printf("EED ViewerNVWeb::Process start\n "); - - Wt::WContainerWidget* w = (Wt::WContainerWidget*)bbGetOutputWidget(); + Wt::WContainerWidget* w = (Wt::WContainerWidget*)bbGetOutputWidget(); std::string jsCom; - std::cout<<"Process ----"<jsRef() + ".mRenderer.render();\ },500"; - jsCom = "\ + + if (firstTime==false) + { + 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\ - ];\ + 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); + } + + if (firstTime==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(){\ @@ -399,7 +180,8 @@ void ViewerNVWeb::loadImage() " + wtWindow3->jsRef() + ".mRenderer.render();\ " + wtWindow4->jsRef() + ".mRenderer.add(" +w->jsRef() + ".mVolume);\ " + wtWindow4->jsRef() + ".mRenderer.render();\ - },3000);"; + },3000);\ + "; // jsCom = "\ var volume = new X.volume();\ @@ -434,12 +216,9 @@ void ViewerNVWeb::loadImage() };\ " + wtWindow1->jsRef() + ".mRenderer.render();"; - - - - - std::cout<<"LOADzzzzzzzzzzzzzzzzzzzzzzzzzzzz"<doJavaScript(jsCom); + std::cout<<"LOADzzzzzzzzzzzzzzzzzzzzzzzzzzzz"<doJavaScript(jsCom); + } //Wt::WApplication::instance()->refresh(); @@ -451,6 +230,7 @@ void ViewerNVWeb::loadImage() Wt::WApplication::instance()->refresh(); + printf("EED ViewerNVWeb::Process END\n "); } @@ -463,10 +243,11 @@ void ViewerNVWeb::bbUserSetDefaultValues() // SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX // Here we initialize the input 'In' to 0 - bbSetInputImagePath(""); - int n[] = {3,2,1,0}; - std::vector nn (n,n+sizeof(n)/sizeof(int)); - bbSetInputnTypeView(nn); + firstTime=true; + bbSetInputImagePath(""); + int n[] = {3,2,1,0}; + std::vector nn (n,n+sizeof(n)/sizeof(int)); + bbSetInputnTypeView(nn); bbSetOutputviewer1(""); bbSetOutputviewer2(""); bbSetOutputviewer3(""); @@ -642,8 +423,7 @@ void ViewerNVWeb::CreateWidget(Wt::WContainerWidget* parent) bbSetOutputWidget(w); - loadImage(); - //Process(); +//EED loadImage(); }