Commit Graph

2998 Commits

Author SHA1 Message Date
d02b83cf66 - Fix for CTRL (and possible ALT, SHIFT) as hotkey; now also works while
moving mouse around :)
- Shift+D duplicate uses new transform
2005-03-23 18:50:03 +00:00
0ae9af34a0 a fix for: https://projects.blender.org/tracker/index.php?func=detail&aid=1173&group_id=9&atid=126
blender now does a little more homework to figure out what type of avi file is
being loaded.

Kent
2005-03-23 18:33:52 +00:00
7c1303bf25 Bug fix #2375
Akey in ipowindow didn't deselect anymore. Or worse... each main refresh
in ipowindow selected all ipos!

Was related to trying to fix mess from jK's commit last year... now its
scientifically ok again! :)
2005-03-23 16:55:22 +00:00
5412cab522 Bug fix #2349
Outliner click on mesh in screen without 3d window crashed. NULL pointer!
2005-03-23 15:40:50 +00:00
09ed2cef75 New feature, since long on todo;
The grid function (transform translate, snap-to) now uses the grid step as
displayed in the 3d window, so it depends on how much you zoomed in/out.

The threshold for it is a bit tricky... it follows the drawing, but the
blending in/out of grid makes it sometimes not obvious.  might need slight
tweak?
2005-03-23 14:24:43 +00:00
7e6a65bc62 Monkey got accidentally 'recalcnormalled'. Causing eyes to have normals
pointing inside. Fixed!
2005-03-23 13:09:22 +00:00
1bbc60f63e Bug #2444
Jkey, for showing spare render page, didn't work when using ztransp
material, or buttons F5 open or shaded view.... quite strange eh!
Caused by init-render-material setting R.flag to use Ztransp render.
Globals causing havock yes...
2005-03-23 12:47:23 +00:00
aab0b1535f Transform stuff for TEST!
- 4th rotation widget styling, activate with Scene buttons, Anim panel, "rt"
  on "4".
- drawing constraint lines replaced with widget compatible styling.
  (functionality unchanged)

Fix;
- click on center for Rotate widget didn't switch to local/normal in all
  cases
2005-03-23 11:49:54 +00:00
21aadaecdd Small fix; when pulldown menus are too large to display (they get aligned
with top/bottom to active button) the menu aligns from bottom of blender
window.

This already happened for File->Export menu
2005-03-22 15:56:58 +00:00
1a4138e184 - Removed temporal hack that switched manipulator type on G, R, S hotkeys.
That was blocking immediate hotkey access for normal blendering.
- New, experimental, hotkey to switch: CTRLKEY! Added code in such a way
  it detects a CTRL key press and release without using it as modifier.
  Pressing CTRL will cycle through the 3 manipulator types.

- Fix for yesterday's commit; click on centerpoint for switching
  orientation happened too on a click for other widgets. Not nice...
2005-03-22 15:01:36 +00:00
1f203ac7f1 - Nothing to see hear, move along, move along. 2005-03-22 14:57:14 +00:00
af12eaae1f Reordered some of the includes to fix STL issues.
For details, see:
http://www.blender.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=5867

Kent
2005-03-22 13:34:31 +00:00
f0112406ed Added call in creating transform data Mesh editmode to calculate vertex-
normals for the ALT+S "shrink/fatten" option.
2005-03-22 11:10:04 +00:00
Stephen Swaney
cda3383189 add files for Daniel Dunbar's new CCGSUBSURFLIB work to SCons build.
This commit *only* adds the new files.

Since this is an experimental feature, it is NOT enabled by default.

At the moment, you can turn it on by editing the toplevel SConstruct
file.  NOTE:  this is a hack.  it will be done properly later!

To enable this experimental feature,
add the following line after the line that starts with 'extra_flags = ['

    extra_flags.append( '-DUSE_CCGSUBSURFLIB' )
