Region#drc_hull for generating DRC space forbidding region visualizations

This commit is contained in:
Matthias Koefferlein
2024-03-30 22:01:39 +01:00
parent 6c8ff49bc7
commit 03d77bbff6
4 changed files with 168 additions and 0 deletions
+12
View File
@@ -1452,6 +1452,18 @@ class DBRegion_TestClass < TestBase
end
# DRC hull
def test_drc_hull
r = RBA::Region::new()
r.insert(RBA::Polygon::new([[0, 0], [1000, 1000], [1500, 0]]))
assert_equal(r.drc_hull(RBA::Region::Euclidian, 200, 8).merged.to_s, "(-83,-200;-200,-83;-200,83;-141,141;859,1141;917,1200;953,1200;985,1216;1033,1200;1083,1200;1107,1176;1142,1164;1179,1089;1716,15;1700,-33;1700,-83;1675,-108;1664,-142;1619,-164;1583,-200)")
assert_equal(r.drc_hull(RBA::Region::Square, 200).merged.to_s, "(-200,-200;-200,-82;-283,0;1000,1283;1039,1243;1089,1268;1768,-89;1700,-123;1700,-200)")
assert_equal(r.drc_hull(RBA::Region::Projection, 200).merged.to_s, "(0,-200;0,0;-141,141;859,1141;1000,1000;1179,1089;1679,89;1500,0;1500,-200)")
end
end
load("test_epilogue.rb")