问题描述
我需要比较两个图形路径,以调查图形中是否有任何更改。
我从比较类开始,但是结果总是不符合我的预期。
路径:
var path1 = CreateGraphicsPath(0,100,100);
var path2 = CreateGraphicsPath(0,100);
var path3 = CreateGraphicsPath(0,200,200);
var path4 = path3.Clone() as GraphicsPath;
创建路径:(在该示例中,仅为矩形)
public GraphicsPath CreateGraphicsPath(int x,int y,int width,int height)
{
var path = new GraphicsPath();
var exampleRectangle = new Rectangle(x,y,width,height);
path.AddRectangle(exampleRectangle);
path.Closefigure();
return path;
}
我的测试:
path1.Equals(path2); // false
path1 == path2; // false
path3.Equals(path4); // false (That was unexpected)
path3 == path; // false
我还尝试了以下操作:
// PathData Comparision
path1.PathData.Equals(path2.PathData); // false
path1.PathData == path2.PathData; // false
// PathPoints Comparision
path1.PathPoints.Equals(path2.PathPoints); // false
path1.PathPoints == path2.PathPoints; // false
// Hashcodes Comparision
path1.GetHashCode() == path2.GetHashCode(); // false
path1.PathData.GetHashCode() == path2.PathData.GetHashCode(); // false
path1.PathPoints.GetHashCode() == path2.PathPoints.GetHashCode(); // false
有什么我看不到的东西吗? 它比我预期的简单得多吗?
谢谢您的建议:)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)