protected void spaceMultipleTrees(StandardTreeNode root) {
		// Found the appropriate boundary of this tree, allowing for
		// orientation
		Point2D pos = graph.getLocation(root.cell);
		double rootX = 0;
		double rootY = 0;
		if (pos != null) {
			rootX = graph.getLocation(root.cell).getX();
			rootY = graph.getLocation(root.cell).getY();
		}

		if (orientation == SwingConstants.NORTH) {
			int leftMostX = root.getLeftWidth();
			double leftMostTreeX = rootX - leftMostX;
			if (leftMostTreeX < treeBoundary + treeDistance) {
				rootX = treeBoundary + treeDistance + leftMostX;
				graph.setLocation(root.cell, rootX, rootY);
			}

			// Calculate right-most boundary of this tree for next calculation
			int rightMostX = root.getRightWidth();
			treeBoundary = rootX + rightMostX;
		}

		if (orientation == SwingConstants.SOUTH) {
			int rightMostX = root.getRightWidth();
			double rightMostTreeX = rootX - rightMostX;
			if (rightMostTreeX < treeBoundary + treeDistance) {
				rootX = treeBoundary + treeDistance + rightMostX;
				graph.setLocation(root.cell, rootX, rootY);
			}

			// Calculate left-most boundary of this tree for next calculation
			int leftMostX = root.getLeftWidth();
			treeBoundary = rootX + leftMostX;
		}

		if (orientation == SwingConstants.WEST) {
			int topMostY = root.getLeftWidth();
			double topMostTreeY = rootY - topMostY;
			if (topMostTreeY < treeBoundary + treeDistance) {
				rootY = treeBoundary + treeDistance + topMostY;
				graph.setLocation(root.cell, rootX, rootY);
			}

			// Calculate left-most boundary of this tree for next calculation
			int bottomMostY = root.getRightWidth();
			treeBoundary = rootY + bottomMostY;
		}

		if (orientation == SwingConstants.EAST) {
			int topMostY = root.getRightWidth();
			double topMostTreeY = rootY - topMostY;
			if (topMostTreeY < treeBoundary + treeDistance) {
				rootY = treeBoundary + treeDistance + topMostY;
				graph.setLocation(root.cell, rootX, rootY);
			}

			// Calculate right-most boundary of this tree for next calculation
			int bottomMostY = root.getLeftWidth();
			treeBoundary = rootY + bottomMostY + getRightMostX(root).height;
		}
	}