Commit Graph

311 Commits

Author SHA1 Message Date
14884cda1f Gizmo: move transform to a persistent option
Based on feedback from animators, this is useful to keep as a view
option (as in 2.7x).

Now the transform gizmos can be enabled from the popover,
the tools still work for location/scale/rotation.
The transform tool has been removed.

See T63518
2019-04-13 20:58:25 +02:00
789d242fa7 GPencil: Implement Opacity transform
Add Shift+F to transform points opacity in Edit mode
2019-04-13 11:19:03 +02:00
f889050aea Fix T62757: Mirror operator fails for non-modal execution
Unlike most transform operators that use an orientation and values,
Mirror uses the constraint axes to define which axes are mirrored.

Now constraint axes are shown in this case.

Other changes:

- Use 'EXEC_DEFAULT' for mirror menu items.
- Show mirror on local axis when not in edit-mode since this is useful
  in object mode too.
- Remove mirror vertex groups since this is in the vertex group menu and
  this menu isn't currently used for general symmetry operators which
  are currently in other menus.
2019-03-20 16:50:48 +11:00
fede272d2c Fix T61737: Gizmo refresh issue
When using a transform.select_orientation keyboard shortcut, the
orientation change would not update the viewport.
So if you had the move gizmo visible, it would not change transform
orientation.

Reviewed By: Brecht

Differential Revision: http://developer.blender.org/D4386
2019-03-09 11:41:04 +01:00
3bcad47357 Fix T62068: rotation incorrectly re-uses axis
Regression in recent transform changes.
2019-03-01 13:06:20 +11:00
80ef7fbeb1 Transform: refactor orientation naming and usasge
Transform orientation was previously related to constraints,
recent changes meant it was used even when not constraining to an axis.

Now transform orientation is separate from axis constraints.
2019-02-27 17:30:51 +11:00
3f23b5ffd5 Correct error in recent transform refactor 2019-02-27 16:39:03 +11:00
6ebad22091 Transform: fix rotate redo behavior
- Add XYZ option.
- Orientation now works as expected.

Now a redo for rotation works logically,
setting the axis to Z & the orientation to view.

Resolves T57205
2019-02-26 21:17:17 +11:00
1bfbfa2810 Transform: remove constraints from the redo panel
Constraint options had confusing behavior:

- When non were pressed, the orientation was ignored.
- When any were pressed, the orientation was used,
  but only unconstrained axed could be adjusted.

Now constraining is only used for modal execution
so there is no need to show these in the interface.

When an orientation is selected, the XYZ values always transform
using that space.

Note, transform system should be refactored to support different
orientations w/o having to use constraints.

Addresses T57204
2019-02-21 21:59:15 +11:00
1af810b4ff Units: Use correct units for transform operators
-Use distance for Shrink/Fatten Distance
-Use factor for Smooth Factor
-Use Factor for Randomize Uniform and Normal values
-Use Distance for Randomize distance amount
-Randomize Transform Scale was wrongly using distance
2019-02-20 21:10:32 +01:00
de13d0a80c doxygen: add newline after \file
While \file doesn't need an argument, it can't have another doxy
command after it.
2019-02-18 08:22:12 +11:00
46ac288a93 Cleanup: rename V3D_MANIP_* -> V3D_ORIENT_*
Wasn't obvious it's related to orientation,
also term manipulator is no longer in use.
2019-02-08 15:22:15 +11:00
eef4077f18 Cleanup: remove redundant doxygen \file argument
Move \ingroup onto same line to be more compact and
make it clear the file is in the group.
2019-02-06 15:45:22 +11:00
744f633986 Cleanup: trailing commas
Needed for clan-format not to wrap onto one line.
2019-02-03 14:59:11 +11:00
65ec7ec524 Cleanup: remove redundant, invalid info from headers
BF-admins agree to remove header information that isn't useful,
to reduce noise.

- BEGIN/END license blocks

  Developers should add non license comments as separate comment blocks.
  No need for separator text.

- Contributors

  This is often invalid, outdated or misleading
  especially when splitting files.

  It's more useful to git-blame to find out who has developed the code.

See P901 for script to perform these edits.
2019-02-02 01:36:28 +11:00
b8e8c0e325 Cleanup: comment line length (editors)
Prevents clang-format wrapping text before comments.
2019-01-15 23:30:31 +11:00
b01f2607a6 Transform: default shrink/fatten even-offset to false
Changed for 2.8 but this cases spikes for some geometry, see: T59968
2019-01-03 15:13:46 +11:00
f7dc6a63fb Gizmo: optional custom orientations for transform
This aims to resolve a conflict where some users want to keep keyboard
axis setting global, even when the orientation is set to something else.

Move/rotate/scale can optionally each have a separate orientation.

Some UI changes will be made next.
2018-12-19 20:57:51 +11:00
3d0383d259 Fix T57737: crash displaying expanded tooltip for transform tool
Maniphest Tasks: T57737

Differential Revision: https://developer.blender.org/D3923
2018-11-09 16:32:47 +01:00
3064da1200 Keymap: move builtin keymaps from C to Python
This should be purely an implementation change,
for end users there should be no functional difference.

The entire key configuration is in one file with ~5000 lines of code.
Mostly avoiding code duplication and preserve comments and utility
functions from the C code.
It's a bit long but for searching and editing it's also convenient to
have it all in one file.

