Python API
---------- Added RenderData.activeLayer attribute, lets user access the active rendering layer. Also corrected description of RenderData.freeImages attribute. Note: doesn't seem like there is any support in the python API for accessing the renderlayers settings....
This commit is contained in:
@@ -246,10 +246,12 @@ class RenderData:
|
||||
@type extensions: boolean
|
||||
@ivar compositor: 'Do Compositor' enabled.
|
||||
@type compositor: boolean
|
||||
@ivar freeImages: 'Do Compositor' enabled.
|
||||
@ivar freeImages: Texture images are freed after render.
|
||||
@type freeImages: boolean
|
||||
@ivar singleLayer: Only render the active layer.
|
||||
@type singleLayer: boolean
|
||||
@ivar activeLayer: The active render layer. Must be in range[0,num render layers-1]
|
||||
@type activeLayer: int
|
||||
@ivar saveBuffers: Save render buffers to disk while rendering, saves memory.
|
||||
@type saveBuffers: boolean
|
||||
@ivar compositeFree: Free nodes that are not used while composite.
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: sceneRender.c 12813 2007-12-07 09:51:02Z campbellbarton $
|
||||
* $Id$
|
||||
*
|
||||
* ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
|
||||
*
|
||||
@@ -2357,6 +2357,32 @@ static int RenderData_setThreads( BPy_RenderData *self, PyObject *value )
|
||||
return 0;
|
||||
}
|
||||
|
||||
PyObject *RenderData_getActiveLayer( BPy_RenderData * self )
|
||||
{
|
||||
return PyInt_FromLong( (long) self->renderContext->actlay );
|
||||
}
|
||||
|
||||
static int RenderData_setActiveLayer( BPy_RenderData *self, PyObject *value )
|
||||
{
|
||||
int layer;
|
||||
short nr;
|
||||
SceneRenderLayer *srl;
|
||||
|
||||
if( !PyInt_Check( value ) )
|
||||
return EXPP_ReturnIntError( PyExc_TypeError, "active layer must be an int" );
|
||||
|
||||
layer = PyInt_AsLong( value );
|
||||
for(nr=0, srl= self->renderContext->layers.first; srl; srl= srl->next, nr++) {
|
||||
}
|
||||
if(layer >= nr)
|
||||
return EXPP_ReturnIntError( PyExc_ValueError, "value larger than number of render layers" );
|
||||
|
||||
self->renderContext->actlay = layer;
|
||||
EXPP_allqueue(REDRAWBUTSSCENE, 0);
|
||||
EXPP_allqueue(REDRAWNODE, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/***************************************************************************/
|
||||
/* BPy_RenderData attribute def */
|
||||
/***************************************************************************/
|
||||
@@ -2600,6 +2626,11 @@ static PyGetSetDef BPy_RenderData_getseters[] = {
|
||||
"Scene link 'set' value",
|
||||
NULL},
|
||||
|
||||
{"activeLayer",
|
||||
(getter)RenderData_getActiveLayer, (setter)RenderData_setActiveLayer,
|
||||
"Active rendering layer",
|
||||
NULL},
|
||||
|
||||
{"yafrayGIMethod",
|
||||
(getter)RenderData_getYafrayGIMethod, (setter)RenderData_setYafrayGIMethod,
|
||||
"Global illumination method",
|
||||
|
Reference in New Issue
Block a user