Commit Graph

120055 Commits

Author SHA1 Message Date
Campbell Barton
475bc908be changed select grouped hooks functionality- just select the hooks that use the active object.
also speed up for select group, only find group status for unselected objects.

Updated the select group menu in 3 places, the space bar menu was out missing some other group options also.
2006-10-09 18:56:02 +00:00
Campbell Barton
18e3386ac5 malefico's request when working with many hook objects-
Select Grouped -> Hook Siblings (Deform Same Data)
2006-10-09 17:56:00 +00:00
Campbell Barton
0933418617 Lattice.c was looping through all lattice data to check that it wasnt removed.
No other BPyModules do this and zero user lattices are kept so this check is not needed.

removed lattice.applyDeform(), this called object_apply_deform, which only gave a message to use modifiers.

changed the example in epydocs to apply the lattice using modifiers.
2006-10-09 06:19:27 +00:00
Campbell Barton
27dc45ba24 BPyRender.imageFromObjectsOrtho's now sets all layers visible,
an error in Scene.c - scn.Layers disallowd all layer bits to be set.

made image_billboard.py rotate all images to be verticle for more efficient packing, added the option not to pack resulting images into 1.
2006-10-09 04:29:24 +00:00
Campbell Barton
29daa64095 removed unusued vars from Geometry.c
uv_archimap still had python based line intersect

added plane2matrix function to BPyMathutils
added an optional arg to imageFromObjectsOrtho - camera_matrix
camera_matrix can be used to define a plane in 3d space where X and Y scale is used to set the width and height of the area to render.
2006-10-08 10:51:38 +00:00
Campbell Barton
b3a48fe82e removed some unused vars from Curve and matrix
scn.objects.new(None) - adds a new empty
 - new objects are selected by default now

further stripped down the vector struct, the wrapped state was being stored and 2 places.
2006-10-07 11:49:53 +00:00
Campbell Barton
30d207e650 Added python func Blender.Geometry.LineIntersect2D(v1,v2,v3,v4)
updated archimap and cookie cutter to use it, removed python version from BPyMathutils
archimap island merging is noticibly faster
2006-10-07 04:56:36 +00:00
Campbell Barton
dda63a9dde added comparison function to many python types so you can do == and =! 2006-10-06 16:48:28 +00:00
Jens Ole Wund
aaaae78527 removing self collision for curves
just did a few tests, with the 'surprising' result that balls are not curves ..
and i don't want to be swamped by bug reports tellling me
'it does not collide as i whised it would'
2006-10-05 21:30:55 +00:00
Jens Ole Wund
f2d27eb4cb bug fix
only alow self collision for suited objects

feature request from hairdressers
self collision for curves
works amazingly well if you keep in mind there balls around vertices colliding
2006-10-05 17:46:01 +00:00
Campbell Barton
4811ba51ed Python API
added list like access to mesh face colors so you can say col[0] = 255 instead of col.r= 255
more importantly 'for ch in col' and 'tuple(col)'
2006-10-05 15:56:11 +00:00
Campbell Barton
3bd71e9ad5 added the option to Blender.Library to 'link' data for malefico 2006-10-05 15:24:15 +00:00
Jens Ole Wund
21d6b199ab softbody self collision
ironing out a few glitches related to goal pinning
volatile test blend ->
http://www.wund.homepage.t-online.de/hidden/sb_col_must.blend
+ adding a few alternative collision ball calculation algos
since i did not want to blow up (waste)  DNA space without need,
coded as -1.0 -0.1 -1.1 values in 'ball size' (look at tooltip popup)
2006-10-04 21:36:55 +00:00
Campbell Barton
0c6bb8c079 mesh.transform() was applying the inverted 4x4 matrix to the normals, without removing the translation part.
iter with a char value did not allow for -1, my bad, using short now.
2006-10-04 17:06:29 +00:00
Campbell Barton
5dcf97c892 moved vector objects to getseters,
added in place operations.
  Vector_iadd   vec1+=vec2
  Vector_isub   vec1-=vec2
  Vector_imul   vec1*=float or vec1*=mat
  Vector_idiv   vec1/=float

length is now writable vec.length= float
2006-10-03 16:07:48 +00:00
Jens Ole Wund
c903e2c07b -bug fix
sometimes goal pinned vertices were omitted by self collision
2006-10-03 12:12:24 +00:00
Campbell Barton
6b7c4e09e8 Mathutils.Vector speedup
removed the need for casting python objects to Vectors pyobjects when performing vec/float arithmatic.
a PyObject for coercing has also been removed from the vector struct so a little less memory will be used also.


Benchmarked before and after this change
___________________________________
import Blender
v= Blender.Mathutils.Vector
m= Blender.Mathutils.Matrix

a= v(1,2,3)
b= v(3,2,1)
c= m()
t= Blender.sys.time()
for i in xrange(20000000):
        a*b
        a*10
        a/10
        a+b
        b-a
        a*c

