private CALayer SetupLayers() { backgroundLayer = SetupBackgroundLayer (); backgroundLayer.AddSublayer (SetupClockFaceLayer ()); backgroundLayer.AddSublayer (SetupBorderLayer ()); backgroundLayer.AddSublayer (SetupGlossyLayer ()); return backgroundLayer; }
public override void AwakeFromNib () { Layer = new CALayer (); Layer.AddSublayer (MovingLayer); WantsLayer = true; }
public override void AwakeFromNib () { // Create the root layer rootLayer = new CALayer (); // Set the root layer;s background color to black rootLayer.BackgroundColor = new CGColor (0,0,0); // Create the fire emitter layer fireEmitter = new CAEmitterLayer (); fireEmitter.Position = new System.Drawing.PointF (225,50); fireEmitter.Mode = CAEmitterLayer.ModeOutline; fireEmitter.Shape = CAEmitterLayer.ShapeLine; fireEmitter.RenderMode = CAEmitterLayer.RenderAdditive; fireEmitter.Size = new SizeF (0,0); // Create the smoke emitter layer smokeEmitter = new CAEmitterLayer (); smokeEmitter.Position = new PointF (225,50); smokeEmitter.Mode = CAEmitterLayer.ModePoints; // Create the fire emitter cell CAEmitterCell fire = CAEmitterCell.EmitterCell (); fire.EmissionLongitude = (float)Math.PI; fire.BirthRate = 0; fire.Velocity = 80; fire.VelocityRange = 30; fire.EmissionRange = 1.1f; fire.AccelerationY = 200; fire.ScaleSpeed = 0.3f; RectangleF rect = RectangleF.Empty; CGColor color = new CGColor (0.8f,0.4f,0.2f,0.10f); fire.Color = color; fire.Contents = NSImage.ImageNamed ("fire.png").AsCGImage (ref rect, null, null); // Name the cell so that it can be animated later using keypaths fire.Name = "fire"; // Add the fire emitter cell to the fire emitter layer fireEmitter.Cells = new CAEmitterCell[] { fire }; //Create the smoke emitter cell CAEmitterCell smoke = CAEmitterCell.EmitterCell (); smoke.BirthRate = 11; smoke.EmissionLongitude = (float)Math.PI / 2; smoke.LifeTime = 0; smoke.Velocity = 40; smoke.VelocityRange = 20; smoke.EmissionRange = (float)Math.PI / 4; smoke.Spin = 1; smoke.SpinRange = 6; smoke.AccelerationY = 160; smoke.Scale = 0.1f; smoke.AlphaSpeed = -0.12f; smoke.ScaleSpeed = 0.7f; smoke.Contents = NSImage.ImageNamed ("smoke.png").AsCGImage (ref rect, null, null); //Name the cell so that it can be animated later using keypaths smoke.Name = "smoke"; // Add the smoke emitter cell to the smoke emitter layer smokeEmitter.Cells = new CAEmitterCell[] { smoke }; // Add the two emitter layers to the root layer rootLayer.AddSublayer (smokeEmitter); rootLayer.AddSublayer (fireEmitter); // Set the view's layer to the base layer view.Layer = rootLayer; view.WantsLayer = true; // Set the fire simulation to reflect the intial slider postion slidersChanged (this); // Force the view to update view.NeedsDisplay = true; }
public void CreateLineLayers () { lineContainer = CALayer.Create (); lineContainer.AnchorPoint = new PointF (0, 0); lineContainer.Bounds = new RectangleF (0, 0, 640, 480); lineLayers = new List<CALayer> (); foreach (string l in lines) { CALayer layer; if (l.Trim() == "") layer = null; else layer = GuiUtil.ComposeText (l, fnt, pal, 640/*Painter.SCREEN_RES_X*/ - X_OFFSET * 2, -1, 4); lineLayers.Add (layer); if (layer != null) lineContainer.AddSublayer (layer); } }
protected override CALayer CreateLayer () { layer = CALayer.Create (); layer.Bounds = new RectangleF (0, 0, Width, Height); layer.AnchorPoint = new PointF (0, 0); layer.Delegate = new MovieElementLayerDelegate (this); if (player == null) return layer; ScalePlayer (); if (dim != 0) { CreateDimLayer (); dimLayer.BackgroundColor = new CGColor (0, (float)dim / 255); layer.AddSublayer (dimLayer); } return layer; }
public override void AwakeFromNib () { // center our fire horizontally on the view and 15px from the bottom var firePosition = new PointF (view.Bounds.Width / 2, 15); rootLayer = new CALayer { BackgroundColor = new CGColor (0, 0, 0) }; fireEmitter = new CAEmitterLayer { Position = firePosition, Mode = CAEmitterLayer.ModeOutline, Shape = CAEmitterLayer.ShapeLine, RenderMode = CAEmitterLayer.RenderAdditive, Size = SizeF.Empty, Cells = new [] { new CAEmitterCell { Name = "fire", // name the cell so that it can be animated later using keypaths EmissionLongitude = (float)Math.PI, BirthRate = 0, Velocity = 80, VelocityRange = 30, EmissionRange = 1.1f, AccelerationY = 200, ScaleSpeed = 0.3f, Color = new CGColor (0.8f, 0.4f, 0.2f, 0.10f), Contents = NSImage.ImageNamed ("fire.png").CGImage } } }; smokeEmitter = new CAEmitterLayer { Position = firePosition, Mode = CAEmitterLayer.ModePoints, Cells = new [] { new CAEmitterCell { Name = "smoke", // name the cell so that it can be animated later using keypaths BirthRate = 11, EmissionLongitude = (float)Math.PI / 2, LifeTime = 0, Velocity = 40, VelocityRange = 20, EmissionRange = (float)Math.PI / 4, Spin = 1, SpinRange = 6, AccelerationY = 160, Scale = 0.1f, AlphaSpeed = -0.12f, ScaleSpeed = 0.7f, Contents = NSImage.ImageNamed ("smoke.png").CGImage } } }; rootLayer.AddSublayer (smokeEmitter); rootLayer.AddSublayer (fireEmitter); view.Layer = rootLayer; view.WantsLayer = true; // Set the fire simulation to reflect the intial slider postion slidersChanged (this); // Force the view to update view.NeedsDisplay = true; }