mirror of
https://github.com/KLayout/klayout.git
synced 2026-08-29 01:14:35 +02:00
Merge branch 'points-as-db-objects'
This commit is contained in:
Vendored
+26
@@ -31,6 +31,8 @@ class DBEdgePair_TestClass < TestBase
|
||||
ep = RBA::EdgePair::new
|
||||
assert_equal(ep.to_s, "(0,0;0,0)/(0,0;0,0)")
|
||||
|
||||
assert_equal(ep.to_s, "(0,0;0,0)/(0,0;0,0)")
|
||||
|
||||
ep.first = RBA::Edge::new(0, 0, 10, 20)
|
||||
assert_equal(ep.to_s, "(0,0;10,20)/(0,0;0,0)")
|
||||
|
||||
@@ -57,6 +59,18 @@ class DBEdgePair_TestClass < TestBase
|
||||
assert_equal(ep.simple_polygon(0).to_s, "(-10,0;-10,30;0,0;10,20)")
|
||||
assert_equal(ep.simple_polygon(0).class.to_s, "RBA::SimplePolygon")
|
||||
|
||||
ep = RBA::EdgePair::new(RBA::Edge::new(0, 0, 10, 0), RBA::Edge::new(0, 20, 0, 0))
|
||||
|
||||
assert_equal(ep.perimeter, 30)
|
||||
assert_equal(ep.area, 100)
|
||||
assert_equal(ep.simple_polygon(0).area, 100)
|
||||
|
||||
ep = RBA::EdgePair::new(RBA::Edge::new(0, 0, 10, 0), RBA::Edge::new(0, 0, 0, 20))
|
||||
|
||||
assert_equal(ep.perimeter, 30)
|
||||
assert_equal(ep.area, 0)
|
||||
assert_equal(ep.simple_polygon(0).area, 0)
|
||||
|
||||
end
|
||||
|
||||
# Basics
|
||||
@@ -92,6 +106,18 @@ class DBEdgePair_TestClass < TestBase
|
||||
assert_equal(ep.simple_polygon(0).to_s, "(-10,0;-10,30;0,0;10,20)")
|
||||
assert_equal(ep.simple_polygon(0).class.to_s, "RBA::DSimplePolygon")
|
||||
|
||||
ep = RBA::DEdgePair::new(RBA::DEdge::new(0, 0, 10, 0), RBA::DEdge::new(0, 20, 0, 0))
|
||||
|
||||
assert_equal(ep.perimeter, 30)
|
||||
assert_equal(ep.area, 100)
|
||||
assert_equal(ep.simple_polygon(0).area, 100)
|
||||
|
||||
ep = RBA::DEdgePair::new(RBA::DEdge::new(0, 0, 10, 0), RBA::DEdge::new(0, 0, 0, 20))
|
||||
|
||||
assert_equal(ep.perimeter, 30)
|
||||
assert_equal(ep.area, 0)
|
||||
assert_equal(ep.simple_polygon(0).area, 0)
|
||||
|
||||
end
|
||||
|
||||
# Fuzzy compare
|
||||
|
||||
Vendored
+63
@@ -158,6 +158,9 @@ class DBShapes_TestClass < TestBase
|
||||
shapes.each( RBA::Shapes::SEdges ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 0 )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SPoints ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 0 )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SBoxes ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].prop_id, 0 )
|
||||
@@ -166,6 +169,7 @@ class DBShapes_TestClass < TestBase
|
||||
assert_equal( arr[0].type, RBA::Shape::t_box )
|
||||
assert_equal( arr[0].polygon.to_s, "(10,-10;10,40;50,40;50,-10)" )
|
||||
assert_equal( arr[0].simple_polygon.to_s, "(10,-10;10,40;50,40;50,-10)" )
|
||||
assert_equal( arr[0].point.inspect, "nil" )
|
||||
assert_equal( arr[0].edge.inspect, "nil" )
|
||||
assert_equal( arr[0].edge_pair.inspect, "nil" )
|
||||
assert_equal( arr[0].box.to_s, "(10,-10;50,40)" )
|
||||
@@ -190,6 +194,7 @@ class DBShapes_TestClass < TestBase
|
||||
assert_equal( arr[0].is_edge?, true )
|
||||
assert_equal( arr[0].polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].simple_polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].point.inspect, "nil" )
|
||||
assert_equal( arr[0].edge.to_s, "(-1,2;5,2)" )
|
||||
assert_equal( arr[0].edge_pair.inspect, "nil" )
|
||||
assert_equal( arr[0].box.inspect, "nil" )
|
||||
@@ -217,6 +222,7 @@ class DBShapes_TestClass < TestBase
|
||||
assert_equal( arr[0].polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].simple_polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].edge_pair.to_s, "(-1,2;5,2)/(-1,5;5,5)" )
|
||||
assert_equal( arr[0].point.inspect, "nil" )
|
||||
assert_equal( arr[0].edge.inspect, "nil" )
|
||||
assert_equal( arr[0].box.inspect, "nil" )
|
||||
assert_equal( arr[0].path.inspect, "nil" )
|
||||
@@ -228,6 +234,33 @@ class DBShapes_TestClass < TestBase
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].is_box?, true )
|
||||
|
||||
# points
|
||||
|
||||
a = RBA::Point::new( -1, 2 )
|
||||
c1.shapes( lindex ).insert( a )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SPoints ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].prop_id, 0 )
|
||||
assert_equal( arr[0].has_prop_id?, false )
|
||||
assert_equal( arr[0].is_null?, false )
|
||||
assert_equal( arr[0].type, RBA::Shape::t_point )
|
||||
assert_equal( arr[0].is_point?, true )
|
||||
assert_equal( arr[0].polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].simple_polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].point.to_s, "-1,2" )
|
||||
assert_equal( arr[0].edge.inspect, "nil" )
|
||||
assert_equal( arr[0].edge_pair.inspect, "nil" )
|
||||
assert_equal( arr[0].box.inspect, "nil" )
|
||||
assert_equal( arr[0].path.inspect, "nil" )
|
||||
assert_equal( arr[0].text.inspect, "nil" )
|
||||
assert_equal( arr[0].point == a, true )
|
||||
assert_equal( arr[0].bbox == RBA::Box::new(a, a), true )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SBoxes ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].is_box?, true )
|
||||
|
||||
# paths
|
||||
|
||||
a = RBA::Path::new( [ RBA::Point::new( 0, 10 ), RBA::Point::new( 10, 50 ) ], 25 )
|
||||
@@ -486,6 +519,9 @@ class DBShapes_TestClass < TestBase
|
||||
shapes.each( RBA::Shapes::SEdges ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 0 )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SPoints ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 0 )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SBoxes ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].prop_id, 0 )
|
||||
@@ -543,6 +579,7 @@ class DBShapes_TestClass < TestBase
|
||||
assert_equal( arr[0].is_edge_pair?, true )
|
||||
assert_equal( arr[0].dpolygon.inspect, "nil" )
|
||||
assert_equal( arr[0].dsimple_polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].dpoint.inspect, "nil" )
|
||||
assert_equal( arr[0].dedge_pair.to_s, "(-0.001,0.002;0.005,0.002)/(-0.001,0.005;0.005,0.005)" )
|
||||
assert_equal( arr[0].dedge.inspect, "nil" )
|
||||
assert_equal( arr[0].dbox.inspect, "nil" )
|
||||
@@ -554,6 +591,32 @@ class DBShapes_TestClass < TestBase
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].is_box?, true )
|
||||
|
||||
# points
|
||||
|
||||
a = RBA::DPoint::new( -1, 2 )
|
||||
c1.shapes( lindex ).insert( a )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SPoints ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].prop_id, 0 )
|
||||
assert_equal( arr[0].has_prop_id?, false )
|
||||
assert_equal( arr[0].is_null?, false )
|
||||
assert_equal( arr[0].type, RBA::Shape::t_point )
|
||||
assert_equal( arr[0].is_point?, true )
|
||||
assert_equal( arr[0].dpolygon.inspect, "nil" )
|
||||
assert_equal( arr[0].dsimple_polygon.inspect, "nil" )
|
||||
assert_equal( arr[0].dpoint.to_s, "-1,2" )
|
||||
assert_equal( arr[0].dedge.inspect, "nil" )
|
||||
assert_equal( arr[0].dedge_pair.inspect, "nil" )
|
||||
assert_equal( arr[0].dbox.inspect, "nil" )
|
||||
assert_equal( arr[0].dpath.inspect, "nil" )
|
||||
assert_equal( arr[0].dtext.inspect, "nil" )
|
||||
assert_equal( arr[0].dbbox.to_s, "(-1,2;-1,2)" )
|
||||
arr = []
|
||||
shapes.each( RBA::Shapes::SBoxes ) { |s| arr.push( s ) }
|
||||
assert_equal( arr.size, 1 )
|
||||
assert_equal( arr[0].is_box?, true )
|
||||
|
||||
# paths
|
||||
|
||||
a = RBA::DPath::new( [ RBA::DPoint::new( 0, 0.010 ), RBA::DPoint::new( 0.010, 0.050 ) ], 0.025 )
|
||||
|
||||
Reference in New Issue
Block a user