public ComponTransformViewModel() { _transformModel = new TransformModel(); _flameColorMode = FlameColorMode.Color; Command = new RelayCommand(CommandHandler); GradientModel = new GradientModel(Colors.Gray, Colors.Gray); ColorPosition = .5; FColor = Colors.Gray; Parameter1Visibility = Visibility.Collapsed; Parameter2Visibility = Visibility.Collapsed; Parameter3Visibility = Visibility.Collapsed; Parameter4Visibility = Visibility.Collapsed; Variations = VariationFactoryModel.StaticVariationFactory.VariationNames; VariationSelected = "Linear"; BindStorage.SetActionFor(ActionValueChanged, _propParameters); BindStorage.SetActionFor(ActionValueChanged, _propValues2); BindStorage.SetActionFor(ActionTransformValueChanged, _propValues); BindStorage.SetActionFor(ActionVariationChanged, _propVariation); SetCoefficients(); }
public static void SaveImage(string folder, string name, FlameColorMode colorMode) { if (Display == null) { return; } var now = DateTime.Now; var rcMode = ""; switch (Display.RenderColorMode) { case RenderColorModeModel.RenderColorMode.Hsb: rcMode = "hsb"; break; case RenderColorModeModel.RenderColorMode.Lab: rcMode = "lab"; break; case RenderColorModeModel.RenderColorMode.LogGamma: rcMode = "log"; break; default: throw new ArgumentOutOfRangeException(); } //todo: density estimation point // Density.Estimation(Display, 0, 9, .4, out var di); var path = $"{folder}\\{name}-{now.Year}{now.Month:00}{now.Day:00}-{(int) now.TimeOfDay.TotalSeconds}-{_iterations}-{(int) _renderTime.TotalSeconds}_{rcMode}.png"; BitmapSource img; switch (colorMode) { case FlameColorMode.Color: img = Display.GetBitmapForRender(_transformationColors); // img = di.GetBitmapForRender(_transformationColors); break; case FlameColorMode.Gradient: img = Display.GetBitmapForRender(_transformationGradientValues, _gradModel); break; default: throw new ArgumentOutOfRangeException(); } ImageHelper.SaveImage(path, img); }
public RenderPackModel(TransformModel[] transformations, VariationModel[] variations, ViewSettingsModel viewSettings, RenderSettingsModel renderSettings, FlameColorMode colorMode, GradientModel gradModel) { Transformations = transformations; Variations = variations; ViewSettings = viewSettings; RenderSettings = renderSettings; ColorMode = colorMode; if (gradModel != null) { GradModelCopy = gradModel.Copy(); } }
private void ColorRadioCheckedHandler(object obj) { var radio = (RadioButton)obj; if (radio.IsChecked != true) { return; } var name = radio.Name; switch (name) { case "RadioColor": _flameColorMode = FlameColorMode.Color; break; case "RadioGradient": _flameColorMode = FlameColorMode.Gradient; break; } IsEnabledGradientMode = name == "RadioGradient"; SetColorModeForAllTransforms(_flameColorMode); }