Exemplo n.º 1
0
 public override void Dispose()
 {
     if (geometry != null)
     {
         geometry.Dispose();
     }
     geometry = null;
     if (mesh != null)
     {
         mesh.Dispose();
     }
     mesh = null;
     base.Dispose();
 }
Exemplo n.º 2
0
        public LayerShape(RenderTarget initialRenderTarget, Random random, D2DFactory d2DFactory, D2DBitmap bitmap, int count)
            : base(initialRenderTarget, random, d2DFactory, bitmap)
        {
            Parameters = new LayerParameters();
            parameters.ContentBounds = CoinFlip ? RandomRect(CanvasWidth, CanvasHeight) : new RectF(0, 0, CanvasWidth, CanvasHeight);
            if (CoinFlip)
            {
                GeometricMaskShape = new GeometryShape(initialRenderTarget, random, d2DFactory, Bitmap);
                parameters.GeometricMask = GeometricMaskShape.Geometry;
            }
            parameters.MaskAntialiasMode = CoinFlip ? AntialiasMode.Aliased : AntialiasMode.PerPrimitive;
            parameters.MaskTransform = RandomMatrix3x2();
            parameters.Opacity = RandomOpacity();
            if (CoinFlip)
                parameters.OpacityBrush = RandomOpacityBrush();
            parameters.Options = CoinFlip ? LayerOptions.InitializeForClearType : LayerOptions.None;

            for(int i = 0; i < count; i++)
            {
                shapes.Add(RandomShape());
            }
        }
Exemplo n.º 3
0
        private Mesh MeshFromRandomGeometry()
        {
            if (geometry != null)
            {
                geometry.Dispose();
            }
            geometry = new GeometryShape(RenderTarget, Random, d2DFactory, Bitmap);
            Mesh             m    = RenderTarget.CreateMesh();
            TessellationSink sink = m.Open();

            if (geometry.worldTransform.HasValue)
            {
                geometry.Geometry.Tessellate(sink, FlatteningTolerance, geometry.worldTransform.Value);
            }
            else
            {
                geometry.Geometry.Tessellate(sink, FlatteningTolerance);
            }
            sink.Close();
            sink.Dispose();
            return(m);
        }
Exemplo n.º 4
0
        public LayerShape(RenderTarget initialRenderTarget, Random random, D2DFactory d2DFactory, D2DBitmap bitmap, int count)
            : base(initialRenderTarget, random, d2DFactory, bitmap)
        {
            Parameters = new LayerParameters();
            parameters.ContentBounds = CoinFlip ? RandomRect(CanvasWidth, CanvasHeight) : new RectF(0, 0, CanvasWidth, CanvasHeight);
            if (CoinFlip)
            {
                GeometricMaskShape       = new GeometryShape(initialRenderTarget, random, d2DFactory, Bitmap);
                parameters.GeometricMask = GeometricMaskShape.Geometry;
            }
            parameters.MaskAntiAliasMode = CoinFlip ? AntiAliasMode.Aliased : AntiAliasMode.PerPrimitive;
            parameters.MaskTransform     = RandomMatrix3x2();
            parameters.Opacity           = RandomOpacity();
            if (CoinFlip)
            {
                parameters.OpacityBrush = RandomOpacityBrush();
            }
            parameters.Options = CoinFlip ? LayerOptions.InitializeForClearType : LayerOptions.None;

            for (int i = 0; i < count; i++)
            {
                shapes.Add(RandomShape());
            }
        }
Exemplo n.º 5
0
 public override void Dispose()
 {
     foreach (var shape in ChildShapes)
     {
         shape.Dispose();
     }
     ChildShapes.Clear();
     if (parameters.OpacityBrush != null)
     {
         parameters.OpacityBrush.Dispose();
     }
     if (GeometricMaskShape != null)
     {
         GeometricMaskShape.Dispose();
     }
     GeometricMaskShape      = null;
     parameters.OpacityBrush = null;
     if (Layer != null)
     {
         Layer.Dispose();
     }
     Layer = null;
     base.Dispose();
 }
Exemplo n.º 6
0
 private Mesh MeshFromRandomGeometry()
 {
     if (geometry != null)
         geometry.Dispose();
     geometry = new GeometryShape(RenderTarget, Random, d2DFactory, Bitmap);
     Mesh m = RenderTarget.CreateMesh();
     TessellationSink sink = m.Open();
     if (geometry.worldTransform.HasValue)
         geometry.Geometry.Tessellate(sink, FlatteningTolerance, geometry.worldTransform.Value);
     else
         geometry.Geometry.Tessellate(sink, FlatteningTolerance);
     sink.Close();
     sink.Dispose();
     return m;
 }
Exemplo n.º 7
0
 public override void Dispose()
 {
     if (geometry != null)
         geometry.Dispose();
     geometry = null;
     if (mesh != null)
         mesh.Dispose();
     mesh = null;
     base.Dispose();
 }
Exemplo n.º 8
0
 public override void Dispose()
 {
     foreach (var shape in ChildShapes)
     {
         shape.Dispose();
     }
     ChildShapes.Clear();
     if (parameters.OpacityBrush != null)
         DisposeBrush(parameters.OpacityBrush);
     if (GeometricMaskShape != null)
         GeometricMaskShape.Dispose();
     GeometricMaskShape = null;
     parameters.OpacityBrush = null;
     if (Layer != null)
         Layer.Dispose();
     Layer = null;
     base.Dispose();
 }