Fixed merge issues

This commit is contained in:
Matthias Koefferlein 2025-03-06 21:09:11 +01:00
parent 87e7d8e493
commit 903bd70223
7 changed files with 8 additions and 9 deletions

View File

@ -256,11 +256,10 @@ AsIfFlatEdgePairs::filtered_pair (const EdgePairFilterBase &filter) const
{
std::unique_ptr<FlatEdgePairs> new_edge_pairs_true (new FlatEdgePairs ());
std::unique_ptr<FlatEdgePairs> new_edge_pairs_false (new FlatEdgePairs ());
db::PropertyMapper pm (new_edge_pairs_true->properties_repository (), properties_repository ());
for (EdgePairsIterator p (begin ()); ! p.at_end (); ++p) {
FlatEdgePairs *dest = filter.selected (*p) ? new_edge_pairs_true.get () : new_edge_pairs_false.get ();
insert_ep (dest, *p, pm (p.prop_id ()));
FlatEdgePairs *dest = filter.selected (*p, p.prop_id ()) ? new_edge_pairs_true.get () : new_edge_pairs_false.get ();
insert_ep (dest, *p, p.prop_id ());
}
return std::make_pair (new_edge_pairs_true.release (), new_edge_pairs_false.release ());

View File

@ -730,7 +730,7 @@ AsIfFlatEdges::filtered_pair (const EdgeFilterBase &filter) const
std::unique_ptr<FlatEdges> new_region_false (new FlatEdges ());
for (EdgesIterator p (begin_merged ()); ! p.at_end (); ++p) {
if (filter.selected (*p)) {
if (filter.selected (*p, p.prop_id ())) {
new_region_true->insert (*p);
} else {
new_region_false->insert (*p);

View File

@ -440,7 +440,7 @@ AsIfFlatRegion::filtered_pair (const PolygonFilterBase &filter) const
std::unique_ptr<FlatRegion> new_region_false (new FlatRegion ());
for (RegionIterator p (begin_merged ()); ! p.at_end (); ++p) {
if (filter.selected (*p)) {
if (filter.selected (*p, p.prop_id ())) {
new_region_true->insert (*p);
} else {
new_region_false->insert (*p);

View File

@ -178,7 +178,7 @@ AsIfFlatTexts::filtered_pair (const TextFilterBase &filter) const
std::unique_ptr<FlatTexts> new_texts_false (new FlatTexts ());
for (TextsIterator p (begin ()); ! p.at_end (); ++p) {
if (filter.selected (*p)) {
if (filter.selected (*p, p.prop_id ())) {
new_texts_true->insert (*p);
} else {
new_texts_false->insert (*p);

View File

@ -1660,7 +1660,7 @@ DeepRegion::apply_filter (const PolygonFilterBase &filter, bool with_true, bool
for (db::Shapes::shape_iterator si = s.begin (db::ShapeIterator::All); ! si.at_end (); ++si) {
db::Polygon poly;
si->polygon (poly);
if (filter.selected (poly.transformed (*v), si->prop_id ())) {
if (filter.selected (poly.transformed (tr), si->prop_id ())) {
if (st_true) {
st_true->insert (*si);
}

View File

@ -1596,7 +1596,7 @@ TEST(65)
}
}
TEST(65)
TEST(66)
{
db::Layout g;
init_layout (g);
@ -1609,6 +1609,6 @@ TEST(65)
s = q2s_var (iq, "cell_name");
EXPECT_EQ (s, "c1,c5x");
s = q2s_var (iq, "inst_elements");
EXPECT_EQ (s, "cell_index=0 r0 *1 10,-20,cell_index=4 r0 *1 10,-20");
EXPECT_EQ (s, "(cell_index=0 r0 *1 10,-20),(cell_index=4 r0 *1 10,-20)");
}
}

Binary file not shown.