tmpP3d.set(lx, uy, lz); matrix.transform( tmpP3d ); if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x; if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y; if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z; if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x; if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y; if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;  tmpP3d.set(ux, uy, lz); matrix.transform( tmpP3d ); if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x; if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y; if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z; if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x; if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y; if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;  tmpP3d.set(lx, ly, lz); matrix.transform( tmpP3d ); if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x; if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y; if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z; if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x; if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y; if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;  tmpP3d.set(ux, ly, lz); matrix.transform( tmpP3d ); if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x; if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y; if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z; if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x; if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y; if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;
if(boundsObject.boundId == BOUNDING_BOX){ if (tmpBox == null) { tmpBox = new BoundingBox( (BoundingBox)boundsObject); } else { tmpBox.set((BoundingBox)boundsObject); } tmpBox.transform(matrix); this.set(tmpBox); } else if(boundsObject.boundId == BOUNDING_SPHERE) { if (tmpSphere == null) { tmpSphere = new BoundingSphere( (BoundingSphere)boundsObject); } else { tmpSphere.set((BoundingSphere)boundsObject); } tmpSphere.transform(matrix); this.set(tmpSphere); } else if(boundsObject.boundId == BOUNDING_POLYTOPE) { if (tmpPolytope == null) { tmpPolytope = new BoundingPolytope((BoundingPolytope) boundsObject); } else { tmpPolytope.set((BoundingPolytope)boundsObject); } tmpPolytope.transform(matrix); this.set(tmpPolytope);  } else { throw new IllegalArgumentException(J3dI18N.getString("BoundingBox5")); }
    public void transform(Transform3D matrix) {	if(boundsIsInfinite)	    return;		double ux, uy, uz, lx, ly, lz;	ux = upper.x; uy = upper.y; uz = upper.z;	lx = lower.x; ly = lower.y; lz = lower.z;		tmpP3d.set(ux, uy, uz);	matrix.transform( tmpP3d );	upper.x = tmpP3d.x;	upper.y = tmpP3d.y;	upper.z = tmpP3d.z;	lower.x = tmpP3d.x;	lower.y = tmpP3d.y;	lower.z = tmpP3d.z;		tmpP3d.set(lx, uy, uz);	matrix.transform( tmpP3d );		if ( tmpP3d.x  > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y  > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z  > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x  < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y  < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z  < lower.z ) lower.z = tmpP3d.z;		tmpP3d.set(lx, ly, uz);	matrix.transform( tmpP3d );	if ( tmpP3d.x  > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y  > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z  > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x  < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y  < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z  < lower.z ) lower.z = tmpP3d.z;		tmpP3d.set(ux, ly, uz);	matrix.transform( tmpP3d );	if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;	tmpP3d.set(lx, uy, lz);	matrix.transform( tmpP3d );	if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;	tmpP3d.set(ux, uy, lz);	matrix.transform( tmpP3d );	if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;		tmpP3d.set(lx, ly, lz);	matrix.transform( tmpP3d );	if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;		tmpP3d.set(ux, ly, lz);	matrix.transform( tmpP3d );	if ( tmpP3d.x > upper.x ) upper.x = tmpP3d.x;	if ( tmpP3d.y > upper.y ) upper.y = tmpP3d.y;	if ( tmpP3d.z > upper.z ) upper.z = tmpP3d.z;	if ( tmpP3d.x < lower.x ) lower.x = tmpP3d.x;	if ( tmpP3d.y < lower.y ) lower.y = tmpP3d.y;	if ( tmpP3d.z < lower.z ) lower.z = tmpP3d.z;    }