private void calcBoundBoxDimensions() {
		calcAtomsMinMax(minBoundBox, maxBoundBox);
		calcUnitCellMinMax(minBoundBox, maxBoundBox);
		calcCuboidsMinMax(); // XIE
		centerBoundBox.add(minBoundBox, maxBoundBox);
		centerBoundBox.scale(0.5f);
		boundBoxCornerVector.sub(maxBoundBox, centerBoundBox);

		for (int i = 8; --i >= 0;) {
			Point3f bbcagePoint = bboxVertices[i] = new Point3f(unitBboxPoints[i]);
			bbcagePoint.x *= boundBoxCornerVector.x;
			bbcagePoint.y *= boundBoxCornerVector.y;
			bbcagePoint.z *= boundBoxCornerVector.z;
			bbcagePoint.add(centerBoundBox);
		}
	}