X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaVtk%2FvtkVectorsTensorsVisuBase.cpp;h=ee7fc4999d6066a96640c5bedb001e17b4286343;hb=cf0bc4afad6916bb3f3e9d7865ad1c2b19112aea;hp=0e52ef3e4c1ab67b26c71b1abb8136d490223954;hpb=7a66ae84aef4c670d7fb7ce855b39e5a9eb2b4a4;p=creaVtk.git diff --git a/lib/creaVtk/vtkVectorsTensorsVisuBase.cpp b/lib/creaVtk/vtkVectorsTensorsVisuBase.cpp index 0e52ef3..ee7fc49 100644 --- a/lib/creaVtk/vtkVectorsTensorsVisuBase.cpp +++ b/lib/creaVtk/vtkVectorsTensorsVisuBase.cpp @@ -118,6 +118,7 @@ void vtkLookupTableMapDirVectorEED(vtkLookupTableDirectionVector *self, T *input double dirx,diry,dirz; +inIncr=3; printf("EED length %d %p\n", length,input); // mag = new double[length]; for (i = 0; i < length; ++i) @@ -125,13 +126,13 @@ void vtkLookupTableMapDirVectorEED(vtkLookupTableDirectionVector *self, T *input dirx = 0; diry = 0; dirz = 0; - sum = 0; + sum = 0; for (j = 0; j < inIncr; ++j) { - if (j==0) dirx= static_cast(*input); - if (j==1) diry= static_cast(*input); - if (j==2) dirz= static_cast(*input); - tmp = static_cast(*input); + if (j==0) dirx= static_cast(*input); + if (j==1) diry= static_cast(*input); + if (j==2) dirz= static_cast(*input); + tmp = static_cast(*input); sum += (tmp * tmp); ++input; } @@ -141,6 +142,7 @@ void vtkLookupTableMapDirVectorEED(vtkLookupTableDirectionVector *self, T *input *output++ = (unsigned char) abs( (255*dirz/sum) ); *output++ = 255; // printf("%d %d %d ",(int)(255*dirx/sum),(int)(255*diry/sum),(int)(255*dirz/sum)); +// printf(" C %d %f %f %f \n",inIncr,dirx,diry,dirz); } // vtkLookupTableMapData(self, mag, output, length, 1, outFormat); @@ -208,9 +210,9 @@ vtkVectorsTensorsVisuBase::vtkVectorsTensorsVisuBase() //_LutEED->SetVectorModeToComponent(); _LutEED->SetVectorModeToRGBColors(); - _pdm = vtkPolyDataMapper::New(); - _actor = vtkActor::New(); - _actorAdded = false; + _pdm = vtkPolyDataMapper::New(); + _actor = vtkActor::New(); + _actorAdded = false; } vtkVectorsTensorsVisuBase::~vtkVectorsTensorsVisuBase() @@ -312,20 +314,40 @@ void vtkVectorsTensorsVisuBase::VisibilityActor() if ( (_active==true) && (_actorAdded==false) ){ if (GetRenderer()!=NULL) { - GetRenderer()->AddActor(_actor); + GetRenderer()->AddActor(_actor); _actorAdded=true; - } // if Renderer + } // if Renderer } // if _active==true if ( (_active==false) && (_actorAdded==true) ){ if (GetRenderer()!=NULL) { - GetRenderer()->RemoveActor(_actor); + GetRenderer()->RemoveActor(_actor); _actorAdded=false; - } // if Renderer + } // if Renderer } // if _active==false } +//------------------------------------------------------------------------------ +void vtkVectorsTensorsVisuBase::SetColorLaw(int colorlaw) +{ + _colorlaw = colorlaw; +} + +//------------------------------------------------------------------------------ +void vtkVectorsTensorsVisuBase::SetColor(std::vector rgb) +{ + if (rgb.size()==3) + { + _colorR=rgb[0]; + _colorG=rgb[1]; + _colorB=rgb[2]; + } else { + _colorR=1; + _colorG=1; + _colorB=1; + } +}