internal void RotateByValue(float value) { if (m_RotateButtonOnDrawerOpen) { value = Mathf.Clamp01(value); m_RotationValue = value; var angle = value * m_MaxRotationAngle; m_InnerIcon.rectTransform.eulerAngles = new Vector3(0, 0, angle); m_CurrentColor = ComponentUtils.MixColorsByValue(m_StartColor, m_EndColor, m_RotationValue); SetColors(); } else { m_RotationValue = 0; } }
private void ChangeView(float knobMovePercent) { if (m_ChangeColorOnSwitch) { m_Knob.color = ComponentUtils.MixColorsByValue(m_KnobOffColor, m_KnobOnColor, knobMovePercent); m_Background.color = ComponentUtils.MixColorsByValue(m_BackgroundOffColor, m_BackgroundOnColor, knobMovePercent); } else { m_Knob.color = m_KnobOnColor; m_Background.color = m_BackgroundOnColor; } var posX = ((m_StartX - m_EndX) * knobMovePercent) + m_EndX; m_KnobTransform.anchoredPosition = new Vector2(posX, m_KnobPosY); }
/// <summary> /// Can be used in the inheritors /// </summary> /// <param name="value"></param> protected virtual void SetAnimationProgress(float value) { m_CurrentColor = ComponentUtils.MixColorsByValue(m_StartColor, m_EndColor, value); SetColors(); }
protected override void OnValidate() { base.OnValidate(); m_CurrentColor = ComponentUtils.MixColorsByValue(m_StartColor, m_EndColor, m_RotationValue); }