Commit Graph

1116 Commits

Author SHA1 Message Date
f17e9a6cb9 resolved invalid bounding box from the object by freeing a new meshes bounding box.
added back bound box constraint to obj import (many OBJs have values outside the defulat clipping range)

BPyRender.py was missing a flag assignment.
2006-09-05 06:45:39 +00:00
4603f452c2 Animation department feature request: support for vertex groups in Lattices
In a quick glance: (temp image)
http://www.blender.org/bf/rt.png

Main reason is that Lattices are useful a lot for Armature deformation.
Lattices just provide much more precise and interesting control. However,
with only bone envelopes it's very hard to use.

Working with Lattice vertex groups is nearly identical to Mesh:
- on CTRL+P 'make parent' you can choose the deform option now
- In editmode, the buttons to control vertex groups are available
- In outliner you can select vertexgroups too
- Deforming Lattices with Armatures has all options as for Mesh now.

Note:
- No WeightPaint has been added yet. To compensate, the editmode
  drawing for a Lattice with vertex group shows weight values for the active
  vertex group.
- Lattice editmode doesn't undo/redo weight editing yet.
- Softbody for Lattice still uses own vertex weights

Implementation notes:
- derivedmesh weight_to_rgb() is now exported to drawobject.c
- been doing cleanups in code (order of includes, var declarations, etc)
- weightpaint button handling now is generic

I've checked on Brecht's proposal for Custom Element data;
http://mediawiki.blender.org/index.php/BlenderDev/CustomElementData
It could have been used, but that would mean the existing code for
vertexgroup handling and armature deform couldn't be re-used. I guess this
is really a later todo.
2006-09-03 12:16:14 +00:00
82b40b1fc4 Adds groupTarget get/setters to the NLA API. Takes an object and returns an
object. groupTarget tells the animation system which object within a
dupligroup should be used for NLA. Equivalent to filling in the "target"
field in the NLA N-key panel.

Set groupTarget to None to remove the target.

Also, cleaned up some bad copy and pastes in existing NLA docs.

Also, cleaned up some bad copy and pastes in existing NLA docs.
2006-08-31 16:30:14 +00:00
e2e6bce283 added .sel to pose bones as well as read only .parent property 2006-08-31 09:26:49 +00:00
Ken Hughes
b4717d93a4 ===Python API===
Fix uninitialized pointer bug in ActionStrips.remove(), caused by too zealous
code optimization and insufficnet gcc warning flags.  Thanks to Roland for
catching it.
2006-08-30 21:45:27 +00:00
20818be156 Adds toggle to Object API for enabling NLA animation versus active Action
animation. Object.enableNLAOverride=True sets to use NLA;
Object.enableNLAOverride=False sets to use active Action;
status=Object.enableNLAOverride shows current status
2006-08-30 15:22:19 +00:00
d0cabce889 added sharp edge to python edge flags 2006-08-29 10:04:10 +00:00
0648d0d13a Commented out user incrementing while linking to a scene while testing that I forgot to remove.
also shut GCC // comments to /**/
2006-08-29 06:04:10 +00:00
Ken Hughes
81d7cd967d ===Python API===
New API for accessing surface data (SurbNurb type).  Right now it's hooked in
through the Curve API, since Curve.Get() doesn't differentiate between curves
and surfaces.  If the curve object is 2D (pntsv > 1), the SurfNurb object is
created.

It is similar to the CurNurb type but not identical.  There are only
attributes and no methods yet, and the only methods which will be added are
the non-getStuff/setStuff kind.  Read the documentation to see how it works
(sorry, no examples yet).

This is a work in progress.  Don't be surprised if the API changes some more.
2006-08-28 04:44:16 +00:00
433f6c7043 Integration of the Google Summer of Code Modifier Stack Upgrade project. The
main features are:
* Modifiers can now be in any order in the modifier stack
* DerivedMesh now has a standard framework for custom element data to be passed
  through the stack with mesh data (being copied and interpolated as
  appropriate), so modifiers can access whatever data they need
* The modifier stack code has been refactored and a number of bugs have been
  removed
* The EdgeSplit modifier has been added:
  http://mediawiki.blender.org/index.php/BlenderDev/EdgeSplitModifier
