6 * $Date: 2012-07-02 20:59:27 +0200 (Mon, 02 Jul 2012) $
7 ***************************************************************/
10 * \brief Declaration of class Overlap which implements an energy
11 * function that gives a penalty for each pair of overlapping
14 * The penalty for each pair is the area of the overlap. It only
15 * works if the shape of the vertices is a rectangle. It uses the
16 * class IntersectionRectangle.
18 * \author Rene Weiskircher
21 * This file is part of the Open Graph Drawing Framework (OGDF).
25 * See README.txt in the root directory of the OGDF installation for details.
28 * This program is free software; you can redistribute it and/or
29 * modify it under the terms of the GNU General Public License
30 * Version 2 or 3 as published by the Free Software Foundation;
31 * see the file LICENSE.txt included in the packaging of this file
35 * This program is distributed in the hope that it will be useful,
36 * but WITHOUT ANY WARRANTY; without even the implied warranty of
37 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
38 * GNU General Public License for more details.
41 * You should have received a copy of the GNU General Public
42 * License along with this program; if not, write to the Free
43 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
44 * Boston, MA 02110-1301, USA.
46 * \see http://www.gnu.org/copyleft/gpl.html
47 ***************************************************************/
54 #ifndef OGDF_OVERLAP_H
55 #define OGDF_OVERLAP_H
58 #include <ogdf/internal/energybased/NodePairEnergy.h>
64 class Overlap
: public NodePairEnergy
{
66 //Initializes private data structures
67 Overlap(GraphAttributes
&AG
);
70 //computes for two vertices at the given position the overlap energy
71 double computeCoordEnergy(node
,node
, const DPoint
&, const DPoint
&) const;