Commit Graph

187 Commits

Author SHA1 Message Date
Campbell Barton
b6f58d0ea1 - add individual origin support for curves and improve the orientation calculations for curve handles,
- add support for using the active point's orientation.
- add support for creating new custom orientations from curves.
- fix error where only the last selected curve handle was taken into account for manipulator orientations.
2013-07-24 13:56:36 +00:00
Campbell Barton
7fec23ae0a fix for problem with edge slide where it would stop shapekey modifier from being applied (because of added vertices),
now, instead of making hidden copies of faces, the faces are copied into a temp bmesh.

also remove a hash that was being created and not used (old code).
2013-07-11 04:24:36 +00:00
Campbell Barton
99fe6d29eb skip duplicating faces for edge slide unless its used, this causes update problems for shape keys at the moment, Ill check on that but no need to run in most cases. 2013-07-10 12:37:15 +00:00
Brecht Van Lommel
28dd9c6a40 Fix #35767: transforming nodes in the node editor changed the wireframe color
of the active object in the 3D view. This was due to sharing a global G.moving
flag to indicate that transform is active, now it's only set per transform data
type so different editors don't influence each other.
2013-06-24 22:41:37 +00:00
Campbell Barton
7021251043 transform: 2d option for proportional editmode,
Uses for view orientation for distance calculation, can give nicer results when you dont want twisting caused by changes in depth.
2013-06-20 13:24:07 +00:00
Campbell Barton
972c01ac0c remove NULL checks for return values from EDBM_***_at_index calls. 2013-06-20 07:00:57 +00:00
Campbell Barton
dc39ecf010 code cleanup: remove old/unused bmesh bevel transform mode, remove commented character list UI widget and the members these used in 'G' global. 2013-05-28 13:01:31 +00:00
Bastien Montagne
bbd533d4ac Fix for [#35238] Blender does not save custom orientations from "view"
Actually more a feature request... Now create orientations operator has an additional option, use_view, when this one is enabled it will use current view instead of active object to create the new space.

Also made some cleanup (made some funcs static).
2013-05-12 15:52:05 +00:00
Campbell Barton
30c7183874 use 'normal' orientation rather then 'local' with individual origins to use the per-element axis-matrix. 2013-05-01 05:26:10 +00:00
Campbell Barton
9697493c77 allow to scale and rotate from edge/vertex slide. 2013-04-24 15:15:01 +00:00
Campbell Barton
e0464a0549 code cleanup: remove unused vars in edge slide, only store the initial vertex coords rather then a copy of the whole vertex, name edge slide directions a/b rather then up/dowb. 2013-04-19 02:22:23 +00:00
Campbell Barton
3f7f07faf5 style cleanup 2013-04-18 01:52:38 +00:00
Campbell Barton
6da961775f code cleanup: rename BKE_tessmesh -> BKE_editmesh, rename EditDerivedBMesh.tc -> em. ('tc' is odd name which isn't used elsewhere). 2013-04-13 20:31:52 +00:00
Campbell Barton
ba845f6313 fix for own recent addition of transform indervidual-axis in editmode, not working if the object was rotated. 2013-04-12 02:16:44 +00:00
Campbell Barton
ef1af9f9c4 fix [#34802] Individual Transformation Confusing in Edit Mode
Individual transformation now works in editmode mesh faces/edge, armature bones and metaballs.
2013-04-04 09:20:46 +00:00
Campbell Barton
aaa8a13c49 code cleanup: use const events for modal and invoke operators. 2013-03-13 09:03:46 +00:00
Campbell Barton
abd1748e48 code cleanup: move runtime var zfac out of RegionView3D. rename initgrabz() -> ED_view3d_calc_zfac() and have it return the zfac to use. 2013-03-09 11:40:42 +00:00
Campbell Barton
4f4e45540d fix for harmless glitch rotating the camera in camera mode, having the center point so close to the viewpoint caused the helper line to erratically move about because of float precision. 2013-02-28 11:29:27 +00:00
Campbell Barton
9ab3d4ff1e fix [#34303] Rotation fcurves don't work with transforming with individual centers 2013-02-18 16:35:13 +00:00
Campbell Barton
18f12c3fa4 allow alt or Ckey to toggle clamping for vertex slide. 2013-02-17 05:39:55 +00:00
Campbell Barton
9449866bdc fix (for one case of...) [#33949] T_ALT_TRANSFORM conflicts with "emulate 3 button mouse"
ShrinkFatten operator now uses scale key to toggle 'Even thickness' option.
With the default keymap this is Alt+S,S.

Added functionality so the header print can get the key used for the modal keymap, some other operators should make use of this too.
2013-02-14 14:01:02 +00:00
Campbell Barton
b59ba34c37 fix [#34152] Vertex Slide - misleading description
also use C key to toggle clamping rather then alt (reported in [#33949]).
2013-02-11 01:55:58 +00:00
Campbell Barton
c734808fb0 fix error with flipped vertex slide failing, also fix bug where you could be flipped and in proportional vertex slide mode. 2013-01-31 22:18:37 +00:00
Sergej Reich
419ce840f9 rigidbody: Make rigid bodies kinematic during transformation
This allows moving rigid bodies on frame > startframe.
Also rigid bodies can now be picked up and trown around while the
simulation is running.

Note: There is a small glitch with cancelling tansform during simulation
but it's tricky to get rid of.

TODO: Avoid static-static collision warnings
2013-01-23 12:06:18 +00:00
Campbell Barton
d4bf47350f Holding Alt now removes [-1, 1] clamping in vertex slide, Thanks to Psy-Fi for the original patch. 2013-01-18 23:20:17 +00:00
Campbell Barton
769ab3eed8 code cleanup:
- cycles ui used 'cscene' for scene.cycles and scene.cycles_curves
- style cleanup
2013-01-15 23:17:45 +00:00
Campbell Barton
d8f2672be7 style cleanup 2013-01-15 13:08:51 +00:00
Campbell Barton
2e154f7ce5 vertex slide was using flipped value, wasnt so noticable unless you types in a value. 2013-01-15 03:35:31 +00:00
Campbell Barton
e0388a881b fix for own error with unwrap selection checking uvedit_have_selection() failed with no UV layer.
also add some safety checks for BM_ELEM_CD_GET_* macros.
2013-01-14 08:02:06 +00:00
Campbell Barton
af5d994b15 add new vertex slide transform operator, different from the existing vertex slide tool based on user feedback.
- no 2-step select edge, then slide.  Instead you can slide and select the edge at the same time.
- ability to slide multiple verts at one.

supports proportional option for vertex slide and flipping, both matching edge slide functionality.
2013-01-13 14:08:53 +00:00
Campbell Barton
80f0bfe483 code cleanup: rename transform Slide operations to EdgeSlide. 2013-01-13 05:19:47 +00:00
Campbell Barton
7c699a217a define the size of matrix args for both rows/cols. 2012-12-11 14:29:01 +00:00
Campbell Barton
a10ed84bf4 fix [#33094] Even edge slide on multiple loops destroys geometry 2012-11-07 11:19:54 +00:00
Joshua Leung
fc1467df5f Auto key warning - Stripping down to basics
Now just a static icon + text display in corner of view. No blinking. No
red/orange text. No window borders.
2012-10-11 09:53:17 +00:00
Joshua Leung
5baa587a12 Warning indicators for animators when Auto Keying is enabled during transform
Recently on the bf-funboard list, there have been some requests for clearer
indications for animators that autokeying has been enabled when transforming so
that corrective action can be taken sooner if this wasn't expected. This is
especially important in distributed+collaborative environments where multiple
artists may work on a single shot file: someone working on a shot from
another animator may not be aware that autokeying was enabled, thus accidentally
setting a whole bunch of extra keyframes.

In this current incarnation, we display using red (not hardcoded, but using an
existing theme color) a solid 1px border around the 3D view while transforming
with autokeying enabled. In addition to the border, a blinking indicator (record
icon + "Auto Keying On" text) appear in the top right corner, as inspired by the
traditional recording indicator icons on camcorders.
2012-10-05 13:22:09 +00:00
Brecht Van Lommel
0b4dfa1fcb Fix #32450: edge slide with multiple loops selected could move some loops
in the wrong direction.
2012-08-31 12:08:04 +00:00
Daniel Genrich
731c6ebec4 Patch [#32246] (Bugfix): UV editor -> "Proportional edit" together with "constrain to bounds" does not work.
Patch reviewed by Campbell Barton. Thanks!
2012-08-06 13:40:29 +00:00
Campbell Barton
e592f757e8 fix for crash when moving frames about in the node space, was possible to move a node into its own child frame (causing recursive parent loop).
also some minor code cleanup.
2012-08-05 20:40:26 +00:00
Lukas Toenne
83093d6770 Extended modes for snapping in the node editor.
The transform operators in nodes will now use the unselected nodes to generate snapping points. Unlike object snapping, node snapping works for the x/y axes separately and snaps node borders to same borders of unselected nodes. The sensitive area for node borders extends over the whole view2D range, to enable simple alignment of nodes in both x and y direction.

For snap points in the node editor an additional enum value is stored to indicate the type of node border (left/right/top/bottom). This works as a constraint on possible node alignments: only same border types align with each other.
2012-06-29 14:34:46 +00:00
Campbell Barton
b33c5168f4 mask animation keys now editable in the dope sheet (duplicate, transform, delete, select- etc). 2012-06-08 14:31:38 +00:00
Campbell Barton
8c71157af6 shrink/fatten transform for mask - adjusts the feather weight.
works in proportional editmode too.
2012-06-05 14:13:14 +00:00
Campbell Barton
68a9dd54ec mask mode for clip editor developed by Sergey Sharybin, Pete Larabell and myself.
see:
http://wiki.blender.org/index.php/User:Nazg-gul/MaskEditor


note - mask editing tools need continued development, feather option is not working 100%
2012-06-04 16:42:58 +00:00
Campbell Barton
c0f59c44f8 edit to last commit, remove pointer to active slide vert, only need to store the index. 2012-05-23 09:55:48 +00:00
Campbell Barton
88fc573596 non-proportional edge slide patch by XercesBlue
remmoved edge-visibility check from the patch which gives nice functionality but calculates and BVH and throws it away every update.
2012-05-23 09:46:32 +00:00
Nicholas Bishop
6c67fc83ea Add vertex skin radii scaling as a transform operator.
Add a new transform operator, "Skin Resize", which scales the X and Y
axes of the radius field in MVertSkin. It's bound to CTRL+AKEY.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:30:14 +00:00
Bastien Montagne
800bc74a8f Adds “align” option to snap to verts/edges/faces, for bones in Pose mode.
Have to use a ugly hack, as for pose bones, rotscale transform matrix is not always the same as translate one... :/

Adresses feature request [#30979] snapping: "align rotation with the snapping target" and pose-mode.
2012-05-13 16:01:59 +00:00
Campbell Barton
90aa56a12a code cleanup: use static functions for transform operators 2012-05-12 23:18:14 +00:00
Campbell Barton
e701f9b670 style cleanup: whitespace / commas 2012-04-29 15:47:02 +00:00
Campbell Barton
aedd4af57e code cleanup/bugfix uninitialized values
- edgebisect bmesh operator used uninialized beauty field.
- BLI_join_dirfile could read from before the string bounds when passed an empty dir string.
- pransform could use an uninitialized projected coordinate (unlikely but possible)
- RNA_property_path_from_ID_check would compare against an uninitialized pointer when the path wasn't found.

also have bmesh walker use BM_edge_other_vert() utility function.
2012-03-12 06:53:47 +00:00
Campbell Barton
4f7bdc59d3 style cleanup: spelling.
also remove large, duplicate comments from sunsky.h
2012-03-09 00:41:09 +00:00