public void RoundtripScaleTest()
        {
            var swTransformData = new double[]
            {
                -0.173281870700371,
                -0.568901317857332,
                -0.803943209329347,
                0.871391797781904,
                -0.468966056249135,
                0.144038789374787,
                -0.458965933425347,
                -0.675590207615774,
                0.576999257650021,
                0.118738080204305,
                3.07942116552466E-03,
                -1.31754673526319E-02,
                3,
                0,
                0,
                0
            };

            var matrix = TransformConverter.ToTransformMatrix(swTransformData);

            var res = TransformConverter.ToMathTransformData(matrix);

            CollectionAssert.AreEqual(swTransformData, res, new DoubleComparer());
        }
        public void IdentityTest()
        {
            var matrix = TransformConverter.ToTransformMatrix(new double[]
            {
                1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
            });

            CollectionAssert.AreEqual(TransformMatrix.Identity.ToArray(), matrix.ToArray(), new DoubleComparer());
        }
        public void ToMathTransformTest()
        {
            var matrix        = new TransformMatrix(0.227240687239813, 0.130118199184401, 0.114296007651233, 0, -0.173173945982243, 0.173173945982242, 0.147153735688577, 0, -0.00225999047373953, -0.186313423389655, 0.216598369728654, 0, 0.202001019294273, 0.304139434520347, -0.00901467562486433, 1);
            var transformData = TransformConverter.ToMathTransformData(matrix);

            var expTransform = new double[] { 0.795342405339345, 0.455413697145403, 0.400036026779314, -0.606108810937849, 0.606108810937846, 0.515038074910018, -7.90996665808835E-03, -0.652096981863791, 0.758094294050287, 0.202001019294273, 0.304139434520347, -9.01467562486433E-03, 0.285714285714286, 0, 0, 0 };

            CollectionAssert.AreEqual(expTransform, transformData, new DoubleComparer());
        }
        public void TranslationTest()
        {
            var matrix = TransformConverter.ToTransformMatrix(new double[]
            {
                1, 0, 0, 0, 1, 0, 0, 0, 1, 0.01, 0.02, 0.03, 1, 0, 0, 0
            });

            Assert.AreEqual(matrix.M41, 0.01);
            Assert.AreEqual(matrix.M42, 0.02);
            Assert.AreEqual(matrix.M43, 0.03);
        }
        public void RotationTest()
        {
            //30 degs rotation around X
            var matrix = new TransformMatrix(
                1, 0, 0, 0,
                0, 0.86602540378, -0.5, 0,
                0, 0.5, 0.86602540378, 0,
                0, 0, 0, 1);

            var data = TransformConverter.ToMathTransformData(matrix);

            CollectionAssert.AreEqual(new double[] { 1, 0, 0, 0, 0.86602540378, -0.5, 0, 0.5, 0.86602540378, 0, 0, 0, 1, 0, 0, 0 }, data);
        }
        public void RoundtripRotationTranslationTest()
        {
            var swTransformData = new double[]
            {
                0.499999999999998, 0.5, -0.707106781186549, -0.146446609406726,
                0.853553390593274, 0.5, 0.853553390593275, -0.146446609406726,
                0.499999999999998, -0.0974873734152917, -0.072487373415292,
                0.122487373415293, 1, 0, 0, 0
            };

            var matrix = TransformConverter.ToTransformMatrix(swTransformData);

            var res = TransformConverter.ToMathTransformData(matrix);

            CollectionAssert.AreEqual(swTransformData, res);
        }
 public void Initialize()
 {
     Converter = new TransformConverter();
 }
Esempio n. 8
0
 public ConvertisseurWrappers([NotNull] TransformConverter transform)
 {
     TransformConverter = transform;
 }
Esempio n. 9
0
 public override Object Convert(IExportContainer container)
 {
     return(TransformConverter.Convert(container, this));
 }