Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Apply a flatter or steeper variation in the middle of an interval
ResourceFunction["GainRescale"][a,x] biases x to be flatter towards the middle if a<1/2, and steeper towards the middle if a>1/2, as x runs from 0 to 1. | |
ResourceFunction["GainRescale"][a,x,{min,max}] biases x as x runs from min to max. | |
ResourceFunction["GainRescale"][a,x,{min,max},{ymin,ymax}] biases x as x runs from min to max, with the result rescaled to run from ymin to ymax. |
Evaluate numerically:
In[1]:= |
Out[1]= |
Plot over a subset of the reals:
In[2]:= |
Out[2]= |
Plot different gain functions:
In[3]:= |
Out[3]= |
Evaluate for symbolic x:
In[4]:= |
Out[4]= |
GainRescale threads over lists in its first and second arguments:
In[5]:= |
Out[5]= |
In[6]:= |
Out[6]= |
Plot different gain functions with a rescaled domain:
In[7]:= |
Out[7]= |
Plot different gain functions with a rescaled domain and range:
In[8]:= |
Out[8]= |
Compare the Schlick and Perlin gain functions:
In[9]:= |
Out[9]= |
In[10]:= |
Out[10]= |
Adjust the middle color of a built-in color gradient:
In[11]:= |
Out[11]= |
Demonstrate the effect of GainRescale on easing in/easing out:
In[12]:= |
Out[12]= |
GainRescale[1/2,x,{min,max}] is equivalent to Rescale[x,{min,max}]:
In[13]:= |
Out[13]= |
GainRescale[a,x] is a symmetrized version of the resource function BiasedRescale, made symmetric about x=1/2:
In[14]:= |
Out[14]= |
GainRescale is left unevaluated if the first argument is nonnumeric:
In[15]:= |
Out[15]= |
GainRescale is left unevaluated if the first argument is not a real number between 0 and 1:
In[16]:= |
Out[16]= |
This work is licensed under a Creative Commons Attribution 4.0 International License