2005-03-22 07:45:20 +00:00
845ee1e4a1 - Hacked in blender style creasing support to new subsurfs.
I would like to have proper creasing (following what appears to be
the informal standard in the subdivision surface literature) but
I do not know when I will get to this or how complicated it will
be. With this patch CCGSubSurfs should now have the same capabilities
as regular subsurfs (barring possible bugs) and so replacing the
old implementation is a reasonable possibility.
2005-03-22 06:11:25 +00:00
a4b5ddb371 BPython:
-- Stephane Soppera (thanks) reported libc stat function fails for paths ending with "\" under win with free VC++ compiler toolkit 2003:
    removed final '/' (BLI_make_file_string changes the '/' to '\\\\' for win) slashes from relevant paths, that should take care of it .  Note: here (linux, glibc, gcc 3.3.3) stat doesn't have this problem.  Also checking if U.pythondir ends with a slash and, if so (as long as its length > 2 to), removing the slash, for the same reason.
-- small cosmetic changes in BPY_menus.c for debug msgs and in header_scripts (added a separator in the Scripts win -> Scripts menu).
2005-03-22 04:28:36 +00:00
a8a73e8097 Transform widget update
- now support for global/local/normal orientation.
- LMB click on center switches orientation mode
- in object mode, local (now) only displays on single object selected
- in editmode, Normal orientation is derived from faces selected
- if no normal can be found, it shows local orientation

Currently implemented, for test, in Mesh editmode and PoseMode.

Note for PoseMode; the 'translation widget' shows on "IK" bones but
doesn't translate, it rotates instead. Pretty interesting to use the
translate widget for it...least cluttered display I think.

Note for Matt; I tried MMB click for switching orientation... it's just
weird that way... such clicks, repeatedly, with mousewheels isnt nice
either.
2005-03-21 22:51:05 +00:00
2ec686720b Added option to use new subsurf module added by Daniel Dunbar. Simply add:
export NAN_NEW_SUBSURF=true

to your user-def.mk file.
2005-03-21 22:32:02 +00:00
86d84f54c8 Size flipping, for kaito. Move pointer to the other side (horizontal) of the pointer to see. (Does affects size member, so just object position and edit mode) 2005-03-21 20:35:00 +00:00
c2121fb855 Fix for possible divide by zero error in Rotate.
Fix for MMB behavior when two axis were exactly on one another or very close. It now defaults like this: X, Y, Z (meaning if as near as X as Y, it chooses X). This could be fixed further.
2005-03-21 19:16:39 +00:00
e5520d955c Created initConstraint. It basicly just checks if the CON_APPLY has been set up (by the BIF_setConstraint calls for example) and calls startConstraint. This must be done because startConstraint uses data initialised when starting transform so it needs to be called after that.
Also changed some strcpy into strncpy.
2005-03-21 18:25:17 +00:00
bc77092959 Added string to BIF_setSingleAxisConstraint() function for headerprint.
Needed for martin to further work on print stuff
2005-03-21 17:52:45 +00:00
bc9291d806 Shrink/Fatten behavior change. This time for good I hope.
Technically, it now works by getting the mouse motion in 3D (just like Translation/Grab), projecting it on the vertical view axis, using the vector length as the shrink/fatten factor. If the motion is downward (on the screen), shrink, if it is upward, fatten.
In layman terms: move up to fatten, down to shrink and it adapts to the viewport zoom, like Translation.

I changed to snapgrid factors to match those of Translation to, so it really acts like grabbing.
2005-03-21 17:36:21 +00:00
981df9983f Transform:
- cleaner code for selection of handles in transform widget. in ortho views
  selecting the center handle defaults, to prevent Inf. overflows for
  perpendicular handles. While holding SHIFT it works the opposite!

- removed redraws on modifier (CTRL, SHIFT) key release. that ensures you
  can apply to grid nicely (functioned that way in all blender releases)
