double dy = scaleY * t;
for( int u = 0; u < npoints; u++ ){
double dz = scaleZ * u;
double z = zmin+dz;
GeneralDirectPosition left = new GeneralDirectPosition(xmin, ymin+dy, z );
DirectPosition pt = transformTo2D( left, transform1, transform2 );
targetEnvelope.expandToInclude(pt);
GeneralDirectPosition top = new GeneralDirectPosition( xmin+dx, ymax, z );
pt = transformTo2D( top, transform1, transform2 );
targetEnvelope.expandToInclude(pt);
GeneralDirectPosition right = new GeneralDirectPosition( xmax, ymax-dy, z);
pt = transformTo2D( right, transform1, transform2 );
targetEnvelope.expandToInclude(pt);
GeneralDirectPosition bottom = new GeneralDirectPosition( xmax-dx, ymax, z);
pt = transformTo2D( bottom, transform1, transform2 );
targetEnvelope.expandToInclude(pt);
if (zmin == zmax) {
break; // only need one z sample