}
- printf("EED InversCrop::Process 3 %d %d %d \n",dimMoveX,dimMoveY,dimMoveZ );
+printf("EED InversCrop::Process 3 %d %d %d \n",dimMoveX,dimMoveY,dimMoveZ );
int spxM = 0; // start px MoveImage
int sizeXM = 0; // sizeX MoveImage
+printf("EED InversCrop::Process 3.1 sizeOrigin %d \n", bbGetInputOrigin().size() );
+printf("EED InversCrop::Process 3.1 Origin %d %d %d\n", bbGetInputOrigin()[0],bbGetInputOrigin()[1],bbGetInputOrigin()[2] );
+
px = bbGetInputOrigin()[0];
spxM = 0;
if (px<0)
spxM = px*(-1);
px = 0;
}
- sizeXM = dimMoveX-spxM;
- if (px+sizeXM>=dim[0]) sizeXM=dim[0]-px;
- sizeXM = sizeXM * bbGetInputImageFix()->GetScalarSize();
+ sizeXM = dimMoveX-spxM;
+ if (px+sizeXM>=dim[0]) { sizeXM=dim[0]-px; }
+ sizeXM = sizeXM * bbGetInputImageFix()->GetScalarSize();
for (k=0; k<dimMoveZ; k++)
{
for (j=0; j<dimMoveY; j++)
{
py = j+bbGetInputOrigin()[1];
- pz = k+bbGetInputOrigin()[2];
+ if (bbGetInputImageMove()->GetDataDimension()==3)
+ {
+ pz = k+bbGetInputOrigin()[2];
+ } else {
+ pz = k;
+ }// Dimension 3
if ( (py<dim[1]) && (pz<dim[2]) &&
(py>=0) && (pz>=0) &&
(sizeXM>0) )
} // for j
} // for k
+printf("EED InversCrop::Process 4 %d %d %d \n",px,py,pz );
+
_imageoutput->Modified();
} else { // If Image Fixe Move the same GetScalarType
printf ("ERROR: InversCrop both ImageFixe and ImageMove need the same format.\n");