using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Text; namespace Dbscan { /// /// A point on the 2-d plane. /// /// The x-coordinate of the point. /// The y-coordinate of the point. public struct Point : IEquatable { /// The x-coordinate of the point. public double X { get; set; } /// The y-coordinate of the point. public double Y { get; set; } /// /// A point on the 2-d plane. /// /// The x-coordinate of the point. /// The y-coordinate of the point. public Point(double X, double Y) { this.X = X; this.Y = Y; } [CompilerGenerated] public override string ToString() { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("Point"); stringBuilder.Append(" { "); if (PrintMembers(stringBuilder)) { stringBuilder.Append(' '); } stringBuilder.Append('}'); return stringBuilder.ToString(); } [CompilerGenerated] private bool PrintMembers(StringBuilder builder) { builder.Append("X = "); builder.Append(X.ToString()); builder.Append(", Y = "); builder.Append(Y.ToString()); return true; } [CompilerGenerated] public static bool operator !=(Point left, Point right) { return !(left == right); } [CompilerGenerated] public static bool operator ==(Point left, Point right) { return left.Equals(right); } [CompilerGenerated] public override int GetHashCode() { return EqualityComparer.Default.GetHashCode(X) * -1521134295 + EqualityComparer.Default.GetHashCode(Y); } [CompilerGenerated] public override bool Equals(object obj) { if (obj is Point) { return Equals((Point)obj); } return false; } [CompilerGenerated] public bool Equals(Point other) { if (EqualityComparer.Default.Equals(X, other.X)) { return EqualityComparer.Default.Equals(Y, other.Y); } return false; } [CompilerGenerated] public void Deconstruct(out double X, out double Y) { X = this.X; Y = this.Y; } } public class Data : IPointData { public long ID { get; set; } public Point Point { get; set; } } }