removed some unused vars from Curve and matrix

scn.objects.new(None) - adds a new empty
 - new objects are selected by default now

further stripped down the vector struct, the wrapped state was being stored and 2 places.
This commit is contained in:
Campbell Barton
2006-10-07 11:49:53 +00:00
parent 30d207e650
commit b3a48fe82e
5 changed files with 47 additions and 72 deletions

View File

@@ -111,18 +111,15 @@ PyObject *Vector_Normalize(VectorObject * self)
resize the vector to x,y */
PyObject *Vector_Resize2D(VectorObject * self)
{
if(self->data.blend_data){
if(self->wrapped==Py_WRAP)
return EXPP_ReturnPyObjError(PyExc_TypeError,
"vector.resize2d(): cannot resize wrapped data - only python vectors\n");
}
self->data.py_data =
PyMem_Realloc(self->data.py_data, (sizeof(float) * 2));
if(self->data.py_data == NULL) {
self->vec = PyMem_Realloc(self->vec, (sizeof(float) * 2));
if(self->vec == NULL)
return EXPP_ReturnPyObjError(PyExc_MemoryError,
"vector.resize2d(): problem allocating pointer space\n\n");
}
self->vec = self->data.py_data; /*force*/
self->size = 2;
return EXPP_incr_ret((PyObject*)self);
}
@@ -130,21 +127,18 @@ PyObject *Vector_Resize2D(VectorObject * self)
resize the vector to x,y,z */
PyObject *Vector_Resize3D(VectorObject * self)
{
if(self->data.blend_data){
if (self->wrapped==Py_WRAP)
return EXPP_ReturnPyObjError(PyExc_TypeError,
"vector.resize3d(): cannot resize wrapped data - only python vectors\n");
}
self->data.py_data =
PyMem_Realloc(self->data.py_data, (sizeof(float) * 3));
if(self->data.py_data == NULL) {
self->vec = PyMem_Realloc(self->vec, (sizeof(float) * 3));
if(self->vec == NULL)
return EXPP_ReturnPyObjError(PyExc_MemoryError,
"vector.resize3d(): problem allocating pointer space\n\n");
}
self->vec = self->data.py_data; /*force*/
if(self->size == 2){
self->data.py_data[2] = 0.0f;
}
if(self->size == 2)
self->vec[2] = 0.0f;
self->size = 3;
return EXPP_incr_ret((PyObject*)self);
}
@@ -152,23 +146,20 @@ PyObject *Vector_Resize3D(VectorObject * self)
resize the vector to x,y,z,w */
PyObject *Vector_Resize4D(VectorObject * self)
{
if(self->data.blend_data){
if(self->wrapped==Py_WRAP)
return EXPP_ReturnPyObjError(PyExc_TypeError,
"vector.resize4d(): cannot resize wrapped data - only python vectors\n");
}
self->data.py_data =
PyMem_Realloc(self->data.py_data, (sizeof(float) * 4));
if(self->data.py_data == NULL) {
self->vec = PyMem_Realloc(self->vec, (sizeof(float) * 4));
if(self->vec == NULL)
return EXPP_ReturnPyObjError(PyExc_MemoryError,
"vector.resize4d(): problem allocating pointer space\n\n");
}
self->vec = self->data.py_data; /*force*/
if(self->size == 2){
self->data.py_data[2] = 0.0f;
self->data.py_data[3] = 1.0f;
self->vec[2] = 0.0f;
self->vec[3] = 1.0f;
}else if(self->size == 3){
self->data.py_data[3] = 1.0f;
self->vec[3] = 1.0f;
}
self->size = 4;
return EXPP_incr_ret((PyObject*)self);
@@ -296,9 +287,9 @@ PyObject *Vector_copy(VectorObject * self)
free the py_object */
static void Vector_dealloc(VectorObject * self)
{
/*only free py_data*/
if(self->data.py_data){
PyMem_Free(self->data.py_data);
/* only free non wrapped */
if(self->wrapped != Py_WRAP){
PyMem_Free(self->vec);
}
PyObject_DEL(self);
}
@@ -1223,19 +1214,15 @@ PyObject *newVectorObject(float *vec, int size, int type)
int i;
VectorObject *self = PyObject_NEW(VectorObject, &vector_Type);
self->data.blend_data = NULL;
self->data.py_data = NULL;
if(size > 4 || size < 2)
return NULL;
self->size = size;
if(type == Py_WRAP){
self->data.blend_data = vec;
self->vec = self->data.blend_data;
if(type == Py_WRAP) {
self->vec = vec;
self->wrapped = Py_WRAP;
}else if (type == Py_NEW){
self->data.py_data = PyMem_Malloc(size * sizeof(float));
self->vec = self->data.py_data;
} else if (type == Py_NEW) {
self->vec = PyMem_Malloc(size * sizeof(float));
if(!vec) { /*new empty*/
for(i = 0; i < size; i++){
self->vec[i] = 0.0f;