From: ouv Date: Fri, 23 Sep 2005 13:53:23 +0000 (+0000) Subject: MakeTexture() moved to VISU_GaussPointsPL X-Git-Tag: BR-D5-38-2003_D2005-12-10~142 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=2fc5229ff1e192e1328664a36196cd988898a8d6;p=modules%2Fvisu.git MakeTexture() moved to VISU_GaussPointsPL --- diff --git a/src/VISU_I/VISU_GaussPoints_i.cc b/src/VISU_I/VISU_GaussPoints_i.cc index 68e6be9f..2743288e 100644 --- a/src/VISU_I/VISU_GaussPoints_i.cc +++ b/src/VISU_I/VISU_GaussPoints_i.cc @@ -332,66 +332,7 @@ VISU::GaussPoints_i bool convertAlphaTexture = system( command2.latin1() ) == 0; if( convertMainTexture && convertAlphaTexture ) - MakeTexture( mainTextureVTI, alphaTextureVTI ); + myGaussPointsPL->SetImageData( VISU_GaussPointsPL::MakeTexture( mainTextureVTI.latin1(), + alphaTextureVTI.latin1() ) ); } - -//---------------------------------------------------------------------------- -void -VISU::GaussPoints_i -::MakeTexture( const QString& theMainTexture, - const QString& theAlphaTexture ) -{ - if( theMainTexture.isNull() || theAlphaTexture.isNull() ) - return; - - vtkXMLImageDataReader* aMainReader = vtkXMLImageDataReader::New(); - vtkXMLImageDataReader* anAlphaReader = vtkXMLImageDataReader::New(); - - aMainReader->SetFileName( theMainTexture ); - anAlphaReader->SetFileName( theAlphaTexture ); - - aMainReader->Update(); - anAlphaReader->Update(); - - vtkImageData* aMainImageData = aMainReader->GetOutput(); - vtkImageData* anAlphaImageData = anAlphaReader->GetOutput(); - - int* aMainImageSize = aMainImageData->GetDimensions(); - int* anAlphaImageSize = anAlphaImageData->GetDimensions(); - if(aMainImageSize[0] != anAlphaImageSize[0] || aMainImageSize[1] != anAlphaImageSize[1]) - throw std::runtime_error("GaussPoints_i::MakeTexture : aMainImageSize[0] != anAlphaImageSize[0] || aMainImageSize[1] != anAlphaImageSize[1]"); - - int aNbCompositeComponents = 4; - vtkImageData* aCompositeImageData = vtkImageData::New(); - aCompositeImageData->SetDimensions(aMainImageSize); - aCompositeImageData->SetScalarTypeToUnsignedChar(); - aCompositeImageData->SetNumberOfScalarComponents(aNbCompositeComponents); - aCompositeImageData->AllocateScalars(); - - unsigned char* aMainDataPtr = (unsigned char*)aMainImageData->GetScalarPointer(); - unsigned char* anAlphaDataPtr = (unsigned char*)anAlphaImageData->GetScalarPointer(); - unsigned char *aCompositeDataPtr = (unsigned char * )aCompositeImageData->GetScalarPointer(); - - int aNbMainComponents = aMainImageData->GetNumberOfScalarComponents(); - int aNbAlphaComponents = anAlphaImageData->GetNumberOfScalarComponents(); - int aCompositeSize = aMainImageSize[0] * aMainImageSize[1] * aNbCompositeComponents; - - int aMainId = 0, anAlphaId = 0, aCompositeId = 0; - for(; aCompositeId < aCompositeSize;) - { - aCompositeDataPtr[aCompositeId] = aMainDataPtr[aMainId]; - aCompositeDataPtr[aCompositeId + 1] = aMainDataPtr[aMainId + 1]; - aCompositeDataPtr[aCompositeId + 2] = aMainDataPtr[aMainId + 2]; - aCompositeDataPtr[aCompositeId + 3] = anAlphaDataPtr[anAlphaId]; - - aMainId += aNbMainComponents; - anAlphaId += aNbAlphaComponents; - aCompositeId += aNbCompositeComponents; - } - aMainReader->Delete(); - anAlphaReader->Delete(); - aCompositeImageData->Update(); - - myGaussPointsPL->SetImageData(aCompositeImageData); -} diff --git a/src/VISU_I/VISU_GaussPoints_i.hh b/src/VISU_I/VISU_GaussPoints_i.hh index c3b9e612..59ba0d05 100644 --- a/src/VISU_I/VISU_GaussPoints_i.hh +++ b/src/VISU_I/VISU_GaussPoints_i.hh @@ -106,10 +106,6 @@ namespace VISU VISU_PipeLine* GetPipeLine(); - void - MakeTexture( const QString& theMainTexture, - const QString& theAlphaTexture ); - VISU_GaussPointsPL *myGaussPointsPL; bool myIsColored;