Made multires and shape keys throw errors when adding if the other existed (so both can never coexist) documented this too.

This commit is contained in:
2007-02-11 02:21:26 +00:00
parent cf00e675ed
commit b90a0ce285
2 changed files with 9 additions and 0 deletions

View File

@@ -6323,6 +6323,10 @@ static PyObject *Mesh_insertKey( BPy_Mesh * self, PyObject * args )
char *type = NULL;
short typenum;
if (mesh->mr)
return EXPP_ReturnPyObjError( PyExc_RuntimeError,
"Shape Keys cannot be added to meshes with multires" );
if( !PyArg_ParseTuple( args, "|is", &fra, &type ) )
return EXPP_ReturnPyObjError( PyExc_TypeError,
"expected nothing or an int and optionally a string as arguments" );
@@ -7301,6 +7305,9 @@ static int Mesh_setFlag( BPy_Mesh * self, PyObject *value, void *type )
}
} else {
if ( !mesh->mr ) {
if (mesh->key)
return EXPP_ReturnIntError( PyExc_RuntimeError,
"Cannot enable multires for a mesh with shape keys" );
multires_make(self->object, mesh);
}
}

View File

@@ -787,6 +787,7 @@ class Mesh:
@type activeColorLayer: string
@ivar multires: The mesh has multires data, set True to add multires data.
Will throw an exception if the mesh has shape keys; use L{key} to test.
@type multires: bool
@ivar multiresLevelCount: The mesh has multires data. (read only)
@type multiresLevelCount: int
@@ -1057,6 +1058,7 @@ class Mesh:
seems that 'frame' should be kept in the range [1, 100]
(the curves can be manually tweaked in the Ipo Curve Editor window in
Blender itself later).
@warn: Will throw an error if the mesh has multires. use L{multires} to check.
"""
def addUVLayer(name):