public OpalEffect() { m_cachingEffect = new CachingEffect(); var clarityList = new LayerList( new AdjustmentLayer(LayerStyle.Normal(), m_cachingEffect), new AdjustmentLayer(LayerStyle.Softlight(), new SDKTestApp_Native.HighpassEffect(100, true, 8)) ); m_selectiveColorEffect = new SelectiveColorEffect { Red = new CMYK { Yellow = 5 }, Yellow = new CMYK { Yellow = 40, Key = 15 }, Green = new CMYK { Cyan = 20, Yellow = 20, Key = 30 }, Cyan = new CMYK { Key = 61 }, Blue = new CMYK { Key = 30 } }; LayerList.AddRange( // Clarity new Layer(LayerStyle.Darken(0.5), context => clarityList.ToImageProvider(context.BackgroundImage, context.HintedRenderSize)), new AdjustmentLayer(LayerStyle.Normal(), m_selectiveColorEffect), new AdjustmentLayer(LayerStyle.Normal(), new HueSaturationEffect(0.0, 0.06)), new AdjustmentLayer(LayerStyle.Normal(), new VibranceEffect() { Level = 0.1 }), new Layer(LayerStyle.Overlay(), context => new ColorImageSource(context.HintedRenderSize, Color.FromArgb(0xFF, 0xFF, 0xE6, 0x99))) ); /* Editors.Add(new RangeEditorViewModel<OpalEffect>("SaturationLevel", -1.0, 1.0, this, filter => filter.SaturationLevel, (filter, value) => filter.SaturationLevel = value)); * // Editors.Add(new RangeEditorViewModel<OpalEffect>("ContrastLevel", -1.0, 1.0, this, filter => filter.ContrastLevel, (filter, value) => filter.ContrastLevel = value)); * Editors.Add(new RangeEditorViewModel<OpalEffect>("VibranceLevel", 0, 1.0, this, filter => filter.VibranceLevel, (filter, value) => filter.VibranceLevel = value)); * Editors.Add(new RangeEditorViewModel<OpalEffect>("ShadowsHue", 0, 365, this, filter => filter.ShadowsHue, (filter, value) => filter.ShadowsHue = (int)value)); * Editors.Add(new RangeEditorViewModel<OpalEffect>("ShadowsSaturation", 0, 100, this, filter => filter.ShadowsSaturation, (filter, value) => filter.ShadowsSaturation = (int)value)); * Editors.Add(new RangeEditorViewModel<OpalEffect>("HighlightsHue", 0, 365, this, filter => filter.HighlightsHue, (filter, value) => filter.HighlightsHue = (int)value)); * Editors.Add(new RangeEditorViewModel<OpalEffect>("HighlightsSaturation", 0, 100, this, filter => filter.HighlightsSaturation, (filter, value) => filter.HighlightsSaturation = (int)value)); */ }
public OpalEffect() { m_cachingEffect = new CachingEffect(); var clarityList = new LayerList( new AdjustmentLayer(LayerStyle.Normal(), m_cachingEffect), new AdjustmentLayer(LayerStyle.Softlight(), new SDKTestApp_Native.HighpassEffect(100, true, 8)) ); m_selectiveColorEffect = new SelectiveColorEffect { Red = new CMYK {Yellow = 5}, Yellow = new CMYK {Yellow = 40, Key = 15}, Green = new CMYK {Cyan = 20, Yellow = 20, Key = 30}, Cyan = new CMYK {Key = 61}, Blue = new CMYK {Key = 30} }; LayerList.AddRange( // Clarity new Layer(LayerStyle.Darken(0.5), context => clarityList.ToImageProvider(context.BackgroundImage, context.HintedRenderSize)), new AdjustmentLayer(LayerStyle.Normal(), m_selectiveColorEffect), new AdjustmentLayer(LayerStyle.Normal(), new HueSaturationEffect(0.0, 0.06)), new AdjustmentLayer(LayerStyle.Normal(), new VibranceEffect() { Level = 0.1 }), new Layer(LayerStyle.Overlay(), context => new ColorImageSource(context.HintedRenderSize, Color.FromArgb(0xFF, 0xFF, 0xE6, 0x99))) ); /* Editors.Add(new RangeEditorViewModel<OpalEffect>("SaturationLevel", -1.0, 1.0, this, filter => filter.SaturationLevel, (filter, value) => filter.SaturationLevel = value)); // Editors.Add(new RangeEditorViewModel<OpalEffect>("ContrastLevel", -1.0, 1.0, this, filter => filter.ContrastLevel, (filter, value) => filter.ContrastLevel = value)); Editors.Add(new RangeEditorViewModel<OpalEffect>("VibranceLevel", 0, 1.0, this, filter => filter.VibranceLevel, (filter, value) => filter.VibranceLevel = value)); Editors.Add(new RangeEditorViewModel<OpalEffect>("ShadowsHue", 0, 365, this, filter => filter.ShadowsHue, (filter, value) => filter.ShadowsHue = (int)value)); Editors.Add(new RangeEditorViewModel<OpalEffect>("ShadowsSaturation", 0, 100, this, filter => filter.ShadowsSaturation, (filter, value) => filter.ShadowsSaturation = (int)value)); Editors.Add(new RangeEditorViewModel<OpalEffect>("HighlightsHue", 0, 365, this, filter => filter.HighlightsHue, (filter, value) => filter.HighlightsHue = (int)value)); Editors.Add(new RangeEditorViewModel<OpalEffect>("HighlightsSaturation", 0, 100, this, filter => filter.HighlightsSaturation, (filter, value) => filter.HighlightsSaturation = (int)value)); */ }