Fixed 64bit coordinate builds

This commit is contained in:
Matthias Koefferlein 2024-07-03 18:37:55 +02:00
parent ea161b489b
commit 02f88fb3e0
1 changed files with 136 additions and 136 deletions

View File

@ -2573,63 +2573,63 @@ TEST(60_sized_inside)
r.insert (db::Box (20, 20, 30, 60));
inside.insert (db::Box (-10, 10, 100, 100));
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (inside, false, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 40, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (40), db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, 0, 20, 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (inside, false, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 10, 20, 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (10), db::Coord (20), 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
db::Region d;
d = r;
d.size_inside (inside, false, 0, 20, 10);
d.size_inside (inside, false, db::Coord (0), db::Coord (20), 10);
EXPECT_EQ (d.to_string (), "(-10,10;-10,80;30,80;30,10)");
d = r;
d.size_inside (inside, false, 1, 2, 0);
d.size_inside (inside, false, db::Coord (1), db::Coord (2), 0);
EXPECT_EQ (d.to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
d = r;
d.size_inside (inside, false, 10, 20, 10);
d.size_inside (inside, false, db::Coord (10), db::Coord (20), 10);
EXPECT_EQ (d.to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 0, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 40, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 0, 0, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 40, 40, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (0), db::Coord (0), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (40), db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 0, 20, 10).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 10, 20, 10).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (0), db::Coord (20), 10).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (10), db::Coord (20), 10).to_string (), "");
try {
// no negative sizing
r.sized_inside (inside, false, -1, 1);
r.sized_inside (inside, false, db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (inside, false, -1, 1, 1);
r.sized_inside (inside, false, db::Coord (-1), db::Coord (1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (inside, false, 1, -1, 1);
r.sized_inside (inside, false, db::Coord (1), db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
@ -2645,51 +2645,51 @@ TEST(61_sized_outside)
outside.insert (db::Box (-20, 0, 110, 10));
outside.insert (db::Box (-20, 100, 110, 110));
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (outside, true, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 40, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (40), db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, 0, 20, 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (outside, true, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 10, 20, 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (10), db::Coord (20), 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 40, 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (40), 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 40, 40, 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (40), db::Coord (40), 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 0, 20, 10).to_string (), "(-10,0;-10,80;30,80;30,0)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 10, 20, 10).to_string (), "(-20,0;-20,80;40,80;40,0)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,0;-10,80;30,80;30,0)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (10), db::Coord (20), 10).to_string (), "(-20,0;-20,80;40,80;40,0)");
try {
// no negative sizing
r.sized_inside (outside, true, -1, 1);
r.sized_inside (outside, true, db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (outside, true, -1, 1, 1);
r.sized_inside (outside, true, db::Coord (-1), db::Coord (1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (outside, true, 1, -1, 1);
r.sized_inside (outside, true, db::Coord (1), db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
@ -2704,70 +2704,70 @@ TEST(62_sized_inside_deep)
r.insert (db::Box (20, 20, 30, 60));
inside.insert (db::Box (-10, 10, 100, 100));
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (inside, false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, false, 0, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, false, 40, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (inside, false, 0, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (inside, false, 40, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (inside, false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (inside, false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (inside, false, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 40, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (40), db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (inside, false, 0, 20, 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (inside, false, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, 10, 20, 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (inside, false, db::Coord (10), db::Coord (20), 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 0, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 40, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 0, 0, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 40, 40, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (0), db::Coord (0), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (40), db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 0, 20, 10).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, 10, 20, 10).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (0), db::Coord (20), 10).to_string (), "");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), false, db::Coord (10), db::Coord (20), 10).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, 0, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, 40, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, 0, 0, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, 40, 40, 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (0), db::Coord (0), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (40), db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, 0, 20, 10).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, 10, 20, 10).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (0), db::Coord (20), 10).to_string (), "");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, false, db::Coord (10), db::Coord (20), 10).to_string (), "");
try {
// no negative sizing
r.sized_inside (inside, false, -1, 1);
r.sized_inside (inside, false, db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (inside, false, -1, 1, 1);
r.sized_inside (inside, false, db::Coord (-1), db::Coord (1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (inside, false, 1, -1, 1);
r.sized_inside (inside, false, db::Coord (1), db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
@ -2785,68 +2785,68 @@ TEST(63_sized_outside_deep)
outside.insert (db::Box (-20, 0, 110, 10));
outside.insert (db::Box (-20, 100, 110, 110));
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, 0, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, 40, 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (db::Region (), true, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (db::Region ().sized_inside (outside, true, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, true, 0, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, true, 40, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (outside, true, 0, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (outside, true, 40, 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, true, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (empty, true, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (outside, true, db::Coord (0), 40).to_string (), "");
EXPECT_EQ (empty.sized_inside (outside, true, db::Coord (40), 40).to_string (), "");
EXPECT_EQ (r.sized_inside (outside, true, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 1, -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), -1).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 40, 40, 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (40), db::Coord (40), 40).to_string (), "(-10,10;-10,100;70,100;70,10)");
EXPECT_EQ (r.sized_inside (outside, true, 0, 20, 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (outside, true, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, 10, 20, 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,10;-10,80;30,80;30,10)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (outside, true, db::Coord (10), db::Coord (20), 10).to_string (), "(-10,10;-10,80;40,80;40,10)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 40, 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (40), 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 40, 40, 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (40), db::Coord (40), 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 0, 20, 10).to_string (), "(-10,0;-10,80;30,80;30,0)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, 10, 20, 10).to_string (), "(-20,0;-20,80;40,80;40,0)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,0;-10,80;30,80;30,0)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (db::Region (), true, db::Coord (10), db::Coord (20), 10).to_string (), "(-20,0;-20,80;40,80;40,0)");
EXPECT_EQ (r.sized_inside (empty, true, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, 40, 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (40), 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (empty, true, 0, 0, 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, 1, 1, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, 40, 40, 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (0), db::Coord (0), 40).to_string (), "(-10,20;-10,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (1), db::Coord (1), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (40), db::Coord (40), 40).to_string (), "(-50,-20;-50,100;70,100;70,-20)");
EXPECT_EQ (r.sized_inside (empty, true, 0, 20, 10).to_string (), "(-10,0;-10,80;30,80;30,0)");
EXPECT_EQ (r.sized_inside (empty, true, 1, 2, 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, 10, 20, 10).to_string (), "(-20,0;-20,80;40,80;40,0)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (0), db::Coord (20), 10).to_string (), "(-10,0;-10,80;30,80;30,0)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (1), db::Coord (2), 0).to_string (), "(-10,20;-10,60;20,60;20,20);(20,20;20,60;30,60;30,20)");
EXPECT_EQ (r.sized_inside (empty, true, db::Coord (10), db::Coord (20), 10).to_string (), "(-20,0;-20,80;40,80;40,0)");
try {
// no negative sizing
r.sized_inside (outside, true, -1, 1);
r.sized_inside (outside, true, db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (outside, true, -1, 1, 1);
r.sized_inside (outside, true, db::Coord (-1), db::Coord (1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}
try {
// no negative sizing
r.sized_inside (outside, true, 1, -1, 1);
r.sized_inside (outside, true, db::Coord (1), db::Coord (-1), 1);
EXPECT_EQ (true, false);
} catch (...) {
}