Svg2Xaml.SvgDrawableBaseElement.GetBaseDrawing C# (CSharp) Method

GetBaseDrawing() public method

public GetBaseDrawing ( ) : System.Windows.Media.Drawing
return System.Windows.Media.Drawing
        public virtual Drawing GetBaseDrawing()
        {
            Geometry geometry = GetGeometry();
              if(geometry == null)
            return null;

              if(geometry.IsEmpty())
            return null;
              if(geometry.Bounds.Width <= 0.0)
            return null;
              if(geometry.Bounds.Height <= 0.0)
            return null;

              Brush brush = GetBrush();
              Pen pen = GetPen();

              if((brush == null) && (pen == null))
            return null;

              // Apply fill-rule...

              if(geometry.GetArea() > 0.0)
              {
            PathGeometry path_geometry = Geometry.Combine(geometry, Geometry.Empty, GeometryCombineMode.Exclude, null);
            if(FillRule == SvgFillRule.Evenodd)
              path_geometry.FillRule = System.Windows.Media.FillRule.EvenOdd;
            else if(FillRule == SvgFillRule.Nonzero)
              path_geometry.FillRule = System.Windows.Media.FillRule.Nonzero;
            geometry = path_geometry;
              }
              GeometryDrawing geometry_drawing = new GeometryDrawing(brush, pen, geometry);

              return geometry_drawing;
        }