-//-----------------------------------------------------
-void TransferFunctionView::CreateWidget()
-{
- bbtkDebugMessageInc("Core",9,"TransferFunctionView::CreateWxWindow()"<<std::endl);
- mwxwidget = new HistogramWidget(bbGetWxParent(), -1, wxPoint(0,0), wxSize(400,400),wxNO_BORDER ,bbGetInputIn(),1);
- bbtkDebugDecTab("Core",9);
- bbSetOutputWidget( mwxwidget );
+void TransferFunctionView::onColorChange(){
+
+ std::vector<double> greylevel;
+ std::vector<double> value;
+
+ std::vector<double> greylevelcolors;
+ std::vector<double> red;
+ std::vector<double> green;
+ std::vector<double> blue;
+
+ mwxwidget->GetValuesPointsFunction(greylevel, value);
+ mwxwidget->GetValuesColorPointsFunction(greylevelcolors,red, green,blue);
+
+
+ _tfun->RemoveAllPoints();
+ for(int i = 0; i < greylevel.size();i++){
+ _tfun->AddPoint(greylevel[i], value[i]);
+ std::cout<<"TransferFunctionView::Process()transfer function "<<greylevel[i]<<" "<< value[i]<<std::endl;
+ }
+ _ctfun->RemoveAllPoints();
+ for(int i = 0; i < greylevelcolors.size();i++){
+ _ctfun->AddRGBPoint(greylevelcolors[i], red[i],green[i], blue[i]);
+ std::cout<<"TransferFunctionView::Process()transfer color function "<<greylevelcolors[i]<<" "<<red[i]<<" "<<green[i]<<" "<<blue[i]<<std::endl;
+ }
+
+ bbSignalOutputModification();
+
+ _tfun->Update();
+ bbSetOutputOpacityFunction(_tfun);
+ bbSetOutputColorFunction(_ctfun);