1 /** \file
2 * \brief Definition of ogdf::EmbedderMaxFaceLayers.
3 *
4 * \author Thorsten Kerkhof
5 *
6 * \par License:
7 * This file is part of the Open Graph Drawing Framework (OGDF).
8 *
9 * \par
10 * Copyright (C)<br>
11 * See README.md in the OGDF root directory for details.
12 *
13 * \par
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License
16 * Version 2 or 3 as published by the Free Software Foundation;
17 * see the file LICENSE.txt included in the packaging of this file
18 * for details.
19 *
20 * \par
21 * This program is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 * GNU General Public License for more details.
25 *
26 * \par
27 * You should have received a copy of the GNU General Public
28 * License along with this program; if not, see
29 * http://www.gnu.org/copyleft/gpl.html
30 */
31
32 #include <ogdf/planarity/EmbedderMaxFaceLayers.h>
33 #include <ogdf/planarity/embedder/EmbedderMaxFaceBiconnectedGraphsLayers.h>
34 #include <ogdf/planarity/embedder/ConnectedSubgraph.h>
35
36 namespace ogdf {
37
embedBlock(const node & bT,const node & cT,ListIterator<adjEntry> & after)38 void EmbedderMaxFaceLayers::embedBlock(
39 const node& bT,
40 const node& cT,
41 ListIterator<adjEntry>& after)
42 {
43 treeNodeTreated[bT] = true;
44 node cH = nullptr;
45 if (cT != nullptr)
46 cH = pBCTree->cutVertex(cT, bT);
47
48 EdgeArray<int> edgeLength(blockG[bT], 1);
49
50 internalEmbedBlock(
51 blockG[bT],
52 nodeLength[bT],
53 edgeLength,
54 nBlockEmbedding_to_nH[bT],
55 eBlockEmbedding_to_eH[bT],
56 cH == nullptr ? nullptr : nH_to_nBlockEmbedding[bT][cH],
57 cT,
58 after);
59 }
60
61 }
62