ParticleSystemCurveEditor.CreateCurveWrapper C# (CSharp) Method

CreateCurveWrapper() private method

private CreateCurveWrapper ( UnityEditor.SerializedProperty curve, int id, int regionId, Color color, bool signedRange, CurveWrapper getAxisScalarsCallback, CurveWrapper setAxisScalarsCallback ) : CurveWrapper
curve UnityEditor.SerializedProperty
id int
regionId int
color Color
signedRange bool
getAxisScalarsCallback UnityEditor.CurveWrapper
setAxisScalarsCallback UnityEditor.CurveWrapper
return UnityEditor.CurveWrapper
    private CurveWrapper CreateCurveWrapper(SerializedProperty curve, int id, int regionId, Color color, bool signedRange, CurveWrapper.GetAxisScalarsCallback getAxisScalarsCallback, CurveWrapper.SetAxisScalarsCallback setAxisScalarsCallback)
    {
        CurveWrapper wrapper = new CurveWrapper {
            id = id,
            regionId = regionId,
            color = color,
            renderer = new NormalCurveRenderer(curve.animationCurveValue)
        };
        wrapper.renderer.SetWrap(curve.animationCurveValue.preWrapMode, curve.animationCurveValue.postWrapMode);
        if (wrapper.curve.keys.Length == 1)
        {
            wrapper.renderer.SetCustomRange(0f, 1f);
            wrapper.wrapColorMultiplier = Color.clear;
        }
        else
        {
            wrapper.renderer.SetCustomRange(0f, 0f);
            wrapper.wrapColorMultiplier = color;
        }
        wrapper.vRangeMin = !signedRange ? 0f : -1f;
        wrapper.getAxisUiScalarsCallback = getAxisScalarsCallback;
        wrapper.setAxisUiScalarsCallback = setAxisScalarsCallback;
        return wrapper;
    }