public ISvgTransform Initialize(ISvgTransform newItem) { return (ISvgTransform) base.Initialize(newItem); }
public ISvgTransform InsertItemBefore(ISvgTransform newItem, uint index) { return (ISvgTransform) base.InsertItemBefore(newItem, index); }
public ISvgTransform ReplaceItem(ISvgTransform newItem, uint index) { return (ISvgTransform) base.ReplaceItem(newItem, index); }
public ISvgTransform AppendItem(ISvgTransform newItem) { return (ISvgTransform) base.AppendItem(newItem); }
protected void SetTransform(WpfDrawingContext context) { _transformMatrix = null; ISvgTransformable transElm = _svgElement as ISvgTransformable; if (transElm != null) { SvgTransformList transformList = (SvgTransformList)transElm.Transform.AnimVal; if (transformList.NumberOfItems > 1 && _combineTransforms == false) { TransformGroup transformGroup = new TransformGroup(); List <Transform> transforms = new List <Transform>(); for (uint i = 0; i < transformList.NumberOfItems; i++) { ISvgTransform transform = transformList.GetItem(i); double[] values = transform.InputValues; switch (transform.TransformType) { case SvgTransformType.Translate: if (values.Length == 1) { // SetTranslate(values[0], 0); //transformGroup.Children.Add(new TranslateTransform(values[0], 0)); transforms.Add(new TranslateTransform(values[0], 0)); } else if (values.Length == 2) { // SetTranslate(values[0], values[1]); //transformGroup.Children.Add(new TranslateTransform(values[0], values[1])); transforms.Add(new TranslateTransform(values[0], values[1])); } break; case SvgTransformType.Rotate: if (values.Length == 1) { // SetRotate(values[0]); //transformGroup.Children.Add(new RotateTransform(values[0])); transforms.Add(new RotateTransform(values[0])); } else if (values.Length == 3) { // SetRotate(values[0], values[1], values[2]); //transformGroup.Children.Add(new RotateTransform(values[0], values[1], values[2])); transforms.Add(new RotateTransform(values[0], values[1], values[2])); } break; case SvgTransformType.Scale: if (values.Length == 1) { //SetScale(values[0], values[0]); transformGroup.Children.Add(new ScaleTransform(values[0], values[0])); } else if (values.Length == 2) { //SetScale(values[0], values[1]); //transformGroup.Children.Add(new ScaleTransform(values[0], values[1])); transforms.Add(new ScaleTransform(values[0], values[1])); } break; case SvgTransformType.SkewX: if (values.Length == 1) { //SetSkewX(values[0]); //transformGroup.Children.Add(new SkewTransform(values[0], 0)); transforms.Add(new SkewTransform(values[0], 0)); } break; case SvgTransformType.SkewY: if (values.Length == 1) { //SetSkewY(values[0]); //transformGroup.Children.Add(new SkewTransform(0, values[0])); transforms.Add(new SkewTransform(0, values[0])); } break; case SvgTransformType.Matrix: if (values.Length == 6) { //SetMatrix(new SvgMatrix(values[0], values[1], values[2], values[3], values[4], values[5])); //transformGroup.Children.Add(new MatrixTransform(values[0], values[1], values[2], values[3], values[4], values[5])); transforms.Add(new MatrixTransform(values[0], values[1], values[2], values[3], values[4], values[5])); } break; } } transforms.Reverse(); transformGroup.Children = new TransformCollection(transforms); _transformMatrix = transformGroup; //_transformMatrix = new MatrixTransform(transformGroup.Value); return; } SvgMatrix svgMatrix = transformList.TotalMatrix; if (svgMatrix.IsIdentity) { return; } _transformMatrix = new MatrixTransform(Math.Round(svgMatrix.A, 4), Math.Round(svgMatrix.B, 4), Math.Round(svgMatrix.C, 4), Math.Round(svgMatrix.D, 4), Math.Round(svgMatrix.E, 4), Math.Round(svgMatrix.F, 4)); } }
public ISvgTransform AppendItem(ISvgTransform newItem) { return((ISvgTransform)base.AppendItem(newItem)); }
public ISvgTransform ReplaceItem(ISvgTransform newItem, uint index) { return((ISvgTransform)base.ReplaceItem(newItem, index)); }
public ISvgTransform InsertItemBefore(ISvgTransform newItem, uint index) { return((ISvgTransform)base.InsertItemBefore(newItem, index)); }
public ISvgTransform Initialize(ISvgTransform newItem) { return((ISvgTransform)base.Initialize(newItem)); }