#include "vtkProperty.h"
+//Borrame
+#include "vtkPointData.h"
+
+
//------------------------------------------------------------------------------
vtkVectorsVisu::vtkVectorsVisu()
:vtkVectorsTensorsVisuBase()
{
- _vtkarrowsource = vtkArrowSource::New();
- _vtkglyph = vtkGlyph3D::New();
+ _vtkarrowsource = vtkArrowSource::New();
+ _vtkglyph = vtkGlyph3D::New();
+ _vtklinesource = vtkLineSource::New();
+
+ double point1[3];
+ double point2[3];
+ point1[0]=1;
+ point1[1]=0;
+ point1[2]=0;
+ point2[0]=-1;
+ point2[1]=0;
+ point2[2]=0;
+ _vtklinesource->SetPoint1( point1 );
+ _vtklinesource->SetPoint2( point2 );
}
//------------------------------------------------------------------------------
void vtkVectorsVisu::Process()
{
-printf("EED vtkVectorsVisu::Process() start\n");
if(_active==true)
{
-printf("EED vtkVectorsVisu::Process() 1\n");
_vtkglyph->SetInput( GetDataObject() );
-printf("EED vtkVectorsVisu::Process() 2\n");
- _vtkglyph->SetSource( _vtkarrowsource->GetOutput() );
-printf("EED vtkVectorsVisu::Process() 3\n");
+ if(GetTypeForm()==1) // source Arrow
+ {
+ _vtkglyph->SetSource( _vtkarrowsource->GetOutput() );
+ } else { // source Line
+ _vtkglyph->SetSource( _vtklinesource->GetOutput() );
+ }
_vtkglyph->SetScaleModeToScaleByVector();
_vtkglyph->SetColorModeToColorByVector();
_vtkglyph->SetScaleFactor( GetScaleFactor() );
-printf("EED vtkVectorsVisu::Process() 4\n");
_vtkglyph->Update();
-printf("EED vtkVectorsVisu::Process() 5\n");
-
_pdm->SetInput( _vtkglyph->GetOutput());
-printf("EED vtkVectorsVisu::Process() 5.1\n");
-//EED _pdm->SetScalarRange( range );
-//EED vtkPolyData *pd = vGlyphFlowPlane->GetOutput();
-//EED vtkPointData *pointdata = pd->GetPointData();
-//EED vtkDataArray *da = pointdata->GetVectors();
-//EED vtkDataArray *nda = vtkFloatArray::New();
-//EED nda->DeepCopy(da);
-// pointdata->RemoveArray( "GlyphVector" );
-// bbGetInputIn()->GetPointData()->RemoveArray( "GlyphVector" );
-//EED pointdata->AddArray( nda );
-//EED bbGetInputIn()->GetPointData()->AddArray( nda );
-//EED2 _pdm->ScalarVisibilityOn();
-printf("EED vtkVectorsVisu::Process() 6\n");
- _pdm->SetScalarModeToUsePointFieldData();
+vtkPointData *data = _vtkglyph->GetOutput()->GetPointData();
+//printf("EED -------------------------------------------\n");
+//_vtkglyph->GetOutput()->Print(std::cout);
+//printf("EED -------------------------------------------\n");
+//data->Print(std::cout);
+int i,sizeDa = data->GetNumberOfArrays();
+for (i=0;i<sizeDa;i++)
+{
+ data->GetArray(i)->Print(std::cout);
+}
+
+ _pdm->ScalarVisibilityOn();
+ _pdm->SetColorModeToMapScalars();
+ //_pdm->SetColorModeToDefault();
+ // _pdm->SetColorModeToDirectScalars(); // NOT compile
+ _pdm->SetScalarModeToUsePointFieldData();
+ _pdm->ImmediateModeRenderingOn();
+
+ _LutEED->SetVectorModeToComponent();
+ //_LutEED->SetVectorModeToRGBColors();
+ //_LutEED->SetVectorModeToMagnitud();
+
+
+// _pdm->SetScalarModeToUsePointFieldData();
_pdm->SetLookupTable( _LutEED );
-printf("EED vtkVectorsVisu::Process() 7\n");
_pdm->SelectColorArray( "GlyphVector" );
// vSliceMapperVec->SetLookupTable( vGreenToRedLut );
// vSliceMapperVec->SetColorModeToMapScalars();
_actor->SetMapper( _pdm );
-printf("EED vtkVectorsVisu::Process() 8\n");
_actor->GetProperty()->SetOpacity( GetOpacity() );
-printf ("EED vtkVectorsVisu::Process opacity:%f\n",GetOpacity() );
}// if _active
-printf("EED vtkVectorsVisu::Process() 9\n");
VisibilityActor();
-printf("EED vtkVectorsVisu::Process() end\n");
}