* The DerivedMesh modifier has been added:
  http://mediawiki.blender.org/index.php/BlenderDev/DisplaceModifier
* The UVProject modifier has been added:
  http://mediawiki.blender.org/index.php/BlenderDev/UVProjectModifier

For more info, see:
http://mediawiki.blender.org/index.php/User:Artificer/ModifierStackUpgrade
(currently undergoing reorganisation)
2006-08-28 01:12:36 +00:00
5dbc4c5f8f Added scn.objects.new(obbdata) as a way of adding object data to a scene and createing the object data at once.
This functionality will probably be moved later on after discussion.
2006-08-27 16:27:34 +00:00
683d0c579d errorin mathutils docs, rowSize not rowsize same with colSize 2006-08-26 16:01:25 +00:00
66bc55e8a6 Added a new iterator type to the scene - scene.objects should eventualy be used in place of scene.getChildren() and linking objects to the scene. 2006-08-26 09:53:26 +00:00
ee302f8693 Metaball wasnt checking the length of any of the input arg lists which resulted in errors in unrelated parts of the script.
Updated the doc too and added a longer example (converting an envalope armature into a meta object)
2006-08-26 07:26:04 +00:00
f479235f8e added tipRadius and headRadius bone properties 2006-08-26 05:40:58 +00:00
b56047a65a Added missing settings to Modifiers (could not set on Render/Cage/Editmode :/)
added GPL header to Group.c
2006-08-26 03:18:55 +00:00
Ken Hughes
69836ce9bc ===Python API===
More additions for Mesh.faces.extend(); allow faces with 2 verts or duplicate
verts to remain in the input list (although they are still not added to the
mesh) so that indexList option can return None for them.  The goal is for all
faces which are discarded to still be ignored but return None.
2006-08-25 16:01:16 +00:00
Ken Hughes
2ee94cbbac ===Python API===
New keyword parameters for Mesh.faces.extend() method:
  * ignoreDups: turns off checks for duplicate faces in the input list and
    existing mesh faces.  Intended for constructing new meshes where the
    faces are known to be unique.
  * indexList: makes the method return a list of new faces indices, which
    can be used to index new faces to add other attributes like color.  If
    duplicate faces are removed, None is placed in their list slot.
2006-08-24 20:02:22 +00:00
Ken Hughes
de762ae555 ===Python API===
Bugfix: Mesh.faces.extend() would incorrectly add duplicate faces in some
circumstances.
2006-08-24 19:28:36 +00:00
Ken Hughes
a217e546a4 ===Python API===
Fix return value problem in Mesh_getFakeUsers(): compiler warning in this case
was indicating a real bug.
2006-08-22 18:08:57 +00:00
d6d2d6f063 added fakeUser property to mesh (will need to add to all other library datablocks too)
and added __copy__ to quat and euler types as well as updating the docs.
2006-08-22 09:13:44 +00:00
Ken Hughes
18ab4ff62d ===Python API===
Fix various typos in Modifier, IpoCurve and Armature docs.
2006-08-21 19:11:43 +00:00
Ken Hughes
e5be894a29 ===Python API===
Bugfix: unary minus on a point object should not modify the original point
data but return a new point.
2006-08-21 14:36:11 +00:00
0925d80cfa removed the unpopular 'ed' functions, and added .copy() to Mathutils vector and matrix
(inverted, normalized, transposed)

making an inverted copy of an objects matrix used to be.. (2.42)

  imat= Mathutils.Matrix(ob.matrixWorld)
  imat.invert()


# inverted.. I added but now removed

  imat= ob.matrixWorld.inverted()

# with copy (current functionality)...

  imat= ob.matrixWorld.copy().invert()
