- vtkTextActor *textActor = vtkTextActor::New();
- textActor->SetTextScaleModeToProp();
- textActor->SetDisplayPosition(90, 50);
- textActor->SetInput(bbGetInputIn().c_str());
-
- textActor->GetPosition2Coordinate()->SetCoordinateSystemToNormalizedViewport();
- textActor->GetPosition2Coordinate()->SetValue(0.6, 0.1);
-
- vtkTextProperty *tprop = textActor->GetTextProperty();
- tprop->SetFontSize(18);
- tprop->SetFontFamilyToArial();
- tprop->SetJustificationToCentered();
-// tprop->BoldOn();
-// tprop->ItalicOn();
-// tprop->ShadowOn();
- tprop->SetColor(0, 0, 1);
-
- bbGetInputRenderer()->AddActor2D(textActor);
+
+ if (_textActor==NULL)
+ {
+ _textActor = vtkTextActor::New();
+ _textActor->GetPositionCoordinate()->SetCoordinateSystemToWorld();
+
+// _textActor->GetPositionCoordinate()->SetCoordinateSystemToDisplay ();
+// _textActor->GetPositionCoordinate()->SetCoordinateSystemToNormalizedDisplay ();
+// _textActor->GetPositionCoordinate()->SetCoordinateSystemToViewport ();
+// _textActor->GetPositionCoordinate()->SetCoordinateSystemToNormalizedViewport ();
+// _textActor->GetPositionCoordinate()->SetCoordinateSystemToView ();
+// _textActor->GetPositionCoordinate()->SetCoordinateSystemToWorld ();
+
+
+ if (bbGetInputRenderer()!=NULL)
+ {
+ bbGetInputRenderer()->AddActor2D(_textActor);
+ }
+ }
+
+ _textActor->SetInput(bbGetInputIn().c_str());
+
+// textActor->SetTextScaleModeToProp();
+// textActor->SetDisplayPosition(90, 50);
+// textActor->GetPosition2Coordinate()->SetCoordinateSystemToNormalizedViewport();
+
+ double px=0;
+ double py=0;
+ double spx=1;
+ double spy=1;
+ if (bbGetInputPoint().size()>=2)
+ {
+ px=bbGetInputPoint()[0];
+ py=bbGetInputPoint()[1];
+
+ if (bbGetInputSpacing().size()>=2)
+ {
+ spx=bbGetInputSpacing()[0];
+ spy=bbGetInputSpacing()[1];
+ }
+
+ }
+// _textActor->SetTextScaleModeToProp();
+ _textActor->SetPosition( px*spx , py*spy );
+
+// _textActor->SetPosition( 150,150 );
+// _textActor->GetPosition2Coordinate()->SetCoordinateSystemToNormalizedViewport();
+// _textActor->GetPosition2Coordinate()->SetValue( 0.2 , 0.2 );
+// textActor->GetPosition2Coordinate()->SetValue(0.6, 0.1);
+
+ vtkTextProperty *tprop = _textActor->GetTextProperty();
+ tprop->SetFontSize( bbGetInputFontSize() );
+ tprop->SetFontFamilyToArial();
+ tprop->SetJustificationToCentered();
+ if (bbGetInputFontBold()==true) tprop->BoldOn(); else tprop->BoldOff();
+ if (bbGetInputFontItalic()==true) tprop->ItalicOn(); else tprop->ItalicOff();
+ if (bbGetInputFontShadow()==true) tprop->ShadowOn(); else tprop->ShadowOff();
+ if (bbGetInputColor().size()>=3)
+ {
+ tprop->SetColor( bbGetInputColor()[0] , bbGetInputColor()[1] , bbGetInputColor()[2] );
+ }
+ tprop->SetOpacity( bbGetInputOpacity() );