コード例 #1
0
ファイル: ExtensionMethods.cs プロジェクト: marlonnn/CII.HV
 public static void InitializeThumbCustomShape(this BaseCtrl baseCtrl)
 {
     foreach (var ctrl in baseCtrl.Controls)
     {
         MaterialSlider ms = ctrl as MaterialSlider;
         if (ms != null)
         {
             GraphicsPath gp2 = new GraphicsPath();
             gp2.AddEllipse(new RectangleF((0 + ms.Height) / 2f, (0 + ms.Height) / 2f, 10, 10));
             ms.ThumbCustomShape = gp2;
         }
     }
 }
コード例 #2
0
        public void Refresh(LineModel lineModel)
        {
            _emitEvent = false;
            _lineModel = lineModel;
            _titleInputField.inputField.text = lineModel.DisplayName;
            _layerSlider.slider.value        = lineModel.Layer;

            _emissionSwitch.toggle.isOn               = lineModel.IsEmissionEnabled;
            _brushEmissionSlider.slider.value         = lineModel.EmissionIntensity;
            _brushEmissionColorButton.backgroundColor = lineModel.EmissionColor;

            _audioPanel.SetActive(lineModel.Shape != Shape.Phyllotaxis);
            _phyllotaxisPanel.SetActive(lineModel.Shape == Shape.Phyllotaxis);

            _emissionReactSwitch.toggle.isOn             = lineModel.EmissionProperty.IsEmissionReactOnAudio;
            _emissionThresholdSlider.slider.value        = (lineModel.EmissionProperty.EmissionThreshold);
            _emissionBandBufferSlider.slider.value       = (lineModel.EmissionProperty.EmissionBandBuffer);
            _emissionFrequencyDropdown.currentlySelected = (int)lineModel.EmissionProperty.EmissionFrequencyType;

            _scaleReactSwitch.toggle.isOn       = lineModel.ScaleProperty.IsScaleReactOnAudio;
            _scaleMultiplierSlider.slider.value = (lineModel.ScaleProperty.ScaleMultiplier);
            _scaleBandBufferSlider.slider.value = (lineModel.ScaleProperty.ScaleBandBuffer);

            _brushEmissionSlider.gameObject.SetActive(lineModel.IsEmissionEnabled);
            _emissionThresholdSlider.gameObject.SetActive(lineModel.EmissionProperty.IsEmissionReactOnAudio);
            _emissionBandBufferSlider.gameObject.SetActive(lineModel.EmissionProperty.IsEmissionReactOnAudio);
            _emissionFrequencyDropdown.gameObject.SetActive(lineModel.EmissionProperty.IsEmissionReactOnAudio);

            _scaleMultiplierSlider.gameObject.SetActive(lineModel.ScaleProperty.IsScaleReactOnAudio);
            _scaleBandBufferSlider.gameObject.SetActive(lineModel.ScaleProperty.IsScaleReactOnAudio);
            _scaleThresholdSlider.gameObject.SetActive(lineModel.ScaleProperty.IsScaleReactOnAudio);
            _scaleFrequencyDropdown.gameObject.SetActive(lineModel.ScaleProperty.IsScaleReactOnAudio);

            _kochReactSwitch.toggle.isOn = lineModel.KochLineProperty.IsKochEnabled;
            _kochReactSwitch.gameObject.SetActive(lineModel.Shape != Shape.Line);

            _startGenerationList.transform.parent.parent.gameObject.SetActive(lineModel.Shape != Shape.Line && lineModel.KochLineProperty.IsKochEnabled);
            _audioBandLayoutGroup.transform.parent.parent.gameObject.SetActive(lineModel.Shape != Shape.Line && lineModel.KochLineProperty.IsKochEnabled);

            _trailSwitch.toggle.isOn = _lineModel.KochTrailProperty.IsTrailEnabled;
            _trailSwitch.gameObject.SetActive(lineModel.Shape != Shape.Line && lineModel.KochLineProperty.IsKochEnabled);

            _trailsMinMaxParent.gameObject.SetActive(lineModel.Shape != Shape.Line && lineModel.KochLineProperty.IsKochEnabled && lineModel.KochTrailProperty.IsTrailEnabled);
            _trailMinSpeedSlider.slider.value = (lineModel.KochTrailProperty.TrailSpeedMinMax.x);
            _trailMaxSpeedSlider.slider.value = (lineModel.KochTrailProperty.TrailSpeedMinMax.y);

            _trailMinTimeSlider.slider.value = (lineModel.KochTrailProperty.TrailTimeMinMax.x);
            _trailMaxTimeSlider.slider.value = (lineModel.KochTrailProperty.TrailTimeMinMax.y);

            _trailMinWidthSlider.slider.value = (lineModel.KochTrailProperty.TrailWidthMinMax.x);
            _trailMaxWidthSlider.slider.value = (lineModel.KochTrailProperty.TrailWidthMinMax.y);

            _degreeSlider.slider.value       = lineModel.PhyllotaxisProperty.Degree;
            _scaleSlider.slider.value        = lineModel.PhyllotaxisProperty.Scale;
            _numberStartSlider.slider.value  = lineModel.PhyllotaxisProperty.NumberStart;
            _stepSizeSlider.slider.value     = lineModel.PhyllotaxisProperty.StepSize;
            _maxIterationSlider.slider.value = lineModel.PhyllotaxisProperty.MaxIterations;

            _useLerpingCheckbox.toggle.isOn          = lineModel.PhyllotaxisProperty.UseLerping;
            _lerpFrequencyDropdown.currentlySelected = (int)lineModel.PhyllotaxisProperty.LerpFrequencyType;
            _lerpBandSlider.slider.value             = lineModel.PhyllotaxisProperty.LerpAudioBand;
            _speedMinSlider.slider.value             = lineModel.PhyllotaxisProperty.SpeedMinMax.x;
            _speedMaxSlider.slider.value             = lineModel.PhyllotaxisProperty.SpeedMinMax.y;
            _repeatCheckbox.toggle.isOn = lineModel.PhyllotaxisProperty.Repeat;
            _invertCheckbox.toggle.isOn = lineModel.PhyllotaxisProperty.Invert;

            _useScaleCheckbox.toggle.isOn = lineModel.PhyllotaxisProperty.UseScaling;
            _scalePhylloFrequencyDropdown.currentlySelected = (int)lineModel.PhyllotaxisProperty.ScaleFrequencyType;
            _scaleBandSlider.slider.value      = lineModel.PhyllotaxisProperty.ScaleAudioBand;
            _scaleMinSlider.slider.value       = lineModel.PhyllotaxisProperty.ScaleMinMax.x;
            _scaleMaxSlider.slider.value       = lineModel.PhyllotaxisProperty.ScaleMinMax.y;
            _useScaleCurveCheckbox.toggle.isOn = lineModel.PhyllotaxisProperty.UseScaleCurve;
            _scaleSpeedSlider.slider.value     = lineModel.PhyllotaxisProperty.InterpolationSpeed;

            _audioBands.Clear();
            int audioBandSliderToGenerate = (int)lineModel.Shape + 2;

            foreach (Transform child in _audioBandLayoutGroup.transform)
            {
                Destroy(child.gameObject);
            }

            if (lineModel.Shape != Shape.Phyllotaxis)
            {
                for (int i = 0; i < audioBandSliderToGenerate; i++)
                {
                    MaterialSlider slider = Instantiate(_audioBandSlider, _audioBandLayoutGroup.transform, false);
                    slider.leftContentTransform.GetComponentInChildren <Text>().text = i.ToString();
                    slider.slider.value = (lineModel.KochLineProperty.KochAudioBand[i]);
                    slider.slider.onValueChanged.AddListener(OnAudioBandValueChanged);
                    _audioBands.Add(slider);
                }
            }

            RefreshKochStartGeneration();
            _emitEvent = true;
            UpdateGradient(lineModel.Gradient);
            LayoutRebuilder.ForceRebuildLayoutImmediate(_verticalLayoutGroup.GetComponent <RectTransform>());
        }