I'm implementing a volume renderer and I want to use Windowing Transfer Function to enable the user to change the opacity of some regions. As far as I understood, there are three variables window, offset and scale
The window is how much of my values I want to change the alpha for, the offset is how far my window from the minimum value. But I'm not sure what is the scale ? Is it the increase between one alpha value to the next, or is it the maximum alpha in my current window?
Am I missing anything or getting anything wrong?
This is what I have in mind
"scale" does not sound like a standard term in this context. You'll need to get the exact definition from whoever is providing the parameters to you.
In DICOM, which is mostly used for medical volume datasets, the two directly related tags are:
In other words, if alpha is 0 until value Value0, and is 1 starting at Value1:
Or writing the relationships in the opposite direction:
The closest thing to "scale" I have heard as a standard term in this domain are the "RescaleIntercept" and "RescaleSlope" tags. But those define a linear mapping for the data itself, not for the transfer function.
My best guess would be that "window" corresponds to "WindowWidth" in the definition above, and "offset" corresponds to "WindowCenter". But you really need to request clarification from the original source of these parameters. And ask them what they mean by "scale".