X-Git-Url: http://git.euphorik.ch/?p=master-thesis.git;a=blobdiff_plain;f=Parasitemia%2FParasitemiaCore%2FTypes.fs;fp=Parasitemia%2FParasitemiaCore%2FTypes.fs;h=f13043c5f9216f7f3722c8df7da35329869b951a;hp=84d4548718cb3567e6dfa9369435096a24422566;hb=2e029053d283ce141ce9870336cb9574ea4a203a;hpb=8866c578f1210295bdcf04c8212eae81d52d630a diff --git a/Parasitemia/ParasitemiaCore/Types.fs b/Parasitemia/ParasitemiaCore/Types.fs index 84d4548..f13043c 100644 --- a/Parasitemia/ParasitemiaCore/Types.fs +++ b/Parasitemia/ParasitemiaCore/Types.fs @@ -44,7 +44,19 @@ type Ellipse (cx : float32, cy : float32, a : float32, b : float32, alpha : floa PI * (3.f * (this.A + this.B) - sqrt ((3.f * this.A + this.B) * (this.A + 3.f * this.B))) override this.ToString () = - sprintf "{Ellipse: cx = %f, cy = %f, a = %f, b = %f, alpha = %f}" this.Cx this.Cy this.A this.B this.Alpha + $"{{Ellipse: cx = %f{this.Cx}, cy = %f{this.Cy}, a = %f{this.A}, b = %f{this.B}, alpha = %f{this.Alpha}}}" + + override this.Equals (other : obj) = + match other with + | :? Ellipse as otherEllipse -> + otherEllipse.Cx = this.Cx && + otherEllipse.Cy = this.Cy && + otherEllipse.A = this.A && + otherEllipse.B = this.B && + otherEllipse.Alpha = this.Alpha + | _ -> false + + override this.GetHashCode () = HashCode.Combine (this.Cx, this.Cy, this.A, this.B, this.Alpha) [] type CellClass = HealthyRBC | InfectedRBC | Peculiar