void layoutGraph() {
		if (m_BayesNet.getNrOfNodes() == 0) {
			return;
		}
		try {
			FastVector m_nodes = new FastVector();
			FastVector m_edges = new FastVector();
			BIFParser bp = new BIFParser(m_BayesNet.toXMLBIF03(), m_nodes, m_edges);
			bp.parse();
			updateStatus();
			m_layoutEngine = new HierarchicalBCEngine(m_nodes, m_edges, m_nPaddedNodeWidth, m_nNodeHeight);
			m_layoutEngine.addLayoutCompleteEventListener(this);
			m_layoutEngine.layoutGraph();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}