Bug introduced in 10.1 and fixed in 10.3.0
I want to find the intersection (region) of 2 polygons. I use RegionInstersection
but it only works for some sizes, for example, when c=.5
it gives the correct result, but with c=.4
it only finds a line as intersection.
Area[r3[.5]]
works fine...
Area[r3[.4]]
does not work...
What is wrong?
b = 15.0;
d = 4.0;
lbp = 40.0;
d1E = 2.;
l1E = 7.0;
d1D = d1E;
l1D = 5.0;
r1 = Polygon[{{0, 0}, {lbp/2 - l1D, 0}, {lbp/2, d1D}, {lbp/2,
d}, {-(lbp/2), d}, {-(lbp/2), d1E}, {-(lbp/2) + l1E, 0}}];
r2[c_] := Rectangle[{-1.1 lbp/2, -1.5}, {1.1 lbp/2, c}];
r3[c_] := RegionIntersection[r1, r2[c]];
Answer
This bug has been fixed as of Mathematica 10.3.
b = 15.0; d = 4.0; lbp = 40.0; d1E = 2.; l1E = 7.0; d1D = d1E; l1D = 5.0;
r1 = Polygon[{{0, 0}, {lbp/2 - l1D, 0}, {lbp/2, d1D}, {lbp/2, d},
{-(lbp/2), d}, {-(lbp/2), d1E}, {-(lbp/2) + l1E, 0}}];
r2[c_] := Rectangle[{-1.1 lbp/2, -1.5}, {1.1 lbp/2, c}];
r3[c_] := RegionIntersection[r1, r2[c]];
{Area[r3[.5]], Area[r3[.4]]}
(* {14.75, 11.68} *)
Comments
Post a Comment