Notes:

- Actual keymap is shared by blender / blender_legacy
  and stored in `keymap_data/blender_default.py`

  This only generates JSON-like data to be passed into
  `keyconfig_import_from_data`, allowing other presets to load and
  manipulate the default keymap.

- Each preset defines 'keyconfig_data'
  which can be shared between presets.

- Some of the utility functions for generating keymap items still
  need to be ported over to Python.

- Some keymap items can be made into loops (marked as TODO).

See: D3907
2018-11-09 11:33:06 +11:00
eb8ddaee4c Transform: support for custom matrix property
Needed for situations when we can't use the orientation.

With extrude the initial extrusion recalculates normals for edges
and vertices which then don't give a useful axis.
2018-11-01 07:55:53 +11:00
60d7740fe6 Tool System: option for transform drag action
See: T57203
2018-10-19 11:54:26 +11:00
321c8232bc Tool System: expose shear tool x/y option 2018-10-18 13:55:01 +11:00
5b9ab20fe4 Transform: axis support for shear tool 2018-10-16 22:06:23 +11:00
e44dfbbba5 Transform: enable shrink-wrap even offset by default
Holding Alt now disables.
2018-10-03 13:10:11 +10:00
2497b2d202 Shrink/Fatten: change default 'even-thickness'
Accessing from the tool and keyboard had different defaults,
disable by default for both.
2018-10-03 08:28:36 +10:00
William Reynish
b2a569dd68 UI: use pie menu for snap, pivot and proportional editing.
* Proportional pie menu at shift+O.
* Snap pie menu at shift+S.
* Pivot pie menu at comma. Previous comma, ctrl+comma, period
  and ctrl+period shortcuts for specific pivot types were removed.

Ref T56881.
2018-09-26 18:24:09 +02:00
a3bb385ca0 Edit Mesh: Move Edit Mesh display settings to overlay's
This makes the Edit Mesh display settings common to all objects. They can
also be set differently per viewport.

Modifying extra data (seams, sharp edges etc...) will no longer set them
automaticaly visible.

Bumping version because we need to force set all extra draw options for
older files.
2018-09-25 22:51:54 +02:00
f1c8c25a3e UI: rename Translate/Grab to Move in UI, shortcuts stay the same. 2018-09-06 12:22:09 +02:00
c4022da617 Merge branch 'master' into blender2.8 2018-08-16 08:18:52 +10:00
eebc292b42 Cleanup: rename transform UI values
See: T54858
2018-08-16 08:02:36 +10:00
936d1cef6e Merge branch 'blender2.8' into soc-2018-bevel
Conflicts:
	release/scripts/addons
	release/scripts/startup/bl_ui/space_view3d_toolbar.py
	source/blender/editors/space_outliner/outliner_draw.c
2018-08-01 14:16:41 +02:00
e91bdb10e9 Merge branch 'master' into blender2.8 2018-07-26 15:51:29 +10:00
44370a307c UI: hide transform constraints when not used 2018-07-26 15:44:27 +10:00
9257357c3f Merge branch 'master' into blender2.8 2018-07-26 14:49:52 +10:00
e6c5490323 UI: hide proportional transform options
Adds property poll function to transform.
2018-07-26 11:53:58 +10:00
4e6bcd10e5 Merge branch 'blender2.8' into soc-2018-bevel 2018-07-21 19:29:15 +05:30
5ebebcfbff WM: rename manipulator to gizmo internally 2018-07-14 23:49:00 +02:00
cca87ccc75 UI: remove space/region from popover args
Instead use global panel-type list.
2018-07-13 19:16:35 +02:00
98c215f4db Keymap: add 3D view snap popup
The key was available for other spaces,
removed because it conflicted with changes
which have since been reverted.
2018-07-12 11:46:16 +02:00
8aa1ef2675 Keymap: Add back Ctrl-M for mirror 2018-07-04 13:46:07 +02:00
33a5cde313 Keymap: Adjust animate and manipulator toggle keys
Make room for Alt-A to be used for de-select.
Discussed with artists in studio & @venomgfx,

- Use Ctrl-Space for animation.
- Use Ctrl-Tab to toggle manipulator.
- Remove mirror transform binding.
2018-07-03 14:51:53 +02:00
31e43d021f Merge branch 'blender2.8' into soc-2018-bevel 2018-07-02 23:31:19 +05:30
b076b3853c Merge branch 'master' into blender2.8 2018-07-02 12:03:56 +02:00
b88e51dd55 Cleanup: use bool for poll functions 2018-07-02 11:51:31 +02:00
36a9436d80 Merge branch 'master' into blender2.8 2018-07-01 16:22:06 +02:00
ddee0931b8 RNA: use bool for boolean RNA types
We were using int's for bool arguments in BKE,
just to avoid having wrapper functions.
2018-07-01 15:57:59 +02:00
dcdde6bedb Keymap: minimal default keymap
Use 2.7x keymap preset for full keymap.

Use define to allow further adjustments.

See T55666.
2018-06-29 12:58:59 +02:00
9bd0c63382 Merge branch 'master' into blender2.8 2018-06-29 08:05:38 +02:00
af36dd4664 Cleanup: trailing newlines 2018-06-29 08:02:49 +02:00