print Blender.sys.time()-t
_______________________________________

Before 63.5sec
after 49.5

about 3 sec of that is looping
2006-10-03 05:11:33 +00:00
Matt Ebb
815f115338 * Previous backwards compat commit to reset curve radius values to 1.0 on old
file was also happening on files made with current CVS (until next release).
Added a simple check to make it only happen on old files where there was no
radius before.
2006-10-03 00:16:22 +00:00
Jens Ole Wund
1ace6ec0ef softbody panel cosmetics
and a forgotten debug print .. tsk
2006-10-02 17:05:56 +00:00
Andrea Weikert
ecfdda30cd - fix for relative path: BLI_strncpy needs to be passed len+1 !
(introduced by my last patch - ouch)
2006-10-02 16:11:57 +00:00
Jens Ole Wund
ab92fca306 softbodies
mostly reshuffeling UI to have things where i'd expect them to be
2006-10-01 21:49:10 +00:00
Martin Poirier
1ea97e5552 Patch: [ #5036 ] IPO Curve Mirroring by Joshua Leung (aligorith)
This patch adds the feature of IPO curve mirroring. It mirrors the selected keyframes in the active ipo curves over a user-nominated mirror-line.

Options are:
- Mirror over current frame
- Mirror over vertical axis (X = 0)
- Mirror over horizontal axis (Y = 0)

Functionality can be accessed from:
- Hotkey M in IPO editor
- Submenu in header of IPO editor
2006-10-01 19:45:37 +00:00
Martin Poirier
e5ba49349f Patch: [ #5046 ] IPO Editor -> Axis Locking for Transform by Joshua Leung (aligorith)
** This is a heavily modified version of the patch, but the idea is the same. **

This adds X and Y as hotkey for constraining IPO transforms (grab only) and also fixes the display to only show relevant information when constraining (grab and scale).
2006-10-01 19:29:46 +00:00
Martin Poirier
ed2560488b As discussed during meeting, Changed curve length/tilt markers to indicate direction.
That is, a 3D curve now displays as ->->->-> instead of -|-|-|-|.

Comparing the two, I didn't find the arrow display any more confusing then the straight lines when dealing with loops and tilt variations. Sharp turns are more likely to display crossed lines though.

Others should feel free to disagree and make it better.
2006-10-01 18:28:46 +00:00
Tom Musgrove
a88807b6dd ==Mat4ToEul==
a utility function to convert 4x4 matrices to a euler rotation, contributed by Joshua Lueng (aligorith)
2006-10-01 16:49:41 +00:00
Tom Musgrove
7e469efd43 ==kkey action column select update==
added constraint key column selection to column selection code, patch by Joshua Leung (aligorith)
2006-10-01 15:55:09 +00:00
Simon Clitherow
4d1a7ef042 Added missing check for 'WITH_BF_INTERNATIONAL'. This fixes loading truetype fonts for text objects. 2006-10-01 12:39:31 +00:00
Brecht Van Lommel
dfa01a56ba Fix for bug #5044: random crashes when rendering.
This one is of my own making, removed too many locks. Thanks Malefico for reporting.
2006-09-30 21:29:47 +00:00
Campbell Barton
32b1e2383b 3rd attempt to commit, metaball fixes and small vector optimization 2006-09-30 14:14:49 +00:00
Jens Ole Wund
8e7b403924 new softbody feature:
simple (naive) self collision
estimates a collision ball
using the spring lenght to attached neighbours
(idea stolen from old cloth modifier files, but i'm sure ZAZ and genscher won't mind)
-- usefull for untangeling static cloth like objects
-- may be used for cloth simulation with known limitations
like 'tunnel effect' if objects are moving too fast ...

demo -- volatile files
http://www.wund.homepage.t-online.de/hidden/sb_without_selfcol.avi
http://www.wund.homepage.t-online.de/hidden/sb_with_selfcoll.avi

have fun
BM
2006-09-28 20:27:46 +00:00
Geoffrey Bantle
bd6e5d20c7 -> Sanity Check for Selection History
Some operations like edge loop deselect would cause selection history
to become invalid. Added a sanity check to countall() to try and catch
these when they happen.
2006-09-28 02:37:35 +00:00
Geoffrey Bantle
b4e97c01ff -> Enter/Exit editmode wait cursor flags
The wait cursor was being called during editmode enter and exit for meshes.
This was a problem for several reasons. First of all, python modules like
Mesh now make use of editmode features. These methods that wrap editmode
tools may be called many times during the execution of a script
and lead to the wait cursor rapidly flickering on and off.

The other problem was that the wait cursor wasn't being called for editmode
enter and exit of all data types. This is unified now.

-New Arguments

enter_editmode() should be passed a nonzero integer or simply EM_WAITCURSOR
if the wait cursor is desired. Currently only the python API passes a '0'
to enter_editmode()

exit_editmode() has several options and they are passed in as the bitflags
EM_FREEDATA, EM_FREEUNDO and EM_WAITCURSOR. These flags are defined in
BDR_editobject.h.
2006-09-28 01:55:44 +00:00
Geoffrey Bantle
d86af04e9a -> Add/Delete Scene fix
countall() wasn't being called when scenes were being added/deleted.
This caused the info header to temporarily display incorrect information
about scene statistics.
2006-09-27 23:39:19 +00:00
Brecht Van Lommel
9dce6081c0 Bugfix for a recent commit: live unwrapping behaved badly because
pinned uv charts were being auto rotated, they should just stay fixed.
2006-09-27 19:45:38 +00:00
Campbell Barton
0cd7ee76a4 made fgon edges not draw lengths with length draw option 2006-09-27 18:08:54 +00:00
Campbell Barton
ad51edd3bf Adding MDD import and export from patch 4969 with modifications, (import and export rvks, MDD is from lightwave AFAIK)
Added Mesh .key .removeAllKeys() and .insertKey() for MDD support (was using NMesh just for keys before)
Since this is aparently an experemental feature in NMesh we may want to change this.
2006-09-27 16:33:02 +00:00
Jens Ole Wund
2d11fbe192 fix for homegrown bug in softbody rigidity
springs inserted twice caused unreal stiffness in ODEs
-> bad performance killers
2006-09-27 06:59:27 +00:00
Geoffrey Bantle
a39ca26700 -> Misspelled tooltip for 'Enable Script Links'
Fixed a minor mispelling in the tooltip, 'and' was written as 'amd'.
2006-09-27 06:40:10 +00:00
Jens Ole Wund
d0899c2642 Rigidity only for meshes 2006-09-26 17:16:23 +00:00
Jens Ole Wund
d8874df09c New softbody option: adjustable rigidity.
Gives local structure stability for though fabrics, thin steelplates ..
even suzanne gets pretty crash resistant that way.
If non zero it not only adds diagonals but all other "2edge-wide" springs
so it somehow replaces stiff quads for meshes too.
2006-09-26 12:53:57 +00:00
Campbell Barton
e6251f6ae7 removed .parent by mistake in Object.c
made some of the importers raise a nice error if a file disnt exist rather then a python error. will eventually apply to all.
2006-09-26 04:39:46 +00:00
Brecht Van Lommel
6587c3c6ba Some UV/Image window changes:
- A new Save image function, next to the existing Save As.
- Shortcut keys Alt+S, Alt+R, Alt+O and Alt+N for Save, Reload, Open
  and New image respectively, consistent with the text editor window.
- Hide Select and UVs menus when UV editing isn't active.
- Removed duplicate and unused code, also moved some functions.
2006-09-25 22:00:52 +00:00
Campbell Barton
65895ba6bd corrected image doc mistake - image.makeCurrent()
BPyRender.imageFromObjectsOrtho() returns an image

Made all image bake scripts ask before overwriting a file. as well as displaying the newly created image once its rendered.
2006-09-25 19:35:43 +00:00
Brecht Van Lommel
7e4f1425b7 Fix for bug #4828: random rotations of uv charts after unwrapping.
This never worked that well, so now after unwrapping, uv charts are
rotated to fit in their smallest enclosing rectangle. This should give
the expected behavior in the most common cases.
2006-09-25 15:40:26 +00:00
Brecht Van Lommel
99c7e3cb9e Last commit broke the smear brush, thanks Jens for spotting this. 2006-09-25 12:30:12 +00:00
Matt Ebb
01e7f02dcd * This should have come along with the proportional edit commit. tsk tsk. 2006-09-25 11:33:53 +00:00
Ton Roosendaal
2662c7ae79 Bugfix #5034
When using new Shadowbuffer option "Auto clip", the clipping planes could
become so narrow that sampling code - using ints - could result in
overflows (sign flip). This especially for small shadow buffers with high
bias values.

This fix adds an extra check in shadow sampling for such overflows.
2006-09-25 09:35:04 +00:00
Matt Ebb
aec9f8969c * tweak to outliner line colour 2006-09-25 07:59:50 +00:00
Matt Ebb
6b775741c0 * Gave curve transforms Tilt and Shrink/Fatten a home in the v3d menu 2006-09-25 06:11:16 +00:00
Matt Ebb
2e7aa1dbf5 * Proportional edit mode 'random' falloff
This is another proportional edit falloff that slightly randomises the
influence. It's not strictly random, it's blended with linear falloff so that
it's a bit smoother. The nice thing is that it works with all transforms, axis
locking etc, including the special ones like to sphere, shrink/fatten/etc. It
can be used for all sorts of things like roughening surfaces. I most recently
used it to add a bit of randomness to the folds of some cloth. I
made a short demo video here: http://mke3.net/blender/etc/prop_random-h264.mov

Also included nicer icons for the falloff types.
2006-09-25 05:15:19 +00:00