X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaVtk%2FvtkVectorsVisu.cpp;h=af6fe0d9c8eff54dbf9aaacf7a77d4112f494876;hb=3cfec8aa0ab76e72a0a4682155c671d5ff75ad0b;hp=43df474428cfa2e3e5c0701424a4b178ad4da08d;hpb=41a74698bb0203749248628baa1503144e1f12f7;p=creaVtk.git diff --git a/lib/creaVtk/vtkVectorsVisu.cpp b/lib/creaVtk/vtkVectorsVisu.cpp index 43df474..af6fe0d 100644 --- a/lib/creaVtk/vtkVectorsVisu.cpp +++ b/lib/creaVtk/vtkVectorsVisu.cpp @@ -29,12 +29,17 @@ #include "vtkProperty.h" +//Borrame +#include "vtkPointData.h" + + //------------------------------------------------------------------------------ vtkVectorsVisu::vtkVectorsVisu() :vtkVectorsTensorsVisuBase() { _vtkarrowsource = vtkArrowSource::New(); - _vtkglyph = vtkGlyph3D::New(); + _vtklinesource = vtkLineSource::New(); + _vtkglyph = vtkGlyph3D::New(); } @@ -49,20 +54,37 @@ 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"); + +vtkPointData *data = _vtkglyph->GetOutput()->GetPointData(); +//printf("EED -------------------------------------------\n"); +//_vtkglyph->GetOutput()->Print(std::cout); +//printf("EED -------------------------------------------\n"); +//data->Print(std::cout); +printf("EED -------------------------------------------\n"); +int i,sizeDa = data->GetNumberOfArrays(); +printf("EED vtkVectorsVisu::Process sizeDa %d \n", sizeDa ); +for (i=0;iGetArrayName(i) ); + data->GetArray(i)->Print(std::cout); + printf("EED -------------------------------------------\n"); +} + //EED _pdm->SetScalarRange( range ); //EED vtkPolyData *pd = vGlyphFlowPlane->GetOutput(); //EED vtkPointData *pointdata = pd->GetPointData(); @@ -74,23 +96,35 @@ printf("EED vtkVectorsVisu::Process() 5.1\n"); //EED pointdata->AddArray( nda ); //EED bbGetInputIn()->GetPointData()->AddArray( nda ); //EED2 _pdm->ScalarVisibilityOn(); -printf("EED vtkVectorsVisu::Process() 6\n"); - _pdm->SetScalarModeToUsePointFieldData(); + + + + + _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"); }