[Bf-python] 2.40 release notes draft

Campbell Barton cbarton at metavr.com
Wed Dec 21 23:47:59 CET 2005


Hi Willain, about the update.

can we remove get/set?
Just adding raySamplesX to Lamp.c

There needs to be - getRaySamplesX setRaySamplesX, setter gettr for 
raySamplesX, docstring for get and set, as well as epydoc's.

Can we make the 2.4+ APY rely on getattr/setattr's only? - would be 
faster to write for the C and Python programmers.
The problem is that some getting and setting take Args.
for setFooBar(a,b)
could we do..
ob.fooBar = a,b

for getAttrs that take args we could seperate out into more spesific 
variable names.
eg
ob.getMatrix('worldspace')
is alredy available as
ob.matrixWorld - so ob.getMatrix('worldspace') can be removed.

for others.
ob.getData(name=1)
just add in
ob.dataName and remove ob.getData

It will mean that most scripts wont run anymore but changing will be 
trivial still.

This will significantly un-polute the namespace and could even make a 
noticable difference in the speed python scripts run (albeit a small 
difference)

- Cam


Willian Padovani Germano wrote:
> Hi,
>
> Gotta send these notes to Ton tomorrow. Corrections welcomed:
>
> =======
>
> Blender Python API and Scripts
>
> API
>
> Considerable work was done for this release:
>
> New or rewritten modules:
>
> - New: Mesh, by Ken Hughes. This is a "thin" wrapper of mesh data that 
> should work much faster than the already available NMesh module.
> - New: Key, by Pontus Lidman.
> - The Armature / Bones module and API were completely rewritten by 
> Joseph Gilbert to support the new code for armatures in Blender itself.
> - The Mathutils module API and related types were considerably 
> improved by its author, Joseph Gilbert, who also added the Point type.
> - The Build and Wave modules have been removed, following changes in 
> Blender itself (they are object modifiers now).
>
>
> Additions to existing modules:
>
> Main interface:
>  let Python initialize the site path (Ken Hughes).
>
> - Object:
>  support for deform and vertex parenting, by Martin Poirier
>  .getParentSubName, by lordbosh
>  .effects (read-only), by Jean-Michel Soler
>  .protectFlags: support for transform lock, by Ken Hughes
>
> - Material:
>  access to shader data, by Campbell Barton
>  support for new modes, by Ken Hughes
>
> - Lamp:
>  areaSizeX/Y, raySamplesX/Y, rayShadow, by Campbell Barton
>
> - Scene:
>  support for TimeLine, by Joilnen Leite
>
> - Ipo:
>  let user access ipo by address code in addittion to name (Johnny 
> Matthews)
>
> - Image:
>  .getPixelI, .setPixel[IF], .getMinXY, .save, by Austin Benesh
>  New(), GetCurrent(), image.start/end/speed/packed, by Campbell Barton
>
> - Curve:
>  support for Taper objects (Toni Alatalo).
>
> - Mathutils:
>  line intersection, triangle area, tracking quats from vectors, some 
> normal calculators, by Martin Poirier
>
> - Key:
>  get names of shapes, keyblocks, by Toni Alatalo
>  key.ipo, by Johnny Matthews
>
> - Particle:
>  getParticlesLoc, patch from Jean-Michel Soler
>
> - Render:
>  .saveRenderedImage() by Joseph Gilbert.
>
> - Texture:
>  MTex additions by Yehoshua Sapir
>
>
> Besides that, many bugs were fixed and the documentation has been 
> updated.
>
>
> Ken Hughes (code and many bug fixes) and Joseph Gilbert, in 
> particular, have made many contributions for this release. Daniel 
> Dunbar made many updates while working on improving Blender internally 
> for modifiers, etc. Stephen Swaney applied many patches and fixed bugs.
>
> Contributors:
>
> Stephen Swaney (applied many patches and fixed bugs), Campbell Barton, 
> Daniel Dunbar, Joseph Gilbert, Joilnen B. Leite, Stephane Soppera, 
> Kent Mein, Johnny Matthews, Simon Clitherow,  Mika Saari, Willian P. 
> Germano, Martin Poirier, Ton Roosendaal, Ken Hughes, Austin Benesh, 
> Tom Musgrove, Yehoshua Sapir, Chris Burt, Pontus Lidman, Chris Want, 
> Toni Alatalo, Alexander Ewering, Jens Ole Wund.
>
> =======
>
> Scripts:
>
> New:
>
> - Collada importer and exporter by Mikael Lagré (no animation support 
> yet).
> - 3DS importer and exporter by Bob Holcomb.
> - MD2 importer and exporter also by Bob Holcomb.
> - XSI exporter by Elira (with updates from Mal Duffin)
> - Blender Lip Synchro by Benoit Foucque.
> - Shape Widget Wizard by Johnny Matthews.
> - Mirror Bone Weights by Thomas Oppl.
> - Archimap UV Unwrapper by Campbell Barton.
>
> Updates:
>
> - I/O: paths import (ai and svg modules), Wavefront OBJ, Lightwave, 
> Wings, DX8.
> - Others: texture baker, empties to armature, skin, console, disp paint,
>   hotkeys, discombobulator
>
> =======
>
> Note:
>
> The BPython API team is planning an overhaul right after 2.40's 
> release. The current API is a mix of old and new modules written by 
> different programmers. With Blender and Python (and our knowledge of 
> both) evolving, many of us feel that BPython needs to be reworked.
>
> We want to clean it up: remove inconsistencies and nuissances as much as
> possible, favoring a more "pythoninc" approach, but remaining simple 
> and close to Blender's code, with a simple and well structured API in 
> C. On top of that we can have more powerful and fancy interfaces 
> written in Python, of course.
>
> The overhaul will most probably break some already written scripts. 
> This is bad, but it's also a chance to start collecting the updated 
> and new scripts, making sure they are well documented and polished 
> (well tested, no foolish errors, good interfaces).
>
> Coders should not worry, though. We don't plan to change that much, 
> the API will basically be cleaned and made nicer, that's all - no big 
> changes planned. Updating scripts, if needed, will be trivial.
>
> Those interested are invited to share opinions at the elYsiun and 
> blender.org Python forums and the bf-python mailing list, we want to 
> discuss the improved API before coding the changes.
>
> -- 
> Willian
> _______________________________________________
> Bf-python mailing list
> Bf-python at projects.blender.org
> http://projects.blender.org/mailman/listinfo/bf-python
>


-- 
Campbell J Barton

133 Hope Street
Geelong West, Victoria 3218 Australia

URL:    http://www.metavr.com
e-mail: cbarton at metavr.com
phone: AU (03) 5229 0241



More information about the Bf-python mailing list