void PolyDataToActor::bbUserSetDefaultValues()
{
- firsttime=true;
+ actorAdded=false;
std::vector<double> colour;
colour.push_back(1.0);
colour.push_back(1.0);
colour.push_back(0.5);
bbSetInputColour(colour);
+ bbSetInputActive(true);
bbSetInputIn(NULL);
bbSetInputRenderer(NULL);
bbSetInputTransform(NULL);
bbSetInputOpacity(1);
bbSetInputRepresentation(2);
bbSetInputLineWidth(1);
+ bbSetInputScalarVisibility(false);
polydatamapper = NULL;
vtkactor = NULL;
// polydatamapper->SetInput(marchingcubes->GetOutput());
vtkactor->SetMapper(polydatamapper);
-// polydatamapper->ScalarVisibilityOff();
- polydatamapper->ScalarVisibilityOn();
polydatamapper->ImmediateModeRenderingOn();
}
//---------------------------------------------------------------------
- void PolyDataToActor::DoProcess()
- {
- polydatamapper->SetInput( bbGetInputIn() );
-
- vtkactor->GetProperty()->SetRepresentation( bbGetInputRepresentation() );
- vtkactor->GetProperty()->SetLineWidth( bbGetInputLineWidth() );
-
- vtkactor->GetProperty()->SetColor( bbGetInputColour()[0],
- bbGetInputColour()[1],
- bbGetInputColour()[2] );
-
- vtkactor->GetProperty()->SetOpacity( bbGetInputOpacity() );
-
- if ( bbGetInputTransform()!=NULL )
- {
- vtkactor->SetUserTransform( bbGetInputTransform() );
- }
-
- bbSetOutputOut( vtkactor );
-
- // Interface Update
- if ((firsttime==true) && (bbGetInputRenderer()!=NULL ))
- {
- firsttime=false;
- bbGetInputRenderer()->AddActor( vtkactor );
- }
- }
+ void PolyDataToActor::DoProcess()
+ {
+
+ if (bbGetInputActive()==true)
+ {
+ polydatamapper->SetInput( bbGetInputIn() );
+ vtkactor->GetProperty()->SetRepresentation( bbGetInputRepresentation() );
+ vtkactor->GetProperty()->SetLineWidth( bbGetInputLineWidth() );
+
+ vtkactor->GetProperty()->SetColor( bbGetInputColour()[0],
+ bbGetInputColour()[1],
+ bbGetInputColour()[2] );
+
+ vtkactor->GetProperty()->SetOpacity( bbGetInputOpacity() );
+
+ if ( bbGetInputTransform()!=NULL )
+ {
+ vtkactor->SetUserTransform( bbGetInputTransform() );
+ }
+
+ bbSetOutputOut( vtkactor );
+
+ // Interface Update
+ if ((actorAdded==false) && (bbGetInputRenderer()!=NULL ))
+ {
+ actorAdded=true;
+ bbGetInputRenderer()->AddActor( vtkactor );
+ } // actorAdded
+
+ if (bbGetInputScalarVisibility()==true )
+ {
+ polydatamapper->ScalarVisibilityOn();
+ } else {
+ polydatamapper->ScalarVisibilityOff();
+ } // ScalarVisibility
+ } else {
+ // Interface Update
+ if ((actorAdded==true) && (bbGetInputRenderer()!=NULL ))
+ {
+ actorAdded=false;
+ bbGetInputRenderer()->RemoveActor( vtkactor );
+ } // actorAdded
+ } // Active
+ }
+
+
+
} // EO namespace bbtk
#endif //_USE_VTK_