Revision: 17144 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17144 Author: jesterking Date: 2008-10-21 10:27:38 +0200 (Tue, 21 Oct 2008)
Log Message: ----------- * Add some missing docu for Blender.Types * Fix potential crash in CSizeof() Modified Paths: -------------- trunk/blender/source/blender/python/api2_2x/Types.c trunk/blender/source/blender/python/api2_2x/doc/Blender.py trunk/blender/source/blender/python/api2_2x/doc/Types.py Modified: trunk/blender/source/blender/python/api2_2x/Types.c =================================================================== --- trunk/blender/source/blender/python/api2_2x/Types.c 2008-10-21 08:21:36 UTC (rev 17143) +++ trunk/blender/source/blender/python/api2_2x/Types.c 2008-10-21 08:27:38 UTC (rev 17144) @@ -112,7 +112,7 @@ char type[32]; if(o) { - sprintf(type, "%s", PyString_AsString(PyObject_Str(o))); + BLI_snprintf(type, 32, "%s", PyString_AsString(PyObject_Str(o))); if(BLI_streq(type, "<type 'Blender Action'>")==1) { ret = sizeof(struct bAction); @@ -309,9 +309,9 @@ ( PyObject * ) &Armature_Type ); PyDict_SetItemString( dict, "BoneType", ( PyObject * ) &Bone_Type ); - PyDict_SetItemString( dict, "CurNurb_Type", + PyDict_SetItemString( dict, "CurNurbType", ( PyObject * ) &CurNurb_Type ); - PyDict_SetItemString( dict, "SurfNurb_Type", + PyDict_SetItemString( dict, "SurfNurbType", ( PyObject * ) &SurfNurb_Type ); PyDict_SetItemString( dict, "CurveType", ( PyObject * ) &Curve_Type ); @@ -349,7 +349,7 @@ ( PyObject * ) &constant_Type ); PyDict_SetItemString( dict, "rgbTupleType", ( PyObject * ) &rgbTuple_Type ); - PyDict_SetItemString( dict, "matrix_Type", + PyDict_SetItemString( dict, "matrixType", ( PyObject * ) &matrix_Type ); PyDict_SetItemString( dict, "eulerType", ( PyObject * ) &euler_Type ); PyDict_SetItemString( dict, "quaternionType", @@ -372,7 +372,7 @@ ( PyObject * ) &EditBone_Type); PyDict_SetItemString( dict, "ThemeSpaceType", ( PyObject * ) &ThemeSpace_Type); - PyDict_SetItemString( dict, "ThemeUI_Type", + PyDict_SetItemString( dict, "ThemeUIType", ( PyObject * ) &ThemeUI_Type); PyDict_SetItemString( dict, "IDGroupType", ( PyObject * ) &IDGroup_Type); Modified: trunk/blender/source/blender/python/api2_2x/doc/Blender.py =================================================================== --- trunk/blender/source/blender/python/api2_2x/doc/Blender.py 2008-10-21 08:21:36 UTC (rev 17143) +++ trunk/blender/source/blender/python/api2_2x/doc/Blender.py 2008-10-21 08:27:38 UTC (rev 17144) @@ -73,7 +73,7 @@ - 'renderdir': default render output dir - 'soundsdir': sound dir - 'tempdir': temp file storage dir - - 'mipmap' : Use mipmapping in the 3d view (Use a boolean value True/False). + - 'mipmap' : Use mipmapping in the 3d view (Use a boolean value True/False). @type data: int or string @param data: The new value. """ @@ -111,7 +111,7 @@ - 'soundsdir': the path to the user defined dir for sound files. (*) - 'tempdir': the path to the user defined dir for storage of Blender temporary files. (*) - - 'mipmap' : Use mipmapping in the 3d view. (*) + - 'mipmap' : Use mipmapping in the 3d view. (*) - 'version' : the Blender version number. @note: (*) these can be set in Blender at the User Preferences window -> File Paths tab. @@ -255,6 +255,6 @@ def SaveUndoState (message): """ Sets an undo at the current state. - @param message: Message that appiers in the undo menu + @param message: Message that appears in the undo menu @type message: string """ Modified: trunk/blender/source/blender/python/api2_2x/doc/Types.py =================================================================== --- trunk/blender/source/blender/python/api2_2x/doc/Types.py 2008-10-21 08:21:36 UTC (rev 17143) +++ trunk/blender/source/blender/python/api2_2x/doc/Types.py 2008-10-21 08:27:38 UTC (rev 17144) @@ -25,6 +25,17 @@ elif type(data) == Types.LampType: print "Let there be light!" +Since Blender 2.48a you can get the size of the underlying DNA structs for a collection of Blender Python types. + +Example:: + # loop over Types dictionary and print the struct sizes + # -1 where the type is not supported byt the CSizeof function + import Blender.Types as bt + x = dir(bt) + for t in x: + s = 'bt.CSizeof(bt.' + t + ')' + print t,"=", eval(s) + @var ObjectType: Blender Object. The base object, linked to its specific data at its .data member variable. @var GroupType: Blender Group. A Group that references a list of objects that are a part of this group. @@ -45,8 +56,12 @@ @var ArmatureType: Blender Armature. The "skeleton", for animating and deforming objects. @var BoneType: Blender Bone. Bones are, obviously, the "pieces" of an Armature. [EMAIL PROTECTED] EditBoneType: Blender Editbone. Bones in editmode. @var CurveType: Blender Curve. @var IpoType: Blender Ipo. [EMAIL PROTECTED] CurNurbType: Blender CurNurb. [EMAIL PROTECTED] SurfNurbType: Blender SurfNurb. [EMAIL PROTECTED] IpoCurveType: Blender IpoCurve. @var MetaballType: Blender Metaball. @var CameraType: Blender Camera. @var ImageType: Blender Image. @@ -57,7 +72,7 @@ @var SceneType: A Blender Scene. Container of all other objects. @var ButtonType: Blender Button. One of the Draw widgets. @var vectorType: Blender vector. Used in NMesh, Mesh and elsewhere. [EMAIL PROTECTED] matrix_Type: Blender matrix. [EMAIL PROTECTED] matrixType: Blender matrix. @var quaternionType: Blender quaternion. Used in armatures. @var eulerType: Blender euler. @var bufferType: Blender buffer. A contiguous piece of storage, used in BGL. @@ -68,3 +83,11 @@ @var IDGroupType: Blender IDProperty Group type. @var IDArrayType: Blender IDProperty Array type. """ + +def CSizeof (type): + """ + Get the size in bytes of the underlying DNA struct for the given type. + @param type: A Blender Python type. + @type type: type + @return: size in bytes or -1 if not supported type. + """ \ No newline at end of file _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs