1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

Control Range of Control with Other Controls?

Discussion in 'Building With Reaktor' started by cloud_cover, Oct 14, 2012.

  1. cloud_cover

    cloud_cover New Member

    Messages:
    6
    Sorry for the phraseception on the title there :lol:

    Is it possible to change the range of a control, like a knob or a fader, using the output of another control, in Reaktor? I want to use horizontal faders to change the minimum, maximum, step size and number of steps of one axis on an XY field and I'm not sure how to do it.

    I'm much more familiar with Max/MSP than Reaktor, and to relate to that world for a moment, in Max 6 it is now possible to use Attribute (@) statements to address (almost) any parameter for any object that is available in the Inspector window, even dumb things like the background color of the object. So, I think of this idea as something like a message object stating "@maxval 12000 @minval 10 @stepsize 100 @steps 1000" with draggable int boxes being able to transpose each of the four of those.

    I'm just learning Reaktor's workflow now, and getting used to its heavy reliance on properties windows instead of using more objects to address parameters of other objects.

    Can anybody lend a hand?

    Thanks!
     
  2. magneson

    magneson Forum Member

    Messages:
    333
    I might be wrong about this, so if someone more experienced in this wants to correct it, feel free.

    As far as I've understood, you cannot alter the properties of an object from the panel (or any control for that matter). This only means that you'll have to use another approach to the matter though.

    If we think about what a knob does physically, it provides a value between minimum and maximum. Translated to mathematics, this would mean a value between 0% and 100%. If you then want a knob to output a value between 0-100, you could either set the min/max value in the properties to 0 - 100 (which will lock the values), or you could use multiplication to get to the values.

    To do this, you set the value of the knob to the range of 0 - 1. You then connect the knob to a multiplier, and add a value of 100. Now the value of 100 will be multiplied with whatever the knob is currently at. This means that at knob position 0, you will output a value of 0, as 0 x 100 = 0, at knob position 1, you will output a value of 100 as 1 x 100 = 100, and at knob position 0.5 you will output 50 as 0.5 x 100 = 50, etc.

    So, by altering the value you multiply, you get different results. This value can be altered either by a constant, a knob/fader, another signal, a modulator, etc.
     
  3. salamanderanagram

    salamanderanagram NI Product Owner

    Messages:
    3,454
    unfortunately you need to do some math.

    the knobs in the transformers series have this capacity, but they are far from simple (the knobs themselves are extremely complex, the part you want is pretty simple tho). you can check them out at my blog ;)

    the ones in optimus prime specifically can change their range, stepsize and number of steps dynamically.
     
    Last edited: Oct 14, 2012
  4. colB

    colB NI Product Owner

    Messages:
    3,969
    I like to use controls that go from 0 to 1, then scale them - this makes it easy to make them exponential, logarithmic etc....


    if you have a 0...1 knob/fader and you want to alter its range using a min and max setting, it goes something like this

    output = (fader * (max - min)) + min

    your min and max can be -ve or +ve as long as max is greater than min.
     
  5. cloud_cover

    cloud_cover New Member

    Messages:
    6
    Thank everyone for your input. As I was pondering it last night, barring what I was asking for being a possibility in Reaktor (which it seems as though it's not), I came to the same conclusion about just coming up with basically a series of multiplying range knobs to dial in on a value, a bit like changing the display of an oscilloscope.

    Kind of a bummer, maybe I can use XY's or something of the sort to compound some of the multipliers and make it a bit less clunky, but hopefully I'll come up with something eloquent in a reasonable amount of time.

    salamanderanagram, I'll pry open your Optimus Prime instrument for a bit and see if its knobs could be of service to my current processor, thanks for the solicitation.
     
  6. colB

    colB NI Product Owner

    Messages:
    3,969
    I'm a bit confused here, What you asked for can be done easily - look at my earlier post for simple explanation of controlling the range of one control with the output of another. You would also need to quantize the output of your XY pane to control the number of steps/step size.
    If this doesn't do what you want, then maybe you could explain in more detail exactly what you can't do that you need to do ?

    cheers

    Col