Merge pull request #2425 from KLayout/bugfix/issue-2423

Bugfix/issue 2423
This commit is contained in:
Matthias Köfferlein
2026-08-20 17:01:34 +02:00
committed by GitHub
10 changed files with 34 additions and 8 deletions
+3 -3
View File
@@ -297,10 +297,10 @@ public:
* @brief Get the interactions between the stored objects
*
* Two objects interact if the boxes of the objects enlarged by the given value overlap.
* The enlargement is specified in units of width and height, i.e. half of the enlargement
* is applied to one side before the overlap check.
*
* An enlargement of 1 means that boxes have to touch only in order to get an interaction.
* An enlargement of 1 means that boxes have to touch in order to get an interaction.
* An enlargement of 0 means that boxes have to overlap in order to get an interaction.
* To capture interactions between object precisely spaced d, use d+1 for the enlargement.
*
* The box scanner will report all interactions to the receiver object. See box_scanner_receiver
* for details about the methods that this object must provide.
+2 -1
View File
@@ -114,7 +114,8 @@ public:
/**
* @brief Gets the interaction distance
* A distance of means the shapes must overlap in order to interact.
* A distance of zero means the shapes must overlap in order to interact.
* A distance of 1 means the shapes need to touch in order to interact.
*/
virtual db::Coord dist () const { return 0; }
+2 -2
View File
@@ -888,10 +888,10 @@ std::map<unsigned int, db::Coord>
check_local_operation<TS, TI>::override_distance () const
{
// makes sure, the "foreign"-type pseudo-intruder used for merging only
// does not use the full search range, but only "touching".
// does not use the full search range, but only "touching" (distance 1).
std::map<unsigned int, db::Coord> od;
if (check_local_operation_base<TS, TI>::m_has_other) {
od.insert (std::make_pair (1, 0));
od.insert (std::make_pair (1, 1));
}
return od;
}
+11
View File
@@ -2154,3 +2154,14 @@ TEST(152d_sep_with_props)
{
run_test (_this, "152", true);
}
// issue #2423
TEST(153_issue_2423)
{
run_test (_this, "153", false);
}
TEST(153d_issue_2423)
{
run_test (_this, "153", true);
}
-2
View File
@@ -5,8 +5,6 @@ if $drc_test_deep
deep
end
deep
l1 = input(1, 0, enable_props)
l1.output(1, 0)
+16
View File
@@ -0,0 +1,16 @@
source $drc_test_source
target $drc_test_target
if $drc_test_deep
deep
end
l1 = polygons(1, 0)
l2 = polygons(2, 0)
l1.output(1, 0)
l2.output(2, 0)
l1.separation(l2, 10.um).output(100, 0)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.