Commit Graph

476 Commits

Author SHA1 Message Date
Campbell Barton 2feea3dcc3 made scn.objects more flexible... you can now things like...
scn.objects.selected = [] # deselect all
scn.objects.selected = scn.objects # select all
scn.objects.context = [ob1, ob2...]

Added epydoc examples and updates importer scripts to use this de-select-all method.
2006-12-28 11:09:36 +00:00
Campbell Barton 8ea2b66810 Made it possible to copy modifiers from the python API
ob1.modifiers = ob2.modifiers
2006-12-28 06:47:56 +00:00
Campbell Barton ab06e52343 Mech cleanup use new edge_keys
continual script stuff, minor stuff..

fix for bad return in group.
Added back group.objects.append/remove but print deprectaed warning. also some epydoc changes.
2006-12-28 05:00:35 +00:00
Campbell Barton 4d74f07043 added Draw.Normal() for the normal rotating sphere button, mostly the same as the ColorPicker in code and syntax. 2006-12-27 11:58:03 +00:00
Ken Hughes 20a656db1d Python API
----------
Perform better param checking on Curve bevel and taper objects so that an
curve can't use its own object.  Also stick a big warning in the docs for
Curve.setTotcol(), which seems to be an extremely dangerous method.
2006-12-27 05:30:32 +00:00
Ken Hughes d2d86d34d3 Python API
----------
Correct some typos in Ipo API documentation.
2006-12-26 15:07:49 +00:00
Campbell Barton 46924d32f4 Camera.c refactor, moved to getsetattrs. deprecated get/set functions. and added access to all camera settings.
cam.type now uses 'ortho' and 'persp' rather then 0 and 1

group.c and object.c, minor cleanup
2006-12-26 07:00:32 +00:00
Ken Hughes 576c5b85b6 Python API
----------
Add .materials attribute to BPy Curve API.  Also clean up Mesh.materials
documentation.
2006-12-25 21:15:53 +00:00
Ken Hughes a2b3eb56f2 Python API
----------
Change "requiresd" to "required" in getChildren() documentation.
2006-12-25 15:07:16 +00:00
Campbell Barton 2a9fab55ba PyAPI driverExpression:
added "ipocurve.driver = 2" to set the curve to use driver python expressions.
added ipocurve.driverExpression - the string to run.
2006-12-25 10:44:28 +00:00
Campbell Barton 859b7f207e modified scripts from using older/depricated Python API commands, deprecated scn.getChildren() in the docs. 2006-12-25 09:17:23 +00:00
Campbell Barton 1be58e7a8d initial python support for dealing with multires meshes.
Can only change levels and values at the moment. adding and removing is still needed.

multires: bool
multiresLevelCount: int
multiresDrawLevel: int
multiresEdgeLevel: int
multiresPinLevel: int
multiresRenderLevel: int
2006-12-24 10:51:31 +00:00
Campbell Barton b72bfbd923 replaced id->us++ with id_us_plus(id); so any indirect libdata isnt lost on reload.
added camera.dofDist to the python camera module
2006-12-24 03:25:53 +00:00
Campbell Barton 1c6f41a27a Added CustomData_get_named_layer_index to customdata to get a layer index by name, only used in Mesh.c at the moment.
cleanup Mesh.c, updated the epydocs
2006-12-23 23:33:03 +00:00
Campbell Barton bef18061ec Select Grouped editdata- minor fix in the menu.
Updated Python Mesh API to support UV and Color layers with names.
Similar to vertex group's

