Inheritance: SvgTransform
コード例 #1
0
ファイル: RulerView.cs プロジェクト: stahlnow/Timeliner
        protected virtual void ApplyInverseScaling()
        {
            //apply inverse scaling to numbers

            //pan/zoom
            var m = PanZoomGroup.Transforms[0].Matrix;
            var inv = new SvgScale(1/m.Elements[0], 1);

            var nums = NumberGroup.Children.Where(x => x is SvgText);
            foreach (var num in nums)
                num.Transforms[1] = inv;

            //..to loopregion handler
            LoopStart.Width = 1/m.Elements[0] * CHandlerWidth;
            LoopEnd.Width = 1/m.Elements[0] * CHandlerWidth;
        }
コード例 #2
0
ファイル: StringTrackView.cs プロジェクト: stahlnow/Timeliner
        protected override void ApplyInverseScaling()
        {
            //apply inverse scaling to keyframes

            //pan/zoom
            var m = PanZoomGroup.Transforms[0].Matrix;
            var s1 = new SvgScale(m.Elements[0], m.Elements[3]);

            //min/max
            m = PanZoomGroup.Transforms[1].Matrix;
            var s2 = new SvgScale(m.Elements[0], m.Elements[3]);

            //trackheight
            m = TrackGroup.Transforms[0].Matrix;

            m.Multiply(s2.Matrix);
            m.Multiply(s1.Matrix);
            m.Invert();

            KeyframeDefinition.Transforms[0] = new SvgMatrix(m.Elements.ToList());
            CollapsedKeyframeDefinition.Transforms[0] = KeyframeDefinition.Transforms[0];
        }