[Bf-committers] Re: [Bf-blender-cvs] CVS commit:
blender/source/blender/python
BPY_interface.c blender/source/blender/python/api2_2x Bone.c
Mathutils.c
Mathutils.h NMesh.c Object.c Object.h Types.c Window.c euler.c euler.h
gen_utils.c
gen_utils.h matrix.c matrix.h quat.c quat.h vector.c vector.h
Joseph Gilbert
models at paposo.com
Sun May 22 03:17:50 CEST 2005
Good to know that someone appreciates what i do for this project. Thx
joeedh.
joeedh wrote:
> Joseph Gilbert wrote:
>
>> ascotan (Joseph Gilbert) 2005/05/20 21:28:05 CEST
>>
>> Modified files:
>> blender/source/blender/python BPY_interface.c
>> blender/source/blender/python/api2_2x Bone.c Mathutils.c
>> Mathutils.h NMesh.c
>> Object.c Object.h
>> Types.c Window.c euler.c
>> euler.h gen_utils.c
>> gen_utils.h matrix.c
>> matrix.h quat.c quat.h
>> vector.c vector.h
>> Log:
>> -rewrite and bugfixes
>> ----------------------------------
>> Here's my changelog:
>> -fixed Rand() so that it doesn't seed everytime and should generate
>> better random numbers
>> - changed a few error return types to something more appropriate
>> - clean up of uninitialized variables & removal of unneccessary objects
>> - NMesh returns wrapped vectors now
>> - World returns wrapped matrices now
>> - Object.getEuler() and Object.getBoundingBox() return Wrapped data
>> when data is present
>> - Object.getMatrix() returns wrapped data if it's worldspace,
>> 'localspace' returns a new matrix
>> - Vector, Euler, Mat, Quat, call all now internally wrap object
>> without destroying internal datablocks
>> - Removed memory allocation (unneeded) from all methods
>> - Vector's resize methods are only applicable to new vectors not
>> wrapped data.
>> - Matrix(), Quat(), Euler(), Vector() now accepts ANY sequence list,
>> including tuples, list, or a self object to copy - matrices accept
>> multiple sequences
>> - Fixed Slerp() so that it now works correctly values are clamped
>> between 0 and 1
>> - Euler.rotate does internal rotation now
>> - Slice assignment now works better for all types
>> - Vector * Vector and Quat * Quat are defined and return the DOT
>> product
>> - Mat * Vec and Vec * Mat are defined now
>> - Moved #includes to .c file from headers. Also fixed prototypes in
>> mathutils
>> - Added new helper functions for incref'ing to genutils
>> - Major cleanup of header files includes - include Mathutils.h for
>> access to math types
>> - matrix.toQuat() and .toEuler() now fixed take appropriate matrix
>> sizes
>> - Matrix() with no parameters now returns an identity matrix by
>> default not a zero matrix
>> - printf() now prints with 6 digits instead of 4
>> - printf() now prints output with object descriptor
>> - Matrices now support [x][y] assignment (e.g. matrix[x][y] = 5.4)
>> - Matrix[index] = value now expectes a sequence not an integer. This
>> will now set a ROW of the matrix through a sequence. index cannot go
>> above the row size of the matrix.
>> - slice operations on matrices work with sequences now (rows of the
>> matrix) example: mymatrix[0:2] returns a list of 2 wrapped vectors
>> with access to the matrix data.
>> - slice assignment will no longer modify the data if the assignment
>> operation fails
>> - fixed error in matrix * scalar multiplication
>> - euler.toMatrix(), toQuat() no longer causes "creep" from repeated use
>> - Wrapped data will generate wrapped objects when toEuler(),
>> toQuat(), toMatrix() is used
>> - Quats can be created with angle/axis, axis/angle
>> - 4x4 matrices can be multiplied by 3D vectors (by popular demand :))
>> - vec *quat / quat * vec is now defined
>> - vec.magnitude alias for vec.length
>> - all self, internal methods return a pointer to self now so you can
>> do print vector.internalmethod() or
>> vector.internalmethod().nextmethod() (no more print matrix.inverse()
>> returning 'none')
>> - these methods have been deprecated (still functioning but
>> suggested to use the corrected functionality):
>> * CopyVec() - replaced by Vector() functionality
>> * CopyMat() - replaced by Matrix() functionality
>> * CopyQuat() - replace by Quaternion() functionality
>> * CopyEuler() - replaced by Euler() functionality
>> * RotateEuler() - replaced by Euler.rotate() funtionality
>> * MatMultVec() - replaced by matrix * vector
>> * VecMultMat() - replaced by vector * matrix
>> - New struct containers references to python object data or
>> internally allocated blender data for wrapping
>> * Explaination here: math structs now function as a 'simple
>> wrapper' or a 'py_object' - data that is created on the fly will now
>> be a 'py_object' with its memory managed by python
>> * otherwise if the data is returned by blender's G.main then the
>> math object is a 'simple wrapper' and data can be accessed directly
>> from the struct just like other python objects.
>>
>>
> cool! thanks man!
> joeedh
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at projects.blender.org
> http://projects.blender.org/mailman/listinfo/bf-committers
>
>
>
More information about the Bf-committers
mailing list