From: Matthew Fernandez Date: Sat, 22 May 2021 03:28:06 +0000 (-0700) Subject: remove unused removeRectangleOverlap() X-Git-Tag: 2.47.3~25^2~9 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=03887bdd7247b6482dbac0d65ade5e2d46d277cb;p=graphviz remove unused removeRectangleOverlap() --- diff --git a/lib/vpsc/CMakeLists.txt b/lib/vpsc/CMakeLists.txt index 0ac147d40..5cdea446a 100644 --- a/lib/vpsc/CMakeLists.txt +++ b/lib/vpsc/CMakeLists.txt @@ -9,7 +9,6 @@ add_library(vpsc STATIC generate-constraints.h pairingheap/PairingHeap.h pairingheap/dsexceptions.h - remove_rectangle_overlap.h solve_VPSC.h variable.h diff --git a/lib/vpsc/Makefile.am b/lib/vpsc/Makefile.am index b40ba4bd8..fd2a469f3 100644 --- a/lib/vpsc/Makefile.am +++ b/lib/vpsc/Makefile.am @@ -8,7 +8,7 @@ endif noinst_HEADERS = \ solve_VPSC.h block.h blocks.h variable.h constraint.h \ - generate-constraints.h remove_rectangle_overlap.h \ + generate-constraints.h \ solve_VPSC.h csolve_VPSC.h pairingheap/PairingHeap.h \ pairingheap/dsexceptions.h diff --git a/lib/vpsc/remove_rectangle_overlap.cpp b/lib/vpsc/remove_rectangle_overlap.cpp index f62dbb956..8dc74caa2 100644 --- a/lib/vpsc/remove_rectangle_overlap.cpp +++ b/lib/vpsc/remove_rectangle_overlap.cpp @@ -35,87 +35,3 @@ using std::ofstream; double Rectangle::xBorder=0; double Rectangle::yBorder=0; -/** - * Takes an array of n rectangles and moves them as little as possible - * such that rectangles are separated by at least xBorder horizontally - * and yBorder vertically - * - * Works in three passes: - * 1) removes some overlap horizontally - * 2) removes remaining overlap vertically - * 3) a last horizontal pass removes all overlap starting from original - * x-positions - this corrects the case where rectangles were moved - * too much in the first pass. - */ -void removeRectangleOverlap(int n, Rectangle *rs[], double xBorder, double yBorder) { - assert(0 <= n); - try { - // The extra gap avoids numerical imprecision problems - Rectangle::setXBorder(xBorder+EXTRA_GAP); - Rectangle::setYBorder(yBorder+EXTRA_GAP); - Variable **vs=new Variable*[n]; - for(int i=0;i oldX; - oldX.reserve(n); - int m=generateXConstraints(n,rs,vs,cs,true); - for(int i=0;idesiredPosition); - } - VPSC vpsc_x(n,vs,m,cs); - if (RECTANGLE_OVERLAP_LOGGING) { - ofstream f(LOGFILE,ios::app); - f<<"Calling VPSC: Horizontal pass 1\n"; - } - vpsc_x.solve(); - for(int i=0;imoveCentreX(vs[i]->position()); - } - for(int i = 0; i < m; ++i) { - delete cs[i]; - } - delete [] cs; - // Removing the extra gap here ensures things that were moved to be adjacent to - // one another above are not considered overlapping - Rectangle::setXBorder(Rectangle::xBorder-EXTRA_GAP); - m=generateYConstraints(n,rs,vs,cs); - VPSC vpsc_y(n,vs,m,cs); - if (RECTANGLE_OVERLAP_LOGGING) { - ofstream f(LOGFILE,ios::app); - f<<"Calling VPSC: Vertical pass\n"; - } - vpsc_y.solve(); - for(int i=0;imoveCentreY(vs[i]->position()); - rs[i]->moveCentreX(oldX[i]); - } - for(int i = 0; i < m; ++i) { - delete cs[i]; - } - delete [] cs; - Rectangle::setYBorder(Rectangle::yBorder-EXTRA_GAP); - m=generateXConstraints(n,rs,vs,cs,false); - VPSC vpsc_x2(n,vs,m,cs); - if (RECTANGLE_OVERLAP_LOGGING) { - ofstream f(LOGFILE,ios::app); - f<<"Calling VPSC: Horizontal pass 2\n"; - } - vpsc_x2.solve(); - for(int i=0;imoveCentreX(vs[i]->position()); - delete vs[i]; - } - delete [] vs; - for(int i = 0; i < m; ++i) { - delete cs[i]; - } - delete [] cs; - } catch (char const *str) { - std::cerr< - * - * Copyright (C) 2005 Authors - * - * This version is released under the CPL (Common Public License) with - * the Graphviz distribution. - * A version is also available under the LGPL as part of the Adaptagrams - * project: https://github.com/mjwybrow/adaptagrams. - * If you make improvements or bug fixes to this code it would be much - * appreciated if you could also contribute those changes back to the - * Adaptagrams repository. - */ -#pragma once - -class Rectangle; - -void removeRectangleOverlap(Rectangle *rs[], int n, double xBorder, double yBorder); diff --git a/lib/vpsc/vpsc.vcxproj b/lib/vpsc/vpsc.vcxproj index c3f5776e7..93bbb5fa5 100644 --- a/lib/vpsc/vpsc.vcxproj +++ b/lib/vpsc/vpsc.vcxproj @@ -83,7 +83,6 @@ - diff --git a/lib/vpsc/vpsc.vcxproj.filters b/lib/vpsc/vpsc.vcxproj.filters index 7d3b25c88..6503c66e7 100644 --- a/lib/vpsc/vpsc.vcxproj.filters +++ b/lib/vpsc/vpsc.vcxproj.filters @@ -36,9 +36,6 @@ Header Files - - Header Files - Header Files