Here are some proposed changes to the mathutils API I'd like to make to avoid some confusing aspects of the api since its now used for all RNA math types and GameEngine I think it would be good to make improvements in this area.
Proposal: http://wiki.blender.org/index.php/Dev:2.5/Source/Python/Mathutils If this is acceptable I can make these changes and update scripts. I'm keeping a log of all mathutils changes since 2.4x in mathutils.c To get up to speed on changes so far: /* Note: Changes to Mathutils since 2.4x * use radians rather then degrees * - Mathutils.Vector/Euler/Quaternion(), now only take single sequence arguments. * - Mathutils.MidpointVecs --> vector.lerp(other, fac) * - Mathutils.AngleBetweenVecs --> vector.angle(other) * - Mathutils.ProjectVecs --> vector.project(other) * - Mathutils.DifferenceQuats --> quat.difference(other) * - Mathutils.Slerp --> quat.slerp(other, fac) * - Mathutils.Rand: removed, use pythons random module * - Mathutils.RotationMatrix(angle, size, axis_flag, axis) --> Mathutils.RotationMatrix(angle, size, axis); merge axis & axis_flag args * - Matrix.scalePart --> Matrix.scale_part * - Matrix.translationPart --> Matrix.translation_part * - Matrix.rotationPart --> Matrix.rotation_part * - mathutils.Matrix.Shear(plane, fac, size), now takes a pair of floats for 3x3 or 4x4 shear factor. * - toMatrix --> to_matrix * - toEuler --> to_euler * - toQuat --> to_quat * - Vector.toTrackQuat --> Vector.to_track_quat * - Quaternion * Quaternion --> cross product (not dot product) * - Euler.rotate(angle, axis) --> Euler.rotate_axis(axis, angle) * - Euler.unique() *removed*, not a standard function only toggled different rotations. * * moved into class functions. * - Mathutils.RotationMatrix -> mathutils.Matrix.Rotation * - Mathutils.ScaleMatrix -> mathutils.Matrix.Scale * - Mathutils.ShearMatrix -> mathutils.Matrix.Shear * - Mathutils.TranslationMatrix -> mathutils.Matrix.Translation * - Mathutils.OrthoProjectionMatrix -> mathutils.Matrix.OrthoProjection * * Moved to Geometry module: Intersect, TriangleArea, TriangleNormal, QuadNormal, LineIntersect * - geometry.Intersect -> intersect_ray_tri * - geometry.ClosestPointOnLine -> intersect_point_line * - geometry.PointInTriangle2D -> intersect_point_tri_2d * - geometry.PointInQuad2D -> intersect_point_quad_2d * - geometry.LineIntersect -> intersect_line_line * - geometry.LineIntersect2D -> intersect_line_line_2d * - geometry.BezierInterp -> interpolate_bezier * - geometry.TriangleArea -> area_tri * - geometry.QuadNormal, TriangleNormal -> normal * - geometry.PolyFill -> tesselate_polygon * - geometry.BoxPack2D -> box_pack_2d * - geometry.BarycentricTransform -> barycentric_transform */ -- - Campbell _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
