Commit Graph

156 Commits

Author SHA1 Message Date
Stephen Swaney
2e9f9e90a6 A little housekeeping:
Object.c - expand evil 1 character name.  nicer error msg.
doc/Object.py - clarify Object.getData() doc
2005-04-02 17:01:56 +00:00
c9c47bd44e Adding some docs for camera insertIpoKey additions 2005-03-27 13:34:59 +00:00
24e52b703e Adding some docs for world and lamp insertIpoKey additions 2005-03-26 18:01:30 +00:00
03cafb856d Adding some docs for material insertIpoKey additions 2005-03-20 19:52:15 +00:00
Stephen Swaney
99bffa9cc0 correct bad reference to getDrawMode. 2005-03-20 12:34:36 +00:00
836d576730 Adding some docs for Object insertIpoKey additions 2005-03-20 03:50:56 +00:00
66b8984cd8 Adding some docs for Text3d additions 2005-03-20 03:42:04 +00:00
a96ed881dc BPython:
- Scripts:
    fixed error in "Save Current Theme" which prevented it from automatically updating script registration in menus.
    cosmetic changes in a couple of Campbell's sel_same.py script strings + more descriptive name for its new menu place (3d view, face mode -> select menu).
    small updates to help_browser.py script.

 The above changes are related to this:
- Added new script menu entries: Render (for exporters to renderers), Themes, FaceSelect (this already at the proper place).  Updated Scripts win->Scripts menu so it won't show all available entries, only  the ones we mean to see there.
- Updated menu registration so that scripts folders can become trees.  The release/scripts/ dir should be updated soon with subdirs like converters/, modifiers/, generators/ or whatever -- better discuss first (or is it? /me afraid of long irc discussions during meetings :) ).

- Modules:
    Blender: added 'udatadir' option to .Get() function and added var Blender.mode to tell if Blender is in bg or interactive mode.
    NMesh: added Campbell's nmesh.transform(matrix, recalc_normals = False) method (reworked, so my fault if it doesn't work).

