mirror of https://github.com/KLayout/klayout.git
Fixed interpretation of TYPE OVERLAP, added test
This commit is contained in:
parent
c62480c49b
commit
ac4b02c53a
|
|
@ -522,7 +522,7 @@ GeometryBasedLayoutGenerator::subtract_overlap_from_outline (const std::set<std:
|
||||||
pn += 2;
|
pn += 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
db::BooleanOp op (db::BooleanOp::ANotB);
|
db::BooleanOp op (db::BooleanOp::And);
|
||||||
db::ShapeGenerator sg (s->second, true /*clear shapes*/);
|
db::ShapeGenerator sg (s->second, true /*clear shapes*/);
|
||||||
db::PolygonGenerator out (sg, true, true);
|
db::PolygonGenerator out (sg, true, true);
|
||||||
proc.process (out, op);
|
proc.process (out, op);
|
||||||
|
|
|
||||||
|
|
@ -1011,3 +1011,10 @@ TEST(209_invalid_split_paths)
|
||||||
run_test (_this, "issue-1472", "map:tech.map+lef:tech.lef.gz+def:test.def.gz", "au.oas", default_options (), false);
|
run_test (_this, "issue-1472", "map:tech.map+lef:tech.lef.gz+def:test.def.gz", "au.oas", default_options (), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// issue-1499
|
||||||
|
TEST(210_overlaps)
|
||||||
|
{
|
||||||
|
run_test (_this, "issue-1499", "map:tech.map+lef:tech.lef+lef:blocks.lef+def:top.def", "au.oas", default_options (), false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,31 @@
|
||||||
|
VERSION 5.8 ;
|
||||||
|
|
||||||
|
MACRO a
|
||||||
|
ORIGIN 0 0 ;
|
||||||
|
SIZE 600 BY 600 ;
|
||||||
|
OBS
|
||||||
|
LAYER M1 ;
|
||||||
|
RECT 10 10 590 590 ;
|
||||||
|
END
|
||||||
|
END a
|
||||||
|
|
||||||
|
MACRO b
|
||||||
|
ORIGIN -600 0 ;
|
||||||
|
SIZE 400 BY 500 ;
|
||||||
|
OBS
|
||||||
|
LAYER M1 ;
|
||||||
|
RECT 610 10 990 490 ;
|
||||||
|
END
|
||||||
|
END b
|
||||||
|
|
||||||
|
MACRO c
|
||||||
|
ORIGIN -500 -500 ;
|
||||||
|
SIZE 500 BY 500 ;
|
||||||
|
OBS
|
||||||
|
LAYER M1 ;
|
||||||
|
POLYGON 510 610 610 610 610 510 990 510 990 990 510 990 ;
|
||||||
|
LAYER overlap ;
|
||||||
|
RECT 500 700 1000 1000 ;
|
||||||
|
POLYGON 500 600 600 600 600 500 1000 500 1000 700 500 700 ;
|
||||||
|
END
|
||||||
|
END c
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
VERSION 5.8 ;
|
||||||
|
|
||||||
|
LAYER M1
|
||||||
|
TYPE ROUTING ;
|
||||||
|
DIRECTION HORIZONTAL ;
|
||||||
|
WIDTH 0.1 ;
|
||||||
|
PITCH 0.1 ;
|
||||||
|
END M1
|
||||||
|
|
||||||
|
LAYER overlap
|
||||||
|
TYPE OVERLAP ;
|
||||||
|
END overlap
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
DIEAREA ALL 1 0
|
||||||
|
#BOUNDARY DIEAREA 1 0
|
||||||
|
BOUNDARY MACRO 1 0
|
||||||
|
#M1 LEFOBS 2 0
|
||||||
|
M1 LEFOBS 3 0
|
||||||
|
M1 BLOCKAGE 3 0
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
VERSION 5.8 ;
|
||||||
|
DESIGN top ;
|
||||||
|
UNITS DISTANCE MICRONS 1000 ;
|
||||||
|
DIEAREA ( 0 0 ) ( 1000000 1000000 ) ;
|
||||||
|
COMPONENTS 3 ;
|
||||||
|
- a a + PLACED ( 0 0 ) N ;
|
||||||
|
- b b + PLACED ( 600000 0 ) N ;
|
||||||
|
- c c + PLACED ( 500000 500000 ) N ;
|
||||||
|
END COMPONENTS
|
||||||
|
END DESIGN
|
||||||
Loading…
Reference in New Issue