From cca66b9ec4e494c1d919bff0f71a820d8afab1fa Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 20:24:48 +0200 Subject: Adding upstream version 1.2.2. Signed-off-by: Daniel Baumann --- src/3rdparty/adaptagrams/libcola/tests/trees.cpp | 103 +++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 src/3rdparty/adaptagrams/libcola/tests/trees.cpp (limited to 'src/3rdparty/adaptagrams/libcola/tests/trees.cpp') diff --git a/src/3rdparty/adaptagrams/libcola/tests/trees.cpp b/src/3rdparty/adaptagrams/libcola/tests/trees.cpp new file mode 100644 index 0000000..72fb296 --- /dev/null +++ b/src/3rdparty/adaptagrams/libcola/tests/trees.cpp @@ -0,0 +1,103 @@ +/* + * vim: ts=4 sw=4 et tw=0 wm=0 + * + * libcola - A library providing force-directed network layout using the + * stress-majorization method subject to separation constraints. + * + * Copyright (C) 2006-2008 Monash University + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library in the file LICENSE; if not, + * write to the Free Software Foundation, Inc., 59 Temple Place, + * Suite 330, Boston, MA 02111-1307 USA + * +*/ + +#include +#include +#include +#include +#include + +#include "graphlayouttest.h" + +using namespace std; +using namespace cola; + +void makeEdge(unsigned u, unsigned v, + vector &edges, CompoundConstraints &cy) { + edges.push_back(make_pair(u,v)); + cy.push_back(new SeparationConstraint(u,v,20)); +} +vector random_tree(unsigned depth, unsigned maxbranch, unsigned &V, + CompoundConstraints &cx, CompoundConstraints &cy) { + vector edges; + unsigned lstart=0, lend=1; + V=0; + for(unsigned i=0;i es = random_tree(7,4,V,cx,cy); + double defaultEdgeLength=40; + + cout << "V="< > startpos(V); + for(unsigned i=0;i