- Bugs fixed:
    #2123: http://projects.blender.org/tracker/?func=detail&atid=125&aid=2123&group_id=9
    Reported by Ken Hughes (thanks!), who also found the exact problem later (it was in Text.Load, not with script links -- if only I had checked emails these days ... lost > 1 hour today to find the problem: passed filename to M_Text_Load was later being written over by a function called by add_text).  Also saw that Text.Load wasn't checking existence of passed filename (duh!), now it does.

    #1655: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1655&group_id=9
    Reported by Chris Want (thanks!): command line "blender -P script" not working properly for bg mode ("blender -b blendfile -P script").
    Had to make some small updates to get it working (bg mode for scripts was never explicitely handled, it worked due to collateral effects, let's say), interested readers can check the report after I update it or the API_intro.py doc file.  After more testing we can make further updates.  Updated many places to not call redraws if in bg mode, now it is officially available.  Blender outputs its own info when rendering in bg mode, if that is considered a nuissance we'll have to add a few "if (during_script())" calls outside bpython.

- Removed a few warnings here and there and also updated docs.
2005-03-19 06:24:55 +00:00
ab21276aaf fixed example of use the GetScreenInfo
.
2005-03-17 14:41:36 +00:00
Stephen Swaney
8c564af147 A little editing on the doc for the newest member of our Bpy module familily: Text3d. 2005-03-13 13:17:59 +00:00
4aeaa7a7a2 doc about set/getDupliVerts method
.
2005-03-12 12:31:33 +00:00
53b578d090 Text3d submodule document
.
2005-03-10 02:49:27 +00:00
7968cf078e doc about Text3d module
.
2005-03-09 02:06:35 +00:00
52b84f0e69 BPython:
- Gert de Roost reported an inconsistency between nmesh.getMode and .setMode.  Now .setMode() optionally accepts an int value, as returned by getMode().
- Campbell Barton pointed that object.getData(name_only=True) was by mistake returning the obj name, not the obdata name, as it should.  Fixed now.
- small doc updates

Thanks both for the reports.
2005-03-01 02:37:19 +00:00
Stephen Swaney
db892de35f Updates to NMesh doc contributed by Campbell Barton.
Corrections and useful user-oriented hints.
2005-02-27 15:15:39 +00:00
3cd546e484 Patch submitted by Michael Reimpell
- Adds NormalMap to python's list of Texture Image flags
2005-02-21 22:00:11 +00:00
05bf482f6a BPython:
- NMesh: made nmesh.update accept an optional 'vertex_shade' param to init vcols with shading info, like when you enter vpaint mode or press the relevant "make" button for a mesh without vcols.  This is still a test, the functionality was requested by Manuel Bastioni for the SSS script they are working on:
http://www.dedalo-3d.com/index.php?filename=SXCOL/makehuman/articles/subsurface_scattering_in_python.html
- sys: made makename() accept files with max FILE_MAXDIR+FILE_MAXFILE name length, should fix #2192.  Was only FILE_MAXFILE, a mistake;
- Image: added .setFilename(), contributed by Campbell Barton;
- Camera: added camera.get/setScale for the new param added by Ton for ortho cameras.  Requested by Jean-Michel Soler for the Texture Baker script;
- related doc updates.
2005-02-09 05:19:24 +00:00
3ede12b115 BPython:
- NMesh: added face.sel and face.hide attributes to NMFaces, to set / get selection and visibility state of faces as they appear in edit mode.
- doc updates, including the right fix to two edge related methods, thanks to Stephane Soppera for pointing it (my fault, Stephane).
2005-02-03 03:04:32 +00:00
41b251fab0 BPython:
- Fix related to bug #2157: crash in Blender.Image.image.reload() method.  "G.sima" was not being checked for validity.  Fix by Joilnen B. Leite (pidhash).  Thanks!
http://projects.blender.org/tracker/?func=detail&atid=125&aid=2157&group_id=9
- Added optional argument to Blender.Object.object.getData() method: getData(only_name = True) or (only_name = 1) or (1) will return only the obdata name, not a wrapper for the given struct.  This is a test based on a request by Campbell Barton who submitted code for his proposed .getDataName() method (thanks!).
- doc updates and small fixes.
2005-02-02 03:38:31 +00:00
1da3b9f517 BPython:
- Stephane Soppera added long missed support for edge data in Blender.NMesh + related doc;
- Michael Reimpell improved script registration (fixes bug report #2160) and the file and image selectors in Blender.Window (improved with suggestions from Yann Vernier).  They now suppport methods as callbacks;
- World.get/setMode were not registered, so could not be directly called (reported by Ken Hughes).  Still needs some work to improve things, including docs.

Scripts:
- Jean-Michel Soler updated his texture baker based on input from Appolux;
- Campbell and Jean-Michel improved the bvh importer: faster, better float units scaling (by Campbell); supports Poser 3.01 files (by jms).

Thanks guys!
2005-01-22 02:48:03 +00:00
3ba66e20b9 BPython:
- Added Blender.UpdateMenus() + doc: so scripts can automatically update Blender menus when they create (or download or whatever) new scripts to be registered.
- Removed a long deprecated function from the Blender module (release dict).

Matt (broken) mentioned the UpdateMenus function a couple weeks ago.  I also updated the Save Current Theme script to use it.  This is all related to his ideas to use scripts to save and restore themes and e.g. render presets.
2005-01-13 19:19:05 +00:00
Stephen Swaney
df1acca4c5 New methods: Curve.isCyclic(), CurNurb.isCyclic() for checking if curve is cyclic ( closed ). Both methods are boolean.
Patch contributed by Toni Alatalo.  Thanks.
2005-01-13 03:42:53 +00:00
9f43accdb2 BPython:
- patch by Jonathan Merritt: new function Blender.Draw.Image() + its doc;
- patch by Campbell Barton: .users attribute for many types;
- tiny internal change in nmesh.hasVertexUV() method.

Thanks to Jonathan and Campbell for the patches and the patience!
2005-01-13 03:04:12 +00:00
Stephen Swaney
36abceed6b bugfix: #2025 getCurveBP (and others) segfault
This method is now unsupported.  The original intent appears to
return the first BPoint of an Ipo curve.  However, BPoint Ipo curves
are not implemented and the first point therefore never existed.

The segfault was from an unchecked input parameter.

Calling this method now always throws a NotImplemented exception.
2004-12-17 17:34:51 +00:00
a368426d26 BPython, two bug fixes:
- #1911: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1911&group_id=9
    BOOL properties were returning True always, small mistake in logic.c's getData method.
- #1944: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1944&group_id=9
    G.vd was not being checked against NULL in Window.ViewLayer, causing a crash when this function was called from a command line script.  Now it returns an error in such cases.
- small doc updates, tiny minor change in Object.c.
2004-12-05 04:01:57 +00:00
6d9c02be4c Scripts:
- Fixes by Jean-Michel Soler: mod_ai2obj.py, mod_svg2obj.py;
- Fixes by Campbell Barton: obj_import.py;
- Small fix to mod_meshtools.py (fixes bug #1605: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1605&group_id=9);
- Updates by Jean-Baptiste (Jiba) to his blender2cal3d.py;
- Updates to all his import / export scripts (added doc data) by Anthony D'Agostino;
- Update to off_import: support for uv data, by Arne Schmitz.

BPython:
- Removed Object.get and .getSelected (deprecated long ago, we use .Get and .GetSelected) -- fixes #1861: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1861&group_id=9
- Applied patch by Michael Reimpell: quat.c - fix for wrong initialization with newQuaternionObject; Mathutils documentation improvements.
- Stani reported a wrong return msg in IpoCurve.Get (that is unimplemented).

Thanks to all coders mentioned above!
2004-11-30 02:27:46 +00:00
e3b7dfe6e2 BPython:
- fixed bug #1882: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1882&group_id=9
    Crash / hang when changing meshes that had edge data.  The mesh->totedge value was not being set to 0.  Reported by jms, thanks.
- fixed bug #1780: https://projects.blender.org/tracker/index.php?func=detail&aid=1780&group_id=9&atid=125.
    Deleting a Text that was being used as script link crashed Blender.  Added a check to unlink the Text from eventual script links when it gets removed.  Reported by kaito, thanks.
- doc updates (one related to bug #1807: http://projects.blender.org/tracker/?func=detail&atid=125&aid=1807&group_id=9 , actually a little misleading word in the NMesh doc: you can get the subsurfed mesh with NMesh.GetRawFromObject, but it's the display subdivision level that counts).
2004-11-27 18:32:26 +00:00
0737153338 BPython:
-- applied patch by Michael Reimpell that lets scripts registration info be either commented out or not (commented, it doesn't interfere with Python documentation tools.  The patch also fixes potential overflows, thanks (and sorry for the confusion) again, Michael.
-- fixed NMesh_hasFaceUV, it was returning true for false and vice-versa.  Reported by Jonas Petersen with patch, thanks.
-- added 'homedir' and 'uscriptsdir' to Blender.Get() to get Blender's home dir and the user defined scripts dir.
-- related to the above doc updates.
2004-11-02 05:13:52 +00:00
13e7525152 BPython -- a few fixes:
-- fixed bug #1689:
http://projects.blender.org/tracker/?func=detail&atid=125&aid=1689&group_id=9

Reported by Tom Musgrove (thanks), the problem was that Window.QHandle was not passing events to windows that had id's below the current active window.  It was a stupid mistake (mine), the code was iterating from curarea instead of from the first area in the areabase list.

-- fixed bug #1568:
http://projects.blender.org/tracker/index.php?func=detail&aid=1568&group_id=9&atid=125

Stephen investigated the problem, reported by Gabriel Beloin, and left hints in the bug report, thanks :).  I also implemented what he suggested, now Effect.Get('objname') returns a list with all objname's effects and as before, Get('objname, position') returns the effect at position 'position'.  Ref doc already updated.

-- Allowed menu registration lines to appear commented out -- Python comments: '#', of course -- (suggested by Michael Reimpell) in scripts:
Some Python doc tools need the doc strings between triple double-quotes, so to avoid conflicts scripts writers can now comment out the registration code, it should work anyway.  Michael also provided a patch for this a few days ago, too (thanks), but to keep changes at a minimum because of proximity to a release I didn't use it.
2004-10-31 04:09:19 +00:00
fa9135385a BPython:
- Blender.Window: added function GetPerspMatrix() (Tom Musgrave's patch, thanks);
- added Chris Want's patch to tell argc, argv to the Python interpreter (thanks, Hos);
- Blender.Image: added image.glFree() to free textures bound by the recently added
  image.glLoad() (both suggested by Campbell Barton -- thanks, with these Blender can
  be used to load textures for scripts);
- Blender.Sound: removed for now at least a few get/set methods of vars that can't be
  accessed via interface;
- renamed Get/makeActive to Get/setCurrent in Blender.World (actually added alias for
  now), same in Blender.Sound: renamed makeActive to setCurrent.  Stephen Swaney
  pointed this some weeks ago, we should stick to one naming convention.
- added documentation for Sound and Window.Theme modules and the other added
  functions, made other small updates.
- Blender.Object: made 'worldspace' become the default output of .getMatrix and .mat/.matrix:
  after reading a discussion on blender.org's Python forum where eeshlo mentioned the
  pre 2.34 default was worldspace, I took a better look at Blender's relevant code,
  confirmed, talked to Theeth about this and as he suggested am changing the default
  back to 'worldspace'.
2004-10-20 05:51:24 +00:00
Stephen Swaney
073120c2b1 bugfix: #1607 Missing entry in Lamp Types
added Lamp types 'Area' and 'Photon'.
updated docs.
2004-10-09 05:41:03 +00:00
Stephen Swaney
086ab43712 correct doc error for Curve.getControlPoint() 2004-10-04 04:35:52 +00:00
Stephen Swaney
f2f97a5092 fix doc errors pointed out by wavk:
get/setMode() should be get/setFlag(), bitfield order was incorrect.

spellchecked Curve.py.
2004-09-29 18:24:08 +00:00
e7d3039d12 - Blender: added option 'scriptsdir' to Blender.Get();
- small updates to the docs;
- Object: small fix to getMatrix: check during_script() to avoid undesired loops; added old behavior (pre 2.34) as option: .getMatrix('oldlocal');
- tentative fix for bug #1275: scene REDRAW scriptlinks were not being executed (the call to do so was missing):
http://projects.blender.org/tracker/index.php?func=detail&aid=1275&group_id=9&atid=125
    added the call in drawview.c, in drawview3dspace().  This causes the scriptlink to be called for each visible view3d, but that's what happens with object redraw scriptlinks, too.  Anyway, this is still a test.  The place was chosen based on the idea that a scene redraw scriptlink is like an object redraw one, but for all objs in the scene at once.

- Window.Theme: new submodule, to get/set theme options in Blender;
- Added the script save_theme.py (Help menu for now), to save the current theme in Blender as an executable script (currently shown in the Scripts->Misc menu).

There's more work to do for themes, like defining a proper place for them in the interface, adding documentation (for now the added script and the ones it generates can give a pretty good idea of how to use the new module), probably extending themes to support SpaceScript and so on.
2004-09-21 05:28:17 +00:00
Stephen Swaney
273c8e0804 New bpy method for World module to set World for current scene:
my_world.makeActive()

Contributed by Campbell Barton (ideasman)
2004-09-20 16:22:32 +00:00
Stephen Swaney
0848aed9fc More Material settings: mirror and transparency.
Contributed by Joilnen B. Leite (pidhash)
2004-09-14 20:03:01 +00:00
446e1fae7c ** Note: two new files added, projectfiles will need an update.
Scripts:
  Campbell Barton (Ideasman, thanks) updated his Wavefront OBJ importer.
BPython:
- Finally committed pending contributions:
    Chris Keith wrote the Blender.Sound module -- still some testing to do this week;
    Joseph (joeedh) added the OnLoad scene script event;
    Satish Goda added 6 GLU functions to Blender.BGL.  Great additions, thanks all!
- Small changes to Blender.Load (leave editmode as Blender wants) and Window.EditMode (allow definition of "undo string");
- Fixed bug #1539: Window.RedrawAll() crashed Blender if an empty spacescript was available while using it in a gui-less script.
- doc updates.
2004-08-17 04:26:00 +00:00
Nathan Letwory
266a1c1041 Fix typo in documentation 2004-08-07 14:14:55 +00:00
Stephen Swaney
0e4cfa3fcf pidhash noticed some discrepancies in the bpy doc between getMode(), getFlag(),
getType() and their associated setters.  I changed the doc to match the
implementation.

Also did a little spellcheck.
2004-08-04 20:52:55 +00:00
Stephen Swaney
fa6d79b277 updated docs 2004-08-04 08:03:39 +00:00
6b1eb45dda Scripts:
- Campbell Barton updated his sel_same.py script;
- Added to Mesh scripts a call to Window.EditMode(0) to leave editmode before changing meshes.

BPython:
- small doc fixes / updates;
- added a call to undo_push_mesh inside Window.EditMode(0).

Mesh scripts could change the mesh but not the editmesh -- that would then overwrite the changed mesh.  Made all mesh scripts leave edit mode before changing a mesh.
2004-07-28 17:46:29 +00:00
2f5c4123d6 fixed a typo in Mathutil.Matrix (inverse --> invert) 2004-07-28 09:00:46 +00:00
Stephen Swaney
0a092a5ffa fix epydoc formatting errors. 2004-07-27 14:18:32 +00:00
7b943f2a6d Scripts:
- Ben Omari sent an update version of his DirectX8.py, Jean-Michel Soler updated his disp_paint.py and Campbell Barton contributed a new one: sel_same.py (for now it's in the UV menu).  Thanks all, great scripts;
- small updates in some other scripts.

BPython:
- Finished wrapping radiosity functions for the Radio submodule;
- doc updates.
2004-07-27 03:13:45 +00:00
73f1da749b Nathan's huge ipo patch.
- now more than 31 channels possible for ipos
- added lotsa new channels all over
- Texture block has ipo now too
- recoded getname_ei functions

(Will ask nathan to give release log info when he's back!)
2004-07-26 21:44:55 +00:00
c50e3f374f BPython:
- new submodule Scene.Radio, for radiosity: still incomplete, but in shape for demos, updated SConscript to include it;
- new functions in Window module;
- doc updates: adding a todo file and a new start page for our docs: API_intro.py + other updates;
- small fix in Ipo.c provided by Damien McGuinnes (thanks!): Nathan has a patch with IPO additions and fixes for this and more, but until it is committed, there's this fix for Ipo.getCurve('LocX'), LocY, Z and QuatW,X,Y,Z too, according to Damien.

Other files:
- radpreprocess.c: added check for "during_script()" so eventual msgs don't popup during scripts;
- drawmesh.c: made a pointer (display list) be checked before accessed, fixes crash in scripts that forget to update display lists for subsurf meshes when a 3d view is in textured view mode.

Script: updated bevel_center by Loic Berthe.
2004-07-25 16:55:45 +00:00
Nathan Letwory
5c4e6908e7 Kent Mein pointed out some embarrasing syntax errors in example. Corrected those. 2004-07-21 17:25:50 +00:00
7b3b3ae432 Trying to fix bug reported by Peter den Bak and Meino Christian Cramer (thanks!):
-- splash screen disappeared (duh, I did that!) and Blender quits upon exiting from some 225 games:

It was troublesome to find how to run demos in general with the screen correctly redrawn before they started, etc.  Ended up making the above error in screenmain().  About the games, I don't have them and will need some time to get the files for testing, but I'll do it, though only on linux.

BPython:
-- Window: added GetScreens, SetScreen and improved GetScreenInfo.
-- Object, NMesh: updated (added in NMesh) method getMaterials to return either only valid materials as before or also empty slots (as None).  This previous omission can be considered a bug, since it made info about materials incomplete / incompatible with face mat indices.  Thanks Yann Vernier for bringing this up and sending/proposing a patch that also fixed a bug related to assigning lists of materials with different lengths to obj and its mesh. setMaterials also accepts Py_None entries now, which become empty slots in Blender.
-- doc updates.
2004-07-20 08:16:46 +00:00
6dca057ac5 BPython:
- added image.getBindCode() docstring to Image's epydoc file (thanks Satish Goda).
Scripts:
- Adding Apply_def.py to "Mesh" scripts menu (thanks author: Theeth);
- Updating JMS's disp_paint.py (also changed its name to remove version info);
- minor updates in docs and scripts.
2004-07-18 15:54:17 +00:00
97bba404fb Demo mode and BPython:
- small additions and fixes to enable the demo mode;

- Added sleep() to Blender.sys and 17 new functions to Blender.Window module:
    things to help demo script writing and as a bonus read / write access to Blender's input event queue;

- updates in docs, those interested please check Window.py in python/api2_2x/doc/ to read about the new Blender.Window functions.

----

Demo mode should be working well now for (I) playing rt animation -- aka ALT+A -- and (II) rendering pics and anims and playing anims.  I'll still add access to radiosity data and functions.

PS: Joseph Gilbert made (II) possible with the Scene.Render module he added for 2.32.  He's been coding great things for bpython, so I'd like to take the chance to point that and thank him here.
2004-07-16 03:08:43 +00:00