X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk_creaVtk_PKG%2Fsrc%2FbbcreaVtkScalarsToColors.cxx;h=17780e12aba3d08fa9263c52e0a951141be5a448;hb=937822256978ed571b7d004ef1a5abe9492a8ada;hp=c8ec324d11e1a0a3bc7e9f25c065cd039431948c;hpb=9cd91c842e8da723181e6cfa0bd237ecc9d41173;p=creaVtk.git diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkScalarsToColors.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkScalarsToColors.cxx index c8ec324..17780e1 100644 --- a/bbtk_creaVtk_PKG/src/bbcreaVtkScalarsToColors.cxx +++ b/bbtk_creaVtk_PKG/src/bbcreaVtkScalarsToColors.cxx @@ -227,9 +227,9 @@ void ScalarsToColors::Process() // std::cout << "Output value = " <SetRange( bbGetInputRange()[0],bbGetInputRange()[1]); // colorLookupTable->SetTableRange( bbGetInputRange()[0],bbGetInputRange()[1]); + colorLookupTable->UseBelowRangeColorOn(); + colorLookupTable->UseAboveRangeColorOn(); } else { colorLookupTable->SetRange(0,255); } @@ -250,19 +252,33 @@ void ScalarsToColors::Process() int iLookTable; for (iLookTable = 0; iLookTableGetTableValue( iLookTable, rgba1); - colorLookupTable->GetTableValue(NumberOfColors-1-iLookTable, rgba2); - colorLookupTable->SetTableValue(NumberOfColors-1-iLookTable , rgba1[0],rgba1[1],rgba1[2],rgba1[3]); - colorLookupTable->SetTableValue( iLookTable , rgba2[0],rgba2[1],rgba2[2],rgba2[3]); + colorLookupTable->GetTableValue( iLookTable, rgba1 ); + colorLookupTable->GetTableValue(NumberOfColors-1-iLookTable, rgba2 ); + colorLookupTable->SetTableValue(NumberOfColors-1-iLookTable, rgba1[0],rgba1[1],rgba1[2],rgba1[3] ); + colorLookupTable->SetTableValue( iLookTable, rgba2[0],rgba2[1],rgba2[2],rgba2[3] ); } // for iLookTable - double rgba[4]; - colorLookupTable->GetTableValue(0,rgba); - rgba[3]=0; - colorLookupTable->SetTableValue(0,rgba); // Transparency if (bbGetInputType()==0) { + // First Element + double rgba[4]; + colorLookupTable->GetTableValue(0,rgba); + rgba[3]=0; + colorLookupTable->SetTableValue(0,rgba); + + colorLookupTable->UseBelowRangeColorOn(); + colorLookupTable->UseAboveRangeColorOn(); + if (bbGetInputBelowAboveRangeTransparence()==true) + { + colorLookupTable->SetBelowRangeColor(1,1,1,0); // White transparent + colorLookupTable->SetAboveRangeColor(1,1,1,0); // White transparent + } else { + colorLookupTable->SetBelowRangeColor(1,1,1,1); // White transparent + colorLookupTable->SetAboveRangeColor(1,1,1,1); // White transparent + } + + // Middle range int i,iMax=(NumberOfColors/16)*4; for (i=0;iSetRange( bbGetInputRange()[0],bbGetInputRange()[1]); -// colorLookupTable->SetTableRange( bbGetInputRange()[0],bbGetInputRange()[1]); +// colorLookupTable->SetTableRange( bbGetInputRange()[0],bbGetInputRange()[1]); ???????? +// colorLookupTable->SetBelowRangeColor(1,1,1,1); // White transparent +// colorLookupTable->SetAboveRangeColor(1,1,1,1); // White transparent + colorLookupTable->UseBelowRangeColorOn(); + colorLookupTable->UseAboveRangeColorOn(); + if (bbGetInputBelowAboveRangeTransparence()==true) + { + colorLookupTable->SetBelowRangeColor(1,1,1,0); // White transparent + colorLookupTable->SetAboveRangeColor(1,1,1,0); // White transparent + } else { + colorLookupTable->SetBelowRangeColor(1,1,1,1); // White transparent + colorLookupTable->SetAboveRangeColor(1,1,1,1); // White transparent + } } else { colorLookupTable->SetRange(0,255); } @@ -297,6 +325,7 @@ void ScalarsToColors::Process() // Transparency if (bbGetInputType()==1) { + // First Element double rgba[4]; colorLookupTable->GetTableValue(0,rgba); rgba[3]=0; @@ -323,7 +352,7 @@ void ScalarsToColors::Process() } // If Type 3 - } // firsttime +// } // firsttime double rgb[3]; std::vectorcolorRGB; _scalarstocolors->GetColor( bbGetInputScalarValue() , rgb ); @@ -349,7 +378,8 @@ void ScalarsToColors::bbUserSetDefaultValues() range.push_back( 1 ); bbSetInputRange(range); bbSetInputScalarValue(0); - firsttime = true; + bbSetInputBelowAboveRangeTransparence(true); +// firsttime = true; _scalarstocolors = NULL; } //=====