Ejemplo n.º 1
0
 public InputState(IntPtr windowPtr, SKMatrix viewTransform)
 {
     _invViewTransform = viewTransform.Invert();
     Glfw.SetCursorPosCallback(windowPtr, OnCursorPosChanged);
     Glfw.SetMouseButtonCallback(windowPtr, OnMouseButtonChanged);
     Glfw.SetKeyCallback(windowPtr, OnKeyChanged);
 }
Ejemplo n.º 2
0
        public virtual void Render(SKCanvas canvas)
        {
            SKMatrix visual = VisualTransform;
            SKMatrix invert = visual.Invert();

            canvas.Concat(ref visual);
            Draw(canvas);
            canvas.Concat(ref invert);
        }
Ejemplo n.º 3
0
        public override void Render(SKCanvas canvas)
        {
            base.Render(canvas);
            SKMatrix visual = _childrenVisualTransform;
            SKMatrix invert = visual.Invert();

            canvas.Concat(ref visual);
            RenderChildren(canvas);
            canvas.Concat(ref invert);
        }
Ejemplo n.º 4
0
        public void InverseOfMatrixIsCorrect()
        {
            var rowMajor = new float[] {
                1, 2, 3,
                0, 1, 4,
                5, 6, 1,
            };
            var expectedRowMajor = new float[] {
                -11.5f, 8, 2.5f,
                10, -7, -2,
                -2.5f, 2, 0.5f,
            };

            var matrix  = new SKMatrix(rowMajor);
            var inverse = matrix.Invert();

            Assert.Equal(expectedRowMajor, inverse.Values);
        }