[英]Equality of GDI+ Regions
为什么断言在以下代码中失败? 为什么区域a
和b
相等?
Region a = new Region(new RectangleF(0.0f, 0.0f, 10.0f, 10.0f));
Region b = new Region();
b.MakeEmpty();
b.Union(new RectangleF(0.0f, 0.0f, 10.0f, 10.0f));
Debug.Assert(a == b, "Regions not equal");
从我可以看到, System.Drawing.Region
不会覆盖Object
的Equals()
。 因此,您的==
调用使用的是ReferenceEquals
,只是告诉您a
和b
不是同一对象。
尝试改用System.Drawing.Region.Equals(Region, Graphics)
重载,在要比较两个区域的上下文中传递Graphics
对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.