2006-08-21 13:52:32 +00:00
9334048b60 Bugfix #4906
Python API bug: Importing ipo curves did a memcpy() on a 1 item too large
data block. I wonder how IpoCurve_append() would have ever worked...
2006-08-20 11:02:31 +00:00
2580a91a8f Added another example for Curve in the epy docs 2006-08-19 11:00:11 +00:00
8a9839fdef Added an example to Modifer.py epy docs 2006-08-18 01:56:18 +00:00
Ken Hughes
1e8033f45c ===Python API===
Patch from jms: adds attributes effect.disp and effect.staticStep.
2006-08-17 21:39:49 +00:00
Ken Hughes
66bd3fbd18 ===Python API===
Bugfix #4886: deleting a bone would disconnect bones when it shouldn't have.
Thanks to Michael Ward (easybreasy) for locating the problem.
2006-08-17 21:36:56 +00:00
314fbb4ff5 Added Armature.New() 2006-08-17 07:14:29 +00:00
Ken Hughes
a680d87902 ===Python API===
Patch to Mesh and NMesh APIs to bring FaceModes dict into sync (thanks jms).
2006-08-16 19:20:37 +00:00
9ef3e8092b Added python __copy__ to Camera, Lattice, Metaball and World. 2006-08-16 14:06:24 +00:00
b92837c7c3 Object.c - Fixed dupli variable flags 2006-08-16 06:19:08 +00:00
Ken Hughes
816da5bb6f ===Python API===
Change documentation of ProtectFlags dictionary from SIZE to SCALE.
2006-08-15 13:16:10 +00:00
8e7095a464 Added __copy__ to armature, material, curve, group 2006-08-15 11:24:08 +00:00
2fc1f4ac42 - updated python api doc string for Object_SetDrawMode() 2006-08-15 11:06:00 +00:00
Ken Hughes
0a3f16304f ===Python API===
Long-awaited refactor of Object module.  Should not break backward
compatibility -- at least it didn't in my tests -- but I'm requesting users
to put it through heavier testing and report problems through the bug
tracker.
2006-08-14 18:01:28 +00:00
Ken Hughes
a01a0e6256 ===Python API===
Fix compiler warnings in Sound.c and Effect.c.
2006-08-14 16:29:11 +00:00
e341a4e1f4 Patch: Constraints to Limit Transforms (#4662) by Joshua Leung (aligorith)
This adds three new constraints to limit the range of location, rotation and scaling values.
2006-08-13 14:18:15 +00:00
3526235446 Added .radius support for curves, and material's lightGroup 2006-08-13 10:13:19 +00:00
515fe83f97 added __copy__ to mesh and object types, fixed a monor bug in setTexMesh and made Mesh.c use G.totMesh properly. 2006-08-13 01:51:47 +00:00
7440aba482 Compositor: finished work on node "File Output".
- It saves a file with indicated type on each change, with number
  appended denoting the current frame (like ANIM saving).
- Output filename button supports relative paths ("//")
- Shows optional preview image too
- For now, added a print on each file save as feedback

To make this option work nicely, changed the BKE_makepicstring() function
to have less globals inside, so it is more generic. Todo: allow amount of
digits in filenames to be set (to support files like tmp_123456.jpg)
2006-08-10 10:38:50 +00:00
a5d0af3b4f Type in effect docs, edited some of the object docs also. 2006-08-09 01:53:34 +00:00
49e778ed7f Commiting JMS's patch for particles with modifications. 2006-08-09 01:37:17 +00:00
b44ae44c72 Made RotationMatrix accept values outside 360,
added object.type to be used instead of .getType()
2006-08-08 14:34:38 +00:00
531cd7c0fc Removed debug line added when testing for matrix memory leaks that messed up matrix.invert()
updated bvh import which was modified to account for that. as well as other minor changes.
2006-08-06 22:47:57 +00:00
aba435cbc1 Added setName and setFilename as well as making name and filename writable. 2006-08-06 10:47:12 +00:00
aaec000545 Made Font.c's pack/unpack work like Sound.c's 2006-08-06 09:51:40 +00:00
80f5a232d9 modified Text3d.Font
* Renamed Text3d.Font.New() to Text3d.Font.Load() since New was acring like load anyway.
* Text3d.Font.Get() was just calling Text3d.Font.New(),
  made it get from a name or return a list of all fonts.
* implimenetd getsetattrs
* removed references to bones in the error messages
* added users variable
* renamed name to filename and added access to id.name
2006-08-06 07:34:25 +00:00
6a48654cce Added a octree implimentation for doing fast locational vertex lookups. 2006-07-31 13:28:00 +00:00