2005-03-21 16:36:43 +00:00
1f8b5912ff More transform widget goodies;
- added 'ghosting' for while using translate/scaling widget
- added 'pie chart' ghost to denote angle while using rotate widget
- added settings to tweak widget in User menu (InfoWindow) "View & Control"
  - Size: total widget size as percentage of window size
  - Handle: as percentage of widget radius
  - Hotspot: for clicking handles, in pixels
  - Fized Size: option to make Widget size independent of window size
  Not sure if all of these are useful to keep, but makes for good testing
  in this stage.

Also: made #define to use new transform to be set TRUE by default now. :)
2005-03-21 14:20:04 +00:00
62147bba30 Scripts (making some changes to the scripts dir):
- moved bpydata/ to scripts/bpydata/ and added a config/ subdir to it;
- created scripts/bpymodules for py modules (also got rid of those "mod_"'s appended to the files);
- updated scripts accordingly.

This will require you to "reinstall" (just copy the scripts/ dir over your older one) if you have a .blender/scripts/ dir somewhere.  Otherwise some scripts won't work.  You can use the updated "Help->System->System Information" script here to check all is fine.  An installer script yet to be written will help users with these issues, specially to make the user defined dir have the same structure expected from the default scripts dir, so the basic facilities (module search; saved config data; scripts: installer, help browser, config editor) are also available for a user's own collection of written and downloaded scripts.

BPython:
- slikdigit's crash was because he had no <home or blender exe location>/.blender/:
  proper check added and also now if all else fails the <cvsblender>/release/scripts/ dir is also searched for scripts.  All this registration dirs stuff is a little messy (installation!), so please report any troubles (I only tested on linux).
- slight change in error report in BPY_interface.c's BPY_menu_do_python; remembering to set globaldict pointer to NULL there, too.
- moved bpy_gethome() to EXPP_interface.[ch]
- "//" as user defined python dir is ignored while looking for scripts, considering it's only a default some users use, not really meant for a scripts dir.
2005-03-21 05:26:52 +00:00
12107e6af2 - update new conversion to DLM routine to use match subsurf
(means optim, seams, selection should work same now, but I am
   not super familiar with all this stuff so can't test very well).

   These hacks to the DLM structure are disgusting btw Ton. What
   a waste of memory! All the information that is so meticulous to
   kept and managed in the old structure is essentially explicit (or
   easily made so) in the new one.
2005-03-21 04:22:58 +00:00
2ea128b86e - remove some duplicate prototypes, causes problems for some compilers 2005-03-21 02:03:42 +00:00
6555ca29ab - Part of CCGSubSurf integration, this is the actual blender side of the
integration.
2005-03-21 01:37:14 +00:00
887b598d71 - Initial integration of CCGSubSurf library into blender. The lib is
only in one C file and not worth dropping in extern but presumably
   will be synced with public CCGSubSurf release I hope to be making
   soon.
 - Currently the implementation must be enabled by defining
   USE_CCGSUBSURFLIB somewhere with your build system. The code should
   be considered highly experimental.
2005-03-21 01:34:27 +00:00
6e41cb0a97 - switch BLI_memarena to use stdlib malloc/free (alloc errors
will be caught by containing structure)
 - fixed off-by-one bug (reallocated one byte before necessary)
2005-03-21 00:48:19 +00:00
99676b7bfb - another BLI_winstuff.h removal 2005-03-21 00:47:21 +00:00
630bb7f7bf Warp was acting weird if the cursor wasn't centered in the data space, that is fixed.
Helpline for warp was wrong in edit mode if the object wasn't centered on global space.
Boundbox calculation for warp is done in view space now, so it is always maximised since aligned with the view.

Switch the negative/positive switch for Shrink/Fatten from horizontal motion to vertical motion. Pull down to shrink, pull up to fatten. This could still use some work.

BugFix: Constraint center was wrong with MMB (was bypassing the fix I commited the other day).
BugFix: Changing modes while in transform and switching to local constraints in edit mode crashed. This was due to resetting the TransInfo flag in initTransModeFlags. Now done correctly in initTrans.
2005-03-21 00:39:09 +00:00
6a70653577 - kill some warnings (open/seek/read/write need io.h on win32) 2005-03-20 20:48:40 +00:00
ca030aeab7 - apologies, accidentally commited code w/ game engine disabled 2005-03-20 20:36:46 +00:00
03cafb856d Adding some docs for material insertIpoKey additions 2005-03-20 19:52:15 +00:00
Stephen Swaney
7df1facbfa New Material method: insertIpoKey( key_type )
inserts material ipo key at current frame.
contributed by Johnny Matthews.
2005-03-20 18:28:36 +00:00
dedad185ba Three rotate manipulators to play with;
G.rt = 0: one handle for each rotate axis
G.rt = 2: traditional half-circle rotate handles
G.rt = 3: mixed version
2005-03-20 17:25:00 +00:00
Stephen Swaney
99bffa9cc0 correct bad reference to getDrawMode. 2005-03-20 12:34:36 +00:00
c2140d28c1 - Fixed flipped orientation of getViewViewvector(), was opposite in ortho
versus perspective.
  Note for Martin; still an issue with defining what positive/negative
  rotation is in perspective... needs more math here!
- Added Transform Widgets for PoseMode
- made adding bones in EditMode setting G.moving, so it doesn't draw other
  selected objects nor Widgets

Warning in commit of Martin yesterday: Trackball and initTrackball were
declared static, whilst also in transform.h. Quez; why are these functions
exported in the .h file?
2005-03-20 09:45:54 +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
e65b0beea8 Ton broke a couple of things in his last commit including PET in rotation mode and local axis constraints on objects.
Bringing that back and enabling PET in trackball rotate.

Changed the rotation manipulator drawing code to really align the Trackball rotate ball with the view (using getViewVector) so that it always looks centered on the selection.
This was particularly ugly in perspective mode with a selection far from the center of the screen: http://www.clubinfo.bdeb.qc.ca/~theeth/screenie.jpg

Moved getViewVector from transform_constraints.c to transform_generics.c since it is not really a constraint related function. Also made it independant on the TransInfo structure so it might be useful elsewhere too.
2005-03-20 02:00:16 +00:00
Stephen Swaney
0d2179774d New Bpy Object method: insertIpoKey()
inserts Object IPO key for LOC, ROT, SIZE, LOCROT, or LOCROTSIZE
Contributed by Johnny Matthews (guitarGeek)
2005-03-19 23:47:39 +00:00
52417aeb6e - added helper lines in rotation widget
- switched to Local mode for widgets by default, will be a key/button later
2005-03-19 22:03:14 +00:00
Stephen Swaney
c0ebb826fa fix warning: initialization makes integer from pointer without a cast 2005-03-19 21:28:40 +00:00
8e92ee8684 - remove all obsolete inclusions of BLI_winstuff.h (due to recent changes)
NOTE: BLI_winstuff.h was meant to be a wrapper around windows.h to handle
undefining various crap that windows.h defines. Platform specific headers
should only have to be included in a few places. This reduces the number
of inclusions of BLI_winstuff.h to 16 which is a much more reasonable
number (than the 144 or whatever it used to be)
2005-03-19 21:08:13 +00:00
f74662dcc1 - add some windows specific defines to BIF_gl.h so that OpenGL can
be used without including windows.h - this is the main reason windows.h
   is included in so many places and this change allows most of those
   inclusions to die.
2005-03-19 20:48:39 +00:00
35ab8a32a1 Global G.moving got nice define flags, and additional meaning.
- move object mode
- move editmode/pose mode
- move with widgets
2005-03-19 20:27:13 +00:00
0542e1ebe3 - part of BLI_winstuff.h cleanup 2005-03-19 20:19:10 +00:00