public void SetClearancePointTest() { var c = new Catenary(new Vector2(15, 100), 300, 50, 1.15, 770); var point = new Vector2(50.0, 95.0); c.SetClearancePoint(point); var x = point.X; var actual = new Vector2(x, c.CatenaryFunction(x)); CollectionAssert.AreEqual(point, actual, Extensions.AbsComparer(1e-3)); }
public void Cat_GivenClearance() { double H = 5000.0, w = 0.75, S = 1400, h = -10; var span = new Span(Vector2.UnitY * 100, S, h); var cat = new Catenary(span, w, H); double C_expect = 64; cat.Clearance = C_expect; double H_expect = 5970.4; Assert.AreEqual(H_expect, cat.HorizontalTension, 1e-1); cat.SetClearancePoint(new Vector2(300, 60)); Assert.AreEqual(3278.9, cat.HorizontalTension, 1e-1); }