renamed a function in customdata.c CustomData_free_layers -> CustomData_free_layers_active and made CustomData_free_layers accept an index, this is needed so python could free layers that arnt active.
2006-12-23 17:07:02 +00:00
Campbell Barton ea837b25e3 Added Draw.BeginAlign(), Draw.EndAlign()
added align to a few scripts where it looks nice.
2006-12-23 00:56:40 +00:00
Ken Hughes e56f2b4b9d Python API
----------
Obligatory Englishization of BPy API documents. :-)
2006-12-22 22:05:06 +00:00
Campbell Barton ed47053fa6 Arnaure.Get() now raises an error when the name dosnt exist. added warning in docs.
Image - added img.fields, img.fields_odd, img.antialias, also updated the docs. replaced Py_BuildValue with faster list creation for getPixel functions.
2006-12-22 21:23:27 +00:00
Campbell Barton 9197b25490 removed typo from Render
added extFromFormat to BPyRender to get the extension for a format
2006-12-22 07:07:20 +00:00
Campbell Barton 1849da92bc document render constants,
these should NOT be set in the Module, very messy!
35 constants are stored in Blender.Scene.Render.* rather then there own dicts arranged by usage.
2006-12-22 05:27:06 +00:00
Campbell Barton 60a2977dcf adding ob.activeMaterial - allows you to get/set the active material for an object. 2006-12-22 04:46:37 +00:00
Ken Hughes 368928220d Python API
----------
Bugfix/enhancement: allow image of mesh's UV faces to be removed/cleared by
"del f.image" or "f.image = None", and handle image user counts correctly
when assigning/clearing images.
2006-12-20 22:56:58 +00:00
Ken Hughes 674289096b Python API
----------
User documentation for scn.objects (SceneObjects class).  Documents what is
implemented right now; there still may be some minor changes prior to release.
2006-12-20 18:07:39 +00:00
Ken Hughes 2260add0f0 Python API
----------
Correcting typos in Object documentation.
2006-12-19 17:17:14 +00:00
Campbell Barton 1ec3e6f3b6 adding ob_arm.makeParentBone([ob1, ob2...], bonename)
ob.parentbonename is also settable now as long as it already has a bone parent
2006-12-19 09:41:45 +00:00
Ken Hughes 8b64628e30 Python API
----------
Fixing various typos (hey guys, it's helpful to proofread the documentation
before you commit it :-) )
2006-12-17 04:24:19 +00:00
Campbell Barton 1041ad4719 added fakeUser and users to more pytypes 2006-12-17 02:16:29 +00:00
Joseph Eagar 0c5eea3911 =IDProperties Python update=
Updated epydocs for next-to-latest
id properties commit.
2006-12-17 00:58:23 +00:00
Ken Hughes 08a7208aa6 Python API
----------
A more robust attempt to avoid creating non-Empty objects with no data while
maintaining backward compatibility.
2006-12-17 00:21:57 +00:00
Campbell Barton 47ee194922 adding ed.key and face.edge_keys
avoids a lot of boiler place code in scripts that need to build connectivity.
2006-12-16 23:46:43 +00:00
Campbell Barton a9447e4273 Enable/Disable DupFaces from the Python API.
Fixed a (own) bug in fakeUsers and added fakeUsers to Objects and Materials as well as Mesh.
2006-12-16 22:04:21 +00:00
Campbell Barton 228bebfaa8 name changes from theeths suggestions
totUvLayers -> totalUVLayers
addUvLayers -> addUVLayers
2006-12-13 02:55:49 +00:00
Campbell Barton 080a5d5664 exposed CustomData_get_active_layer_index in BKE_customdata.h (needed by python to get the active layer)
added python api stuff to deal with Color and UV/Image layers.

me.activeUvLayer - int
me.activeColorLayer - int
me.totUvLayers - int
me.totColorLayers - int

me.addUvLayer()
me.addColorLayer()
me.removeUvLayer()
me.removeColorLayer()


Variable names may need changing.
2006-12-13 00:50:02 +00:00
Campbell Barton 824f391c75 mesh_edges2curves - edge key optimize and made use of scn.objects rather then Object.New()..
Object.py - passIndex mistake
2006-12-12 21:38:04 +00:00
Campbell Barton 47adee414c added ob.passIndex to bpy, changed passIndex tooltip to a better one ton suggested. 2006-12-12 21:01:43 +00:00
Ken Hughes 675ab02726 Python API
----------

Fix some typos in the documentation.
2006-12-11 17:13:56 +00:00
Campbell Barton 9c3cacd283 added the flag group_exclusive to material
added restrictDraw/Select/Render to objects in python
updated group and scene docs for last commit
made 3ds import use new scn.objects rather then Object.New() - (removed import as instance for now)
fixes off import error from this report http://blenderartists.org/forum/showthread.php?t=84182
2006-12-11 08:57:39 +00:00
Ken Hughes 02884e88d8 Python API
==========

Fix typo in Scene documentation.
2006-12-07 20:15:52 +00:00
Joseph Eagar 71da111613 =IDProperties bugfix=
Another bug from the tracker, reported by Mike Stramba.
A duplicated Py_XDECREF in the wrong place made assigning
arrays from Vector objects not work.

