public bool Equals(PolyLineM other) => other != null && BoundingBox.Equals(other.BoundingBox) && NumberOfParts.Equals(other.NumberOfParts) && NumberOfPoints.Equals(other.NumberOfPoints) && Parts.SequenceEqual(other.Parts) && Points.SequenceEqual(other.Points) && MeasureRange.Equals(other.MeasureRange) && Measures.SequenceEqual(other.Measures);
public bool Equals(PolyLineM other, Tolerance tolerance) => other != null && BoundingBox.Equals(other.BoundingBox, tolerance) && NumberOfParts.Equals(other.NumberOfParts) && NumberOfPoints.Equals(other.NumberOfPoints) && Parts.SequenceEqual(other.Parts) && Points.SequenceEqual(other.Points, new TolerantPointEqualityComparer(tolerance)) && MeasureRange.Equals(other.MeasureRange, tolerance) && Measures.SequenceEqual(other.Measures, new TolerantDoubleEqualityComparer(tolerance));
public void MaxReturnsExpectedResult() { var value = _fixture.Create <double>(); var sut = new MeasureRange(double.MinValue, value); var result = sut.Max; Assert.Equal(value, result); }
public override int GetHashCode() { var partsHashCode = Parts.Aggregate(0, (current, part) => current ^ part.GetHashCode()); var pointsHashCode = Points.Aggregate(0, (current, point) => current ^ point.GetHashCode()); var measuresHashCode = Measures.Aggregate(0, (current, measure) => current ^ measure.GetHashCode()); return(BoundingBox.GetHashCode() ^ NumberOfParts.GetHashCode() ^ NumberOfPoints.GetHashCode() ^ partsHashCode ^ pointsHashCode ^ MeasureRange.GetHashCode() ^ measuresHashCode); }
public PolyLineM( BoundingBox2D boundingBox, int[] parts, Point[] points, double[] measures) { BoundingBox = boundingBox ?? throw new ArgumentNullException(nameof(boundingBox)); Parts = parts ?? throw new ArgumentNullException(nameof(parts)); Points = points ?? throw new ArgumentNullException(nameof(points)); Measures = measures ?? throw new ArgumentNullException(nameof(measures)); NumberOfParts = parts.Length; NumberOfPoints = points.Length; MeasureRange = MeasureRange.FromMeasures(measures); }
public void FromMeasuresReturnsExpectedResult(double[] values, MeasureRange expected) { var result = MeasureRange.FromMeasures(values); Assert.Equal(expected, result); }
public void FromMeasuresMeasureCanNotBeNull() { Assert.Throws <ArgumentNullException>(() => MeasureRange.FromMeasures(null)); }