From 3915df27234aa815febbb24195c426c1f73f8f91 Mon Sep 17 00:00:00 2001 From: Eduardo DAVILA Date: Thu, 15 Dec 2022 12:41:27 +0100 Subject: [PATCH] #3493 BUG IPP bbgdcmvtk GetXCoherentInfoGdcmReader box --- .../bbgdcmvtkGetXCoherentInfoGdcmReader.cxx | 35 +++++++++++-------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.cxx b/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.cxx index 008bd0e..a094ff7 100644 --- a/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.cxx +++ b/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.cxx @@ -117,16 +117,16 @@ void GetXCoherentInfoGdcmReader::Process() v_iop.push_back(iop[i]); } // for i bbSetOutputIOP(v_iop ); - - std::vector v_ipp; - float ipp[3]; - f->GetImagePositionPatient(ipp); - - for(i=0; i< 3; i++) - { - v_ipp.push_back(ipp[i]); - } // for i - bbSetOutputIPP(v_ipp ); + +// EED 2022-12-15 +// std::vector v_ipp; +// float ipp[3]; +// f->GetImagePositionPatient(ipp); +// for(i=0; i< 3; i++) +// { +// v_ipp.push_back(ipp[i]); +// } // for i +// bbSetOutputIPP(v_ipp ); // Add *all the files* to the SerieHelper sh = GDCM_NAME_SPACE::SerieHelper::New(); @@ -166,11 +166,11 @@ void GetXCoherentInfoGdcmReader::Process() std::string strTagValue; // read on disc int iTag,sizeDicomTagsVector=bbGetInputDicomTags().size(); GDCM_NAME_SPACE::FileList::const_iterator iitt = l->begin(); - //iitt ++; - printf("EED GetXCoherentInfoGdcmReader::Process 1 \n"); - - for ( ; iitt != l->end(); ++iitt) + float px,py,pz; + + for ( ; iitt != l->end(); ++iitt) { + // EED 2022-12-15 if ( iitt == l->begin() ) // The first ordered element IPP { group = 0; @@ -178,7 +178,12 @@ void GetXCoherentInfoGdcmReader::Process() strTagValue = std::string("void"); sscanf("D0020_0032","D%04hx_%04hx",&group,&elem); strTagValue = (*iitt)->GetEntryString(group,elem); - printf("EED GetXCoherentInfoGdcmReader::Process position %s \n",strTagValue.c_str() ); + sscanf(strTagValue.c_str(),"%f\\%f\\%f\\%f", &px , &py , &pz); + std::vector v_ipp; + v_ipp.push_back( (double)px ); + v_ipp.push_back( (double)py ); + v_ipp.push_back( (double)pz ); + bbSetOutputIPP(v_ipp ); } // if first elemetn get IPP MapInfoDicom mapinfodicom; -- 2.47.1