Also, fixed nasty bug in C API of idproperties (the function
to look up a property from a group was broken).  Fixed a memory
leak too.

In addition, made "del group['property']" delete properties
from group; previously this would just crash (or at least it
should have).  Added a small addition to the example in the
epydocs for IDGroup.
2006-12-01 03:04:36 +00:00
Joseph Eagar 008d789f15 =IDProperties small update=
This update changes Object.properties to Object.game_properties 
(as discussed) so .properties can be used for ID Properties.

This should be fine as, after all, .properties was undocumented anyway :)
2006-11-28 04:34:26 +00:00
Ken Hughes 2dbed48e24 Python API
==========

Bugfix #4951:  This might be a serious change for python script writers.
-- ob.getMatrix('localspace') did not return the correct matrix when the object
   had a parent; this has been corrected.
-- ob.setMatrix(m) did not work predictably (more correctly, in an easy-to-
   predict manner) when an object had a parent.  The method has been changed
   so that if thee is a parent, it ASSUMES the matrix is "localspace",
   relative to the parent.  The documentation now states this.
-- ob.mat and ob.matrix are now read-only attributes, while ob.matrixLocal
   (which calls Object_setMatrix() ) is now read-write.

Ton is not thrilled (is that a fair summary, Ton? ;-) with this method since
the ob->obmat is calculated from the loc/rot/size attributes of an object.
I'll let him speak on this, but I believe his desire is for this method to be
deprecated in the future and replaced with something else.
2006-11-21 21:15:15 +00:00
Ken Hughes 973e8920f0 Python API
==========

Fix epydoc warnings after IDProperty addition to Material.py
2006-11-21 19:17:13 +00:00
Ken Hughes ed3559aa8e Python API
==========
Bugfix #4905:  correcting errors and out-of-date NLA API documentation.
2006-11-21 19:00:12 +00:00
Joseph Eagar 19a4f41172 =ID Properties Python Doc Update=
The epydocs are now updated to have idproperties;
all the modules that have bindings for ID properties
now has docs for them.  E.g Materials have a .properties
members, Image, Texture, Scene, Object, NMEsh, and Mesh.

I realized that .properties was already taken in
Objects, so I renamed it to .idproperties.  There was
also a nasty little problem with an example inside
Object.getType; the entire example was being pasted inside
the return field.  I fixed it by just moving the return
definition to after the example, like it should be.
2006-11-20 11:07:56 +00:00
Joseph Eagar 8768707610 =ID Properties=
This commit adds supports for per-ID properties to blender.
See http://mediawiki.blender.org/index.php/BlenderDev/ID_Property
for more information on how it all works.

ID properties are accesable by python; but note that 
bindings have only been added to Object and Material thus
far.  However adding more bindings is easy and I plan
on adding several more hopefully within an hour of this inital 
commit.

A generic UI panel is also planned, that will go wherever its
needed; for example in the material buttons, editing buttons, etc.
I'll likely submit the initial code for that as a patch, though,
so matt and ton and others can go over it and make sure it's
all good. :)

VERY important, if you intend to use ID properties please
go to http://mediawiki.blender.org/index.php/BlenderDev/PropertyStandards
and start writing the appropriate standards for it.
2006-11-17 04:46:48 +00:00
Campbell Barton 97d306e68f Added group.layers bitfield to the python API 2006-11-16 21:38:08 +00:00
Ken Hughes ba71fbb785 Python API:
Bugfix #5172: removed nmesh.addEdgesData() from documentation (the method was
removed in Blender 2.40 release)
2006-11-14 16:36:45 +00:00
Campbell Barton ef56538c62 removed warning in last commit 2006-11-13 17:55:06 +00:00
Campbell Barton 26ef99157e made mesh.getFromObject() accept a python object as well as the object name.
accepting the name only was causing big problems when exporting library data, because duplicate names are possible the wrong data was exporting.
2006-11-13 17:37:01 +00:00
Campbell Barton 045e143189 a Malifico request, Blender.Library now supports loading relative libraries.
Blender.Library.Open('//someblend.blend')

the // at teh start of the path mean that the file will be loaded relaive to the existing blend files path.
2006-10-15 14:00:23 +00:00