c4d.Gradient¶
-
class
c4d.Gradient¶ Gradient data type (CUSTOMDATATYPE_GRADIENT) for the
GradientCustomGuiGUI.This type is called by value.
Methods Signatures
|
|
Returns a hash of the whole gradient state, including the needles, colors and interpolation type. |
Inverts the knots. |
|
Doubles the knots. |
|
Distributes the knots evenly. |
|
Flushes all knots. |
|
Initializes the renderer. |
|
Free the render. |
|
Calculates a gradient pixel. |
|
Insert a knot. Not passed arguments will be set with default values. |
|
Delete a knot. |
|
Returns the information about a knot. |
|
Set the values of a knot. |
|
Gets a data item from the gradient container. |
|
Sets a data item from the gradient container. |
|
Gets the knot count. |
|
Gets a copy of the alpha gradient. |
|
Create a alpha of the gradient. Similar to |
|
Convert the current gradient to an alpha gradient. |
Inheritance
Parent Class:
Methods Documentation
-
Gradient.__init__(self, v)¶ - Parameters
v (c4d.Gradient) – Copy constructor.
-
Gradient.__hash__(self)¶ Returns a hash of the whole gradient state, including the needles, colors and interpolation type.
print(hash(obj) #hash calls obj.__hash__())
- Return type
int
- Returns
Hash value
-
Gradient.InvertKnots(self)¶ Inverts the knots.
- Return type
bool
- Returns
True if successful, otherwise False.
-
Gradient.DoubleKnots(self)¶ Doubles the knots.
- Return type
bool
- Returns
True if successful, otherwise False.
-
Gradient.DistributeKnots(self)¶ Distributes the knots evenly.
New in version R20.
- Return type
bool
- Returns
True if successful, otherwise False.
-
Gradient.FlushKnots(self)¶ Flushes all knots.
-
Gradient.InitRender(self, irs)¶ Initializes the renderer.
Note
Call before
CalcGradientPixel().- Parameters
irs (c4d.modules.render.InitRenderStruct) – Information about the upcoming rendering.
- Return type
bool
- Returns
True if successful, otherwise False.
-
Gradient.FreeRender(self)¶ Free the render.
Note
Call after gradient calculation is finished.
-
Gradient.CalcGradientPixel(self, pos)¶ Calculates a gradient pixel.
Note
This has to be done within a pair of
InitRender()/FreeRender()calls.Here is an example.
gradient = op[c4d.LIGHT_VISIBILITY_GRADIENT] irs = render.InitRenderStruct() if gradient.InitRender(irs): print(gradient.CalcGradientPixel(0.5)) gradient.FreeRender()
- Parameters
pos (float) – X position.
- Return type
- Returns
Calculated pixel.
-
Gradient.InsertKnot(self, col, brightness, pos, bias, index)¶ Insert a knot. Not passed arguments will be set with default values.
- Parameters
col (c4d.Vector) – The color.
brightness (float) – The brightness.
pos (float) – The position.
bias (float) – The bias.
index (int) – The index.
- Return type
int
- Returns
The new knot
Note
The new knot index is
GetKnotCount()- 1
-
Gradient.RemoveKnot(self, index)¶ Delete a knot.
- Parameters
index (int) –
index knot.
Note
0 <= index <
GetKnotCount()
-
Gradient.GetKnot(self, index)¶ Returns the information about a knot.
- Parameters
index (int) –
The index.
Note
The new knot index has to be 0 <= index <
Gradient.GetKnotCount()Check out this small example.
col, brightness, pos, bias, index = gradient.GetKnot(index)
- Return type
Dict[int, c4d.Vector, float, float, float]
- Returns
A dictionary with the knot information.
-
Gradient.SetKnot(self, index, col, brightness, pos, bias)¶ Set the values of a knot.
Note
Just the passed arguments will be set, the other will be discarded.
- Parameters
index (int) –
The knot index.
Note
The new knot index has to be 0 <= index <
Gradient.GetKnotCount()col (c4d.Vector) – The color.
brightness (float) – The brightness.
pos (float) – The position.
bias (float) – The bias.
-
Gradient.GetData(self, id)¶ Gets a data item from the gradient container.
- Parameters
id (int) –
Data ID:
GRADIENT_KNOT
Holds the knots as sub-containers:
GRADIENTKNOT_COLOR
Color.
GRADIENTKNOT_BRIGHTNESS
float
Brightness.
GRADIENTKNOT_POSITION
float
Position.
GRADIENTKNOT_BIAS
float
Bias.
GRADIENTKNOT_ID
int
Index.
GRADIENTKNOT_INTERPOLATION
int
GRADIENT_INTERPOLATION_CUBICKNOT
Cubic knot.
GRADIENT_INTERPOLATION_SMOOTHKNOT
Smooth knot.
GRADIENT_INTERPOLATION_LINEARKNOT
Linear knot.
GRADIENT_INTERPOLATION_NONE
None.
GRADIENT_INTERPOLATION_EXP_UP
Exponential up.
GRADIENT_INTERPOLATION_EXP_DOWN
Exponential down.
GRADIENT_INTERPOLATION_BLEND
New in version R20: Blend.
GRADIENT_MODE
int
Mode:
GRADIENTMODE_COLOR
Color only.
GRADIENTMODE_ALPHA
Alpha only.
GRADIENTMODE_COLORALPHA
Color and alpha.
GRADIENT_UNCLAMPED
bool
Unclamped
- Return type
object
- Returns
The data.
-
Gradient.SetData(self, id, data)¶ Sets a data item from the gradient container.
- Parameters
id (int) –
Data ID:
GRADIENT_KNOT
Holds the knots as sub-containers:
GRADIENTKNOT_COLOR
Color.
GRADIENTKNOT_BRIGHTNESS
float
Brightness.
GRADIENTKNOT_POSITION
float
Position.
GRADIENTKNOT_BIAS
float
Bias.
GRADIENTKNOT_ID
int
Index.
GRADIENTKNOT_INTERPOLATION
int
GRADIENT_INTERPOLATION_CUBICKNOT
Cubic knot.
GRADIENT_INTERPOLATION_SMOOTHKNOT
Smooth knot.
GRADIENT_INTERPOLATION_LINEARKNOT
Linear knot.
GRADIENT_INTERPOLATION_NONE
None.
GRADIENT_INTERPOLATION_EXP_UP
Exponential up.
GRADIENT_INTERPOLATION_EXP_DOWN
Exponential down.
GRADIENT_INTERPOLATION_BLEND
New in version R20: Blend.
GRADIENT_MODE
int
Mode:
GRADIENTMODE_COLOR
Color only.
GRADIENTMODE_ALPHA
Alpha only.
GRADIENTMODE_COLORALPHA
Color and alpha.
GRADIENT_UNCLAMPED
bool
Unclamped
data (object) – The data.
-
Gradient.GetKnotCount(self)¶ Gets the knot count.
- Return type
int
- Returns
Knot count.
-
Gradient.GetAlphaGradient(self)¶ Gets a copy of the alpha gradient.
Note
It is just a copy of the original gradient.Can be changed, but has no effect to the original alpha-gradient.- Return type
- Returns
Alpha gradient.
-
Gradient.AllocAlphaGradient(self)¶ Create a alpha of the gradient. Similar to
Gradient.GetAlphaGradient().Note
It is a copy of the original gradient.Can be changed, but has no effect to the original alpha-gradient.- Return type
- Returns
Alpha gradient.
-
Gradient.ConvertToAlphaGradient(self)¶ Convert the current gradient to an alpha gradient.