code: private void calcZDirection() {
  		calcBoundaries();
  
  		// if the longer part of the structure faces towards the back (-z direction),
  		// rotate around y-axis so the longer part faces the viewer (+z direction)
  		if (Math.abs(minBoundary.z) > Math.abs(maxBoundary.z)) {
  			Matrix4d rot = flipY();
  			rot.mul(transformationMatrix);
  			transformationMatrix.set(rot);
  		}
  	}
docs: /*
  Modifies the rotation part of the transformation axis for
  a Cn symmetric complex, so that the narrower end faces the
  viewer, and the wider end faces away from the viewer. Example: 3LSV