diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:24:48 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:24:48 +0000 |
commit | cca66b9ec4e494c1d919bff0f71a820d8afab1fa (patch) | |
tree | 146f39ded1c938019e1ed42d30923c2ac9e86789 /src/3rdparty/adaptagrams/libavoid/tests/inlineoverlap08.cpp | |
parent | Initial commit. (diff) | |
download | inkscape-cca66b9ec4e494c1d919bff0f71a820d8afab1fa.tar.xz inkscape-cca66b9ec4e494c1d919bff0f71a820d8afab1fa.zip |
Adding upstream version 1.2.2.upstream/1.2.2upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/3rdparty/adaptagrams/libavoid/tests/inlineoverlap08.cpp')
-rw-r--r-- | src/3rdparty/adaptagrams/libavoid/tests/inlineoverlap08.cpp | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/src/3rdparty/adaptagrams/libavoid/tests/inlineoverlap08.cpp b/src/3rdparty/adaptagrams/libavoid/tests/inlineoverlap08.cpp new file mode 100644 index 0000000..cde44e0 --- /dev/null +++ b/src/3rdparty/adaptagrams/libavoid/tests/inlineoverlap08.cpp @@ -0,0 +1,120 @@ +#include "libavoid/libavoid.h" +using namespace Avoid; +int main(void) { + Router *router = new Router( + PolyLineRouting | OrthogonalRouting); + router->setRoutingParameter((RoutingParameter)0, 10); + router->setRoutingParameter((RoutingParameter)1, 0); + router->setRoutingParameter((RoutingParameter)2, 0); + router->setRoutingParameter((RoutingParameter)3, 4000); + router->setRoutingParameter((RoutingParameter)4, 400); + router->setRoutingParameter((RoutingParameter)5, 100); + router->setRoutingOption((RoutingOption)0, false); + router->setRoutingOption((RoutingOption)1, true); + router->setRoutingOption((RoutingOption)2, false); + router->setRoutingOption((RoutingOption)3, false); + + Polygon poly1(4); + poly1.ps[0] = Point(99, -20); + poly1.ps[1] = Point(99, 0); + poly1.ps[2] = Point(55, 0); + poly1.ps[3] = Point(55, -20); + new ShapeRef(router, poly1, 1); + + Polygon poly2(4); + poly2.ps[0] = Point(20, -65); + poly2.ps[1] = Point(20, -45); + poly2.ps[2] = Point(0, -45); + poly2.ps[3] = Point(0, -65); + new ShapeRef(router, poly2, 2); + + Polygon poly3(4); + poly3.ps[0] = Point(20, -90); + poly3.ps[1] = Point(20, -70); + poly3.ps[2] = Point(0, -70); + poly3.ps[3] = Point(0, -90); + new ShapeRef(router, poly3, 3); + + Polygon poly4(4); + poly4.ps[0] = Point(20, -115); + poly4.ps[1] = Point(20, -95); + poly4.ps[2] = Point(0, -95); + poly4.ps[3] = Point(0, -115); + new ShapeRef(router, poly4, 4); + + Polygon poly5(4); + poly5.ps[0] = Point(20, -140); + poly5.ps[1] = Point(20, -120); + poly5.ps[2] = Point(0, -120); + poly5.ps[3] = Point(0, -140); + new ShapeRef(router, poly5, 5); + + Polygon poly6(4); + poly6.ps[0] = Point(75, -185); + poly6.ps[1] = Point(75, -165); + poly6.ps[2] = Point(55, -165); + poly6.ps[3] = Point(55, -185); + new ShapeRef(router, poly6, 6); + + Polygon poly7(4); + poly7.ps[0] = Point(100, -185); + poly7.ps[1] = Point(100, -165); + poly7.ps[2] = Point(80, -165); + poly7.ps[3] = Point(80, -185); + new ShapeRef(router, poly7, 7); + + Polygon poly8(4); + poly8.ps[0] = Point(125, -185); + poly8.ps[1] = Point(125, -165); + poly8.ps[2] = Point(105, -165); + poly8.ps[3] = Point(105, -185); + new ShapeRef(router, poly8, 8); + + Polygon poly9(4); + poly9.ps[0] = Point(150, -185); + poly9.ps[1] = Point(150, -165); + poly9.ps[2] = Point(130, -165); + poly9.ps[3] = Point(130, -185); + new ShapeRef(router, poly9, 9); + + Polygon poly10(4); + poly10.ps[0] = Point(175, -185); + poly10.ps[1] = Point(175, -165); + poly10.ps[2] = Point(155, -165); + poly10.ps[3] = Point(155, -185); + new ShapeRef(router, poly10, 10); + + ConnRef *connRef11 = new ConnRef(router, 11); + ConnEnd srcPt11(Point(20, -47), 15); + connRef11->setSourceEndpoint(srcPt11); + ConnEnd dstPt11(Point(57, -165), 15); + connRef11->setDestEndpoint(dstPt11); + connRef11->setRoutingType((ConnType)2); + + ConnRef *connRef12 = new ConnRef(router, 12); + ConnEnd srcPt12(Point(61, -165), 15); + connRef12->setSourceEndpoint(srcPt12); + ConnEnd dstPt12(Point(57, -20), 15); + connRef12->setDestEndpoint(dstPt12); + connRef12->setRoutingType((ConnType)2); + + ConnRef *connRef13 = new ConnRef(router, 13); + ConnEnd srcPt13(Point(15, -74), 15); + connRef13->setSourceEndpoint(srcPt13); + ConnEnd dstPt13(Point(65, -20), 15); + connRef13->setDestEndpoint(dstPt13); + connRef13->setRoutingType((ConnType)2); + + ConnRef *connRef14 = new ConnRef(router, 14); + ConnEnd srcPt14(Point(61, -20), 15); + connRef14->setSourceEndpoint(srcPt14); + ConnEnd dstPt14(Point(61, -24), 15); + connRef14->setDestEndpoint(dstPt14); + connRef14->setRoutingType((ConnType)2); + + router->processTransaction(); + router->outputDiagram("output/inlineoverlap08"); + bool overlap = router->existsOrthogonalFixedSegmentOverlap(); + delete router; + return (overlap) ? 1 : 0; +}; |