public SequenceTestWindow() { mWindow = new WindowDevice(); mMapPerimeter = new GlimPixelMap.Factory { { mWindow, 0, 94 } }.Compile(); mEdgeLeft = new GlimPixelMap.Factory { { mWindow, 55, -48 } }.Compile(); mEdgeRight = new GlimPixelMap.Factory { { mWindow, 54, 40 }, { mWindow, 0, 8 } }.Compile(); mFxCometLeft = new FxComet { PixelCount = mEdgeLeft.PixelCount + 10, BaseColor = Color.White, TailPixelLength = 10, SpeedPixelsPerSecond = 40 }; mFxCometRight = new FxComet { PixelCount = mEdgeRight.PixelCount + 10, BaseColor = Color.White, TailPixelLength = 10, SpeedPixelsPerSecond = 40 }; AddLuminanceControl(v => mFxPerimeter.Luminance = v); AddSaturationControl(v => mFxPerimeter.Saturation = v); }
public SequenceChristmas2020() { fxCandy = new FxCandyCane(); fxAll = new FxScale(fxCandy); fxWindows = new FxScale(fxAll); windowsLuminance = new ControlVariableRatio { Value = 0.2 }; periodSeconds = new ControlVariableInteger(0, 15, 1) { Value = fxCandy.PeriodSeconds }; stripeColour = new ControlVariableColour { Value = fxCandy.ColourStripe }; fillColour = new ControlVariableColour { Value = fxCandy.ColourBackground }; pixWindows = new GlimPixelMap.Factory { devLounge, devDining }.Compile(); pixRoof = new GlimPixelMap.Factory { devRoof }.Compile(); AddLuminanceControl(v => fxAll.Luminance = v); AddSaturationControl(v => fxAll.Saturation = v); Controls.Add("Windows Lum", windowsLuminance); windowsLuminance.ValueChanged += (s, e) => fxWindows.Luminance = windowsLuminance.Value; Controls.Add("Period (S)", periodSeconds); periodSeconds.ValueChanged += (s, e) => fxCandy.PeriodSeconds = periodSeconds.Value; //Controls.Add( "Colour Stripe", ); }
public GlimDescriptor(string displayName, string hostName, int pixelCount, Color partyColor) : base(displayName, hostName, pixelCount) { PartyColor = partyColor; mFxComet = null; mPixelMap = new GlimPixelMap.Factory { { this, 0, 100 } }.Compile(); }
public GlimPixelMapStrider(IGlimPixelMap dst, int period, int gap) { if (period < 1 || gap < 1) { throw new ArgumentOutOfRangeException("Both period and gap must be 1 or higher"); } mDst = dst; mPeriod = period; mStride = period + gap; }
public override void SetDiscoveredDevices(IEnumerable <IGlimDevice> devices) { var gf = new GlimPixelMap.Factory(); foreach (var d in devices) { var sd = new SequenceDeviceBasic(d.HostName, d.HostName, 300); mDevices.Add(sd); gf.Add(sd); } mPixelMap = gf.Compile(); }
public void AddSequence(string name, IGlimPixelMap map, IEnumerable <IFx> fx) { var seq = new FxSequence(map, fx); mSequences.Add(seq); if (!string.IsNullOrEmpty(name)) { if (mNamedSequences.ContainsKey(name)) { throw new ExceptionMessage("Sequence name '{0}' occurs twice.", name); } mNamedSequences.Add(name, seq); } }
public SequenceHalloween2020() { pixWindows = new GlimPixelMap.Factory { devLounge, devDining }.Compile(); pixRoof = new GlimPixelMap.Factory { devRoof }.Compile(); fxWave = new FxWave(); fxAll = new FxScale(fxWave); fxWindows = new FxScale(fxAll); AddLuminanceControl(v => fxAll.Luminance = v); AddSaturationControl(v => fxAll.Saturation = v); Controls.Add("Windows Lum", windowsLuminance); windowsLuminance.ValueChanged += (s, e) => fxWindows.Luminance = windowsLuminance.Value; Controls.Add("Period (S)", periodSeconds); periodSeconds.ValueChanged += (s, e) => fxWave.PeriodSeconds = periodSeconds.Value; }
public SequenceParty() { Luminance = AddLuminanceControl(x => { }); Saturation = AddSaturationControl(x => { }); // comets! mGlimRedGun = new GlimDescriptor("Red", "GlimSwarm-103", 150, Color.Red); mGlimBlueGun = new GlimDescriptor("Blue", "GlimSwarm-104", 100, Color.Blue); mGlimStars = new SequenceDeviceBasic("Stars", "GlimSwarm-102", 150); mFxBarrel = new FxComet { BaseColor = Color.FromArgb(0xff, 0, 0xff), PixelCount = 50 }; mFxCannonTwinkle = new FxStarlightTwinkle { BaseColor = Color.FromArgb(0xff, 0, 0xff), SpeedFactor = 15.0, LuminanceMinima = 0.2, LuminanceMaxima = 0.8 }; mPixelMapStars = new GlimPixelMap.Factory { mGlimStars }.Compile(); mPixelMapBarrel = new GlimPixelMap.Factory { { mGlimRedGun, 100, 50 } }.Compile(); mPixelMapPerimeter = new GlimPixelMap.Factory { { mGlimRedGun, 0, 100 }, { mGlimBlueGun, 100, -100 } }.Compile(); mFxPerimeterRainbow = new FxScale(new FxRainbow()); mFxStarlight = new FxScale(new FxStarlightTwinkle { BaseColor = Color.Yellow }) { Saturation = 0.3 }; }
public FxSequence(IGlimPixelMap map, IEnumerable <IFx> fx) { mFx.AddRange(fx); mPixelMap = map; }