mirror of https://github.com/KLayout/klayout.git
Bug fixes, tests
This commit is contained in:
parent
5662f962d2
commit
34f6e7bdba
|
|
@ -110,7 +110,7 @@ AsIfFlatEdges::selected_interacting_generic (const Region &other, EdgeInteractio
|
||||||
scanner.insert1 (e.operator-> (), 0);
|
scanner.insert1 (e.operator-> (), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
AddressablePolygonDelivery p = other.addressable_polygons ();
|
AddressablePolygonDelivery p = (mode == EdgesInside ? other.addressable_merged_polygons () : other.addressable_polygons ());
|
||||||
|
|
||||||
for ( ; ! p.at_end (); ++p) {
|
for ( ; ! p.at_end (); ++p) {
|
||||||
scanner.insert2 (p.operator-> (), 1);
|
scanner.insert2 (p.operator-> (), 1);
|
||||||
|
|
@ -156,7 +156,8 @@ AsIfFlatEdges::selected_interacting_generic (const Edges &edges, EdgeInteraction
|
||||||
scanner.insert (e.operator-> (), 0);
|
scanner.insert (e.operator-> (), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
AddressableEdgeDelivery ee = edges.addressable_edges ();
|
// NOTE: "inside" needs merged edges for the other edges as the algorithm works edge by edge
|
||||||
|
AddressableEdgeDelivery ee = (mode == EdgesInside ? edges.addressable_merged_edges () : edges.addressable_edges ());
|
||||||
|
|
||||||
for ( ; ! ee.at_end (); ++ee) {
|
for ( ; ! ee.at_end (); ++ee) {
|
||||||
scanner.insert (ee.operator-> (), 1);
|
scanner.insert (ee.operator-> (), 1);
|
||||||
|
|
@ -206,7 +207,7 @@ AsIfFlatEdges::selected_interacting_pair_generic (const Region ®ion, EdgeInte
|
||||||
scanner.insert1 (e.operator-> (), 0);
|
scanner.insert1 (e.operator-> (), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
AddressablePolygonDelivery p = region.addressable_polygons ();
|
AddressablePolygonDelivery p = region.addressable_merged_polygons ();
|
||||||
|
|
||||||
for ( ; ! p.at_end (); ++p) {
|
for ( ; ! p.at_end (); ++p) {
|
||||||
scanner.insert2 (p.operator-> (), 1);
|
scanner.insert2 (p.operator-> (), 1);
|
||||||
|
|
@ -250,7 +251,7 @@ AsIfFlatEdges::selected_interacting_pair_generic (const Edges &other, EdgeIntera
|
||||||
scanner.insert (e.operator-> (), 0);
|
scanner.insert (e.operator-> (), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
AddressableEdgeDelivery ee = other.addressable_edges ();
|
AddressableEdgeDelivery ee = other.addressable_merged_edges ();
|
||||||
|
|
||||||
for ( ; ! ee.at_end (); ++ee) {
|
for ( ; ! ee.at_end (); ++ee) {
|
||||||
scanner.insert (ee.operator-> (), 1);
|
scanner.insert (ee.operator-> (), 1);
|
||||||
|
|
|
||||||
|
|
@ -387,7 +387,7 @@ DeepEdges::has_valid_edges () const
|
||||||
bool
|
bool
|
||||||
DeepEdges::has_valid_merged_edges () const
|
DeepEdges::has_valid_merged_edges () const
|
||||||
{
|
{
|
||||||
return merged_semantics ();
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
const db::RecursiveShapeIterator *
|
const db::RecursiveShapeIterator *
|
||||||
|
|
@ -1613,7 +1613,7 @@ DeepEdges::selected_interacting_generic (const Region &other, EdgeInteractionMod
|
||||||
proc.set_base_verbosity (base_verbosity ());
|
proc.set_base_verbosity (base_verbosity ());
|
||||||
proc.set_threads (edges.store ()->threads ());
|
proc.set_threads (edges.store ()->threads ());
|
||||||
|
|
||||||
proc.run (&op, edges.layer (), other_deep->deep_layer ().layer (), dl_out.layer ());
|
proc.run (&op, edges.layer (), (mode == EdgesInside ? other_deep->merged_deep_layer () : other_deep->deep_layer ()).layer (), dl_out.layer ());
|
||||||
|
|
||||||
return new db::DeepEdges (dl_out);
|
return new db::DeepEdges (dl_out);
|
||||||
}
|
}
|
||||||
|
|
@ -1645,7 +1645,7 @@ DeepEdges::selected_interacting_pair_generic (const Region &other, EdgeInteracti
|
||||||
proc.set_base_verbosity (base_verbosity ());
|
proc.set_base_verbosity (base_verbosity ());
|
||||||
proc.set_threads (edges.store ()->threads ());
|
proc.set_threads (edges.store ()->threads ());
|
||||||
|
|
||||||
proc.run (&op, edges.layer (), other_deep->deep_layer ().layer (), output_layers);
|
proc.run (&op, edges.layer (), other_deep->merged_deep_layer ().layer (), output_layers);
|
||||||
|
|
||||||
return std::make_pair (new db::DeepEdges (dl_out), new db::DeepEdges (dl_out2));
|
return std::make_pair (new db::DeepEdges (dl_out), new db::DeepEdges (dl_out2));
|
||||||
}
|
}
|
||||||
|
|
@ -1671,7 +1671,7 @@ DeepEdges::selected_interacting_generic (const Edges &other, EdgeInteractionMode
|
||||||
proc.set_base_verbosity (base_verbosity ());
|
proc.set_base_verbosity (base_verbosity ());
|
||||||
proc.set_threads (edges.store ()->threads ());
|
proc.set_threads (edges.store ()->threads ());
|
||||||
|
|
||||||
proc.run (&op, edges.layer (), other_deep->deep_layer ().layer (), dl_out.layer ());
|
proc.run (&op, edges.layer (), (mode == EdgesInside ? other_deep->merged_deep_layer () : other_deep->deep_layer ()).layer (), dl_out.layer ());
|
||||||
|
|
||||||
return new db::DeepEdges (dl_out);
|
return new db::DeepEdges (dl_out);
|
||||||
}
|
}
|
||||||
|
|
@ -1703,7 +1703,7 @@ DeepEdges::selected_interacting_pair_generic (const Edges &other, EdgeInteractio
|
||||||
proc.set_base_verbosity (base_verbosity ());
|
proc.set_base_verbosity (base_verbosity ());
|
||||||
proc.set_threads (edges.store ()->threads ());
|
proc.set_threads (edges.store ()->threads ());
|
||||||
|
|
||||||
proc.run (&op, edges.layer (), other_deep->deep_layer ().layer (), output_layers);
|
proc.run (&op, edges.layer (), other_deep->merged_deep_layer ().layer (), output_layers);
|
||||||
|
|
||||||
return std::make_pair (new db::DeepEdges (dl_out), new db::DeepEdges (dl_out2));
|
return std::make_pair (new db::DeepEdges (dl_out), new db::DeepEdges (dl_out2));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -604,11 +604,13 @@ TEST(11_SelectedInsideWithRegion)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Region r;
|
db::Region r;
|
||||||
r.insert (db::Box (0, -1000, 2000, 0));
|
r.insert (db::Box (0, -1000, 2000, 0));
|
||||||
r.insert (db::Box (1000, 1000, 2000, 2000));
|
r.insert (db::Box (1000, 1000, 2000, 1500));
|
||||||
|
r.insert (db::Box (1000, 1500, 2000, 2000));
|
||||||
|
|
||||||
// make deep
|
// make deep
|
||||||
|
|
||||||
|
|
@ -631,28 +633,28 @@ TEST(11_SelectedInsideWithRegion)
|
||||||
r = db::Region (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
r = db::Region (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (db::Region ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside (db::Region ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).first, ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).first, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).second, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (r), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside (r), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (rflat), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside (rflat), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_inside (r), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_inside (r), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (r), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (r), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (rflat), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (rflat), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_not_inside (r), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_not_inside (r), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (r).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (r).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (rflat).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (rflat).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_inside_differential (r).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_inside_differential (r).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (r).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (r).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (rflat).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (rflat).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_inside_differential (r).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_inside_differential (r).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(11_SelectedInsideWithEdges)
|
TEST(12_SelectedInsideWithEdges)
|
||||||
{
|
{
|
||||||
db::Edges e;
|
db::Edges e;
|
||||||
e.insert (db::Edge (0, 0, 0, 1000));
|
e.insert (db::Edge (0, 0, 0, 1000));
|
||||||
|
|
@ -666,6 +668,7 @@ TEST(11_SelectedInsideWithEdges)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Edges ee;
|
db::Edges ee;
|
||||||
|
|
@ -673,7 +676,8 @@ TEST(11_SelectedInsideWithEdges)
|
||||||
ee.insert (db::Edge (i, -1000, i, 0));
|
ee.insert (db::Edge (i, -1000, i, 0));
|
||||||
}
|
}
|
||||||
for (int i = 1000; i <= 2000; i += 100) {
|
for (int i = 1000; i <= 2000; i += 100) {
|
||||||
ee.insert (db::Edge (i, 1000, i, 2000));
|
ee.insert (db::Edge (i, 1000, i, 1500));
|
||||||
|
ee.insert (db::Edge (i, 1500, i, 2000));
|
||||||
}
|
}
|
||||||
|
|
||||||
// make deep
|
// make deep
|
||||||
|
|
@ -697,28 +701,28 @@ TEST(11_SelectedInsideWithEdges)
|
||||||
ee = db::Edges (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
ee = db::Edges (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (db::Edges ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside (db::Edges ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).first, ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).first, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).second, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (ee), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside (ee), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (eeflat), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside (eeflat), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_inside (ee), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_inside (ee), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (ee), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (ee), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (eeflat), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (eeflat), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_not_inside (ee), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_not_inside (ee), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (eeflat).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (eeflat).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_inside_differential (ee).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_inside_differential (ee).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (eeflat).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (eeflat).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_inside_differential (ee).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_inside_differential (ee).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(12_SelectedOutsideWithRegion)
|
TEST(13_SelectedOutsideWithRegion)
|
||||||
{
|
{
|
||||||
db::Edges e;
|
db::Edges e;
|
||||||
e.insert (db::Edge (0, 0, 0, 1000));
|
e.insert (db::Edge (0, 0, 0, 1000));
|
||||||
|
|
@ -732,11 +736,13 @@ TEST(12_SelectedOutsideWithRegion)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Region r;
|
db::Region r;
|
||||||
r.insert (db::Box (0, -1000, 2000, 0));
|
r.insert (db::Box (0, -1000, 2000, 0));
|
||||||
r.insert (db::Box (1000, 1000, 2000, 2000));
|
r.insert (db::Box (1000, 1000, 2000, 1500));
|
||||||
|
r.insert (db::Box (1000, 1500, 2000, 2000));
|
||||||
|
|
||||||
// make deep
|
// make deep
|
||||||
|
|
||||||
|
|
@ -758,9 +764,9 @@ TEST(12_SelectedOutsideWithRegion)
|
||||||
db::Region rflat = r;
|
db::Region rflat = r;
|
||||||
r = db::Region (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
r = db::Region (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (db::Region ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (db::Region ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).second, ""), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (r), ""), true);
|
||||||
|
|
@ -769,18 +775,18 @@ TEST(12_SelectedOutsideWithRegion)
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (r), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (r), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (rflat), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (rflat), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_outside (r), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_outside (r), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (r), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (r), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (rflat), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (rflat), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_not_outside (r), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_not_outside (r), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (r).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (r).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (rflat).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (rflat).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_outside_differential (r).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_outside_differential (r).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (r).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (r).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (rflat).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (rflat).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_outside_differential (r).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_outside_differential (r).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(13_SelectedOutsideWithEdges)
|
TEST(14_SelectedOutsideWithEdges)
|
||||||
{
|
{
|
||||||
db::Edges e;
|
db::Edges e;
|
||||||
e.insert (db::Edge (0, 0, 0, 1000));
|
e.insert (db::Edge (0, 0, 0, 1000));
|
||||||
|
|
@ -794,6 +800,7 @@ TEST(13_SelectedOutsideWithEdges)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Edges ee;
|
db::Edges ee;
|
||||||
|
|
@ -801,7 +808,8 @@ TEST(13_SelectedOutsideWithEdges)
|
||||||
ee.insert (db::Edge (i, -1000, i, 0));
|
ee.insert (db::Edge (i, -1000, i, 0));
|
||||||
}
|
}
|
||||||
for (int i = 1000; i <= 2000; i += 100) {
|
for (int i = 1000; i <= 2000; i += 100) {
|
||||||
ee.insert (db::Edge (i, 1000, i, 2000));
|
ee.insert (db::Edge (i, 1000, i, 1500));
|
||||||
|
ee.insert (db::Edge (i, 1500, i, 2000));
|
||||||
}
|
}
|
||||||
|
|
||||||
// make deep
|
// make deep
|
||||||
|
|
@ -824,9 +832,9 @@ TEST(13_SelectedOutsideWithEdges)
|
||||||
db::Edges eeflat = ee;
|
db::Edges eeflat = ee;
|
||||||
ee = db::Edges (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
ee = db::Edges (db::RecursiveShapeIterator (ly, top_cell, l2), dss);
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (db::Edges ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (db::Edges ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).second, ""), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (ee), ""), true);
|
||||||
|
|
@ -835,14 +843,14 @@ TEST(13_SelectedOutsideWithEdges)
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (ee), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (ee), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (eeflat), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (eeflat), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_outside (ee), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_outside (ee), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (ee), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (ee), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (eeflat), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (eeflat), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_not_outside (ee), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_not_outside (ee), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (eeflat).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (eeflat).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_outside_differential (ee).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_outside_differential (ee).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (eeflat).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (eeflat).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (eflat.selected_outside_differential (ee).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (eflat.selected_outside_differential (ee).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -980,23 +980,25 @@ TEST(24)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Region r;
|
db::Region r;
|
||||||
r.insert (db::Box (0, -1000, 2000, 0));
|
r.insert (db::Box (0, -1000, 2000, 0));
|
||||||
r.insert (db::Box (1000, 1000, 2000, 2000));
|
r.insert (db::Box (1000, 1000, 2000, 1500));
|
||||||
|
r.insert (db::Box (1000, 1500, 2000, 2000));
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (db::Region ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside (db::Region ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).first, ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Region ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).first, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).second, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (r).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (r), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside (r), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (r), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (r), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (r).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (r).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (r).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (r).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1015,6 +1017,7 @@ TEST(25)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Edges ee;
|
db::Edges ee;
|
||||||
|
|
@ -1022,20 +1025,21 @@ TEST(25)
|
||||||
ee.insert (db::Edge (i, -1000, i, 0));
|
ee.insert (db::Edge (i, -1000, i, 0));
|
||||||
}
|
}
|
||||||
for (int i = 1000; i <= 2000; i += 100) {
|
for (int i = 1000; i <= 2000; i += 100) {
|
||||||
ee.insert (db::Edge (i, 1000, i, 2000));
|
ee.insert (db::Edge (i, 1000, i, 1500));
|
||||||
|
ee.insert (db::Edge (i, 1500, i, 2000));
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (db::Edges ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside (db::Edges ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).first, ""), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (db::Edges ()).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_inside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).first, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).second, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_inside_differential (ee).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside (ee), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside (ee), "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_inside (ee), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_inside (ee), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).first, "(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_inside_differential (ee).second, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1500,1000;1500,2100);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1054,24 +1058,26 @@ TEST(26)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Region r;
|
db::Region r;
|
||||||
r.insert (db::Box (0, -1000, 2000, 0));
|
r.insert (db::Box (0, -1000, 2000, 0));
|
||||||
r.insert (db::Box (1000, 1000, 2000, 2000));
|
r.insert (db::Box (1000, 1000, 2000, 1500));
|
||||||
|
r.insert (db::Box (1000, 1500, 2000, 2000));
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (db::Region ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (db::Region ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (db::Region ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).second, ""), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Region ()).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (r), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (r), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (r).first, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (r).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (r).second, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (r).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (r), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (r), "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (r), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (r), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (r).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (r).first, "(0,0;0,1000);(100,0;100,3000);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (r).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (r).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1700,1500;1600,2500);(1900,1000;1900,2000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Edges::selected_outside(edges)
|
// Edges::selected_outside(edges)
|
||||||
|
|
@ -1089,6 +1095,7 @@ TEST(27)
|
||||||
e.insert (db::Edge (1600, -400, 1600, -200));
|
e.insert (db::Edge (1600, -400, 1600, -200));
|
||||||
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
e.insert (db::Edge (1700, 1500, 1600, 2500));
|
||||||
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
e.insert (db::Edge (1800, 2500, 1800, 3500));
|
||||||
|
e.insert (db::Edge (1900, 1000, 1900, 2000));
|
||||||
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
e.insert (db::Edge (-1500, 0, -1500, 1000));
|
||||||
|
|
||||||
db::Edges ee;
|
db::Edges ee;
|
||||||
|
|
@ -1096,21 +1103,22 @@ TEST(27)
|
||||||
ee.insert (db::Edge (i, -1000, i, 0));
|
ee.insert (db::Edge (i, -1000, i, 0));
|
||||||
}
|
}
|
||||||
for (int i = 1000; i <= 2000; i += 100) {
|
for (int i = 1000; i <= 2000; i += 100) {
|
||||||
ee.insert (db::Edge (i, 1000, i, 2000));
|
ee.insert (db::Edge (i, 1000, i, 1500));
|
||||||
|
ee.insert (db::Edge (i, 1500, i, 2000));
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (db::Edges ()), "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (db::Edges ()), ""), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (db::Edges ()), ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).first, "(0,0;0,1000);(100,0;100,3000);(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-400);(1600,-400;1600,-200);(1700,1500;1600,2500);(1800,2500;1800,3500);(1900,1000;1900,2000);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).second, ""), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (db::Edges ()).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (ee), ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_not_outside (ee), ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (ee).first, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (ee).first, ""), true);
|
||||||
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (ee).second, ""), true);
|
EXPECT_EQ (db::compare (db::Edges ().selected_outside_differential (ee).second, ""), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside (ee), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside (ee), "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_not_outside (ee), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_not_outside (ee), "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).first, "(0,0;0,1000);(100,0;100,3000);(1700,1500;1600,2500);(1800,2500;1800,3500);(-1500,0;-1500,1000)"), true);
|
||||||
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200)"), true);
|
EXPECT_EQ (db::compare (e.selected_outside_differential (ee).second, "(1100,-1000;1100,2000);(1200,-1000;1200,0);(1300,-800;1300,-200);(1400,1000;1400,1100);(1500,1000;1500,2100);(1600,-800;1600,-200);(1900,1000;1900,2000)"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
// GitHub issue #72 (Edges/Region NOT issue)
|
// GitHub issue #72 (Edges/Region NOT issue)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue