示例#1
0
        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));
        }
示例#2
0
        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);
        }