The rotation in 3drotate is
always about the center of the 3D rectangular volume defined by the dataset grid. The proper way to use 3drotate to apply a given transformation is then to cast your transformation matrix+vector into this system. If you want help working out the math, then I'll need more details about your application. E-mail would be better for this